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

# Set a user's status

> Sets the status type a user has picked: an Online type, or an Idle type with an optional note. Offline cannot be set: it follows the user's real connection. The user must be signed in on at least one device. `PUT` replaces the whole picked status, so leaving `customText` out or sending `null` clears the note.

- The Phone and the mobile app show the change at once. App versions that support it show the same notice a Dashboard override shows: an admin changed their status. Older mobile app versions apply the change without the notice.
- Queue routing follows: an Idle type pauses queue calls, an Online type resumes them.
- The [`user.status_changed`](/guides/webhooks/events/users#user-status_changed) webhook is sent. A change to the note alone also sends it, with the same data as before, because the webhook does not carry the note.
- If the user is on a call, `statusType` changes now and `status` stays `on_call` until the call ends.
- Sending the same values again changes nothing and sends nothing.
- `source` becomes `api`.

**The note.** The Phone shows `customText` only with the system Idle type (id `9`). The mobile app, and the notice that tells the user an admin changed their status, show it with any type.

**Order of checks.** A body that is empty or is not valid JSON gets `400`, and a media type the API cannot read at all gets `415`, before anything else. Then a body that is not declared `application/json`, or a request with no `Content-Type`, gets `415`, even when `userId` is malformed. Then a malformed `userId` gets `404`, before the fields of the body are checked (`400`, then `422`). For a well-formed request, the status type is checked first (`422`), then the user (`404`), then whether the user is signed in (`409`, USER_STATUS.USER_NOT_SIGNED_IN). A rejected request changes nothing.

The legacy [List agents](/api-reference/agents/list-agents) endpoint may not show a status set here.



## API Specification

The full API specification for this endpoint is available in the [documentation index](https://help.cloudtalk.io/llms.txt).


## Related topics

- [Read and set user status with the API](https://help.cloudtalk.io/guides/user-status/manage-with-api.md)
- [Changelog](https://help.cloudtalk.io/changelog.md)
- [List user status types](https://help.cloudtalk.io/api-reference/user-status/list-user-status-types.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.