---
title: "Wait for replica"
method: GET
path: "/v1/replica/{id}/wait"
tags: ["Replica"]
---

# Wait for replica

`GET /v1/replica/{id}/wait`

## Request

- Base URL: `https://api.replicas.dev`
- URL: `https://api.replicas.dev/v1/replica/{id}/wait`
- Auth: HTTP bearer

Waits until the replica finishes starting and its agents finish their work, including background tasks they will wake up for, then returns its chats and activity. Without `chat_id`, background tasks count as work. Returns `done: false` after `timeout_seconds` (max 50) if work is still running, or as soon as the agent waits for input; call it again to keep waiting. Use [Stream events](/api-reference/replica/stream-events) for live updates.

## Path parameters

- `id` string, uuid, required

## Query parameters

- `chat_id` string
- `timeout_seconds` integer

## Headers

- `X-Replicas-Api-Version` '2026-10-07'

## Response `200`

Result

- object
  - `done` boolean, required
  - `status` string, required
  - `chats` ReplicaChat[], required
    - `id` string, required: Unique identifier for the chat
    - `provider` 'claude' | 'codex' | 'cursor' | 'muse' | 'opencode' | 'pi', required: Coding agent provider for this chat
    - `title` string, required: Chat title
    - `created_at` string, date-time, required: When the chat was created
    - `updated_at` string, date-time, required: When the chat was last updated
    - `processing` boolean, required: Whether the chat is currently doing work — either processing a foreground message or running background/spawned-agent tasks
  - `activity` ReplicaActivity, required: What the replica's agent is doing, as its chat shows it. Background tasks the agent will wake up for count as working.
    - `state` 'working' | 'waiting_for_input' | 'idle', required
    - `chat_id` string, nullable, required: The chat described: the requested one, or the most recently active
    - `current_step` string, nullable, required: What the agent is doing now, such as `Running npm test`, while it is working
    - `last_agent_message` string, nullable, required: The agent's latest message, cut to 2,000 characters
  - `deleted` boolean: The replica was deleted once its agents finished (`delete_when_done`).

## Other responses

- `400`: Bad request - Missing or invalid parameters
- `401`: Unauthorized - Invalid or missing API key
- `404`: Resource not found
- `409`: Conflict - Resource already exists or operation conflicts with current state

---

[API](https://skmtc.dev/replicas/apis/replicas-api.md) - [All operations](https://skmtc.dev/replicas/apis/replicas-api/llms.txt) - [OpenAPI document](https://skmtc.dev/replicas/apis/replicas-api/revisions/2703ac1c9cb7?raw)
