> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tracklysms.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Setup Status

> Read stored setup progress and the next human or assistant action for your SMS connection.

Returns account setup evidence for the calling key. Use `trackly_get_setup_status` through MCP or call this endpoint with your private API credentials. The response contains counts, identifiers, and trusted Trackly links. It does not create billing records, provision senders, contact a payment provider, or send a message. Authentication can update the key's last-used information.

<Note>
  This is a progress summary. Run [preflight](/api-reference/v2/messages/preflight) for a proposed message; current send policy and human approval are enforced again when sending.
</Note>

| Field                              | Meaning                                                                                                                                                                         |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `setup.connection`                 | Calling key ID and sandbox mode; observed active, unexpired OAuth grant count. Grant counts do not prove current key authority. API-key connections can have zero OAuth grants. |
| `setup.senders`                    | Observed active account-owned list count, which can include senders forbidden by the key's current restrictions. `count_limited` marks a bounded sample.                        |
| `setup.billing`                    | Whether a stored billing configuration was found and its saved status. An absent record is unknown. Presence does not prove payment, funding, or eligibility.                   |
| `setup.latest_hold`                | Most recent hold attributed to this key, or `null`. Contains status, mode, recipient count, and saved outcome counts.                                                           |
| `setup.recent_hold_search_limited` | Older holds for this key were outside the search. A missing result does not prove the connection has never sent.                                                                |
| `setup.next_steps`                 | Suggested actions with fixed Trackly destinations. Opening a link never completes setup or approves a message.                                                                  |

`latest_hold.outcome` distinguishes `simulation_completed`, `submitted`, `unknown`, and `not_completed`. `submitted_count` is a saved live submission count, never a delivery receipt. Inspect `error_count` for partial bulk results. For `unknown`, read the same held send; do not automatically create or execute a replacement.

The summary is advisory and may change after the read. Sender provisioning, billing, recipient consent, and applicable messaging requirements remain separate steps. See [connect an assistant](/agents/connect) and [send with human approval](/agents/send-with-approval).

## Errors

| Status | Meaning                                                                                 |
| ------ | --------------------------------------------------------------------------------------- |
| 401    | Missing or invalid credentials.                                                         |
| 403    | Current account authority or delegated access does not permit the request.              |
| 429    | Authentication request limit exceeded, when applicable.                                 |
| 503    | Stored setup evidence or delegated authorization is unavailable. Retry this read later. |
