Skip to main content
PATCH
Set your own presence status

Authorizations

Authorization
string
header
required

Dashboard JWT token from Clerk

Headers

X-Test-Mode
enum<string>

Sandbox opt-in for Clerk-session-authenticated requests — see Test mode explained for the full credential-header matrix and worked samples. Set to true to route the call through the test-mode pipeline: no real provider delivery, no credits deducted, response meta.test_mode: true. Ignored for live API keys (dv_live_sk_*) — server-to-server clients must use a test-prefixed key (dv_test_sk_*) to exercise sandbox. Test-prefixed keys unconditionally enable sandbox regardless of this header.

Available options:
true,
false

Body

application/json
status
enum<string>
required

The base presence state to set — available, busy, away or dnd.

Available options:
available,
busy,
away,
dnd
Example:

"busy"

dnd_until
string<date-time>

When the DND window ends (ISO 8601); only honoured with status=dnd and must be in the future. Cleared on any non-DND status.

Example:

"2026-09-20T18:30:00.000Z"

status_message
string | null

Free-text presence status message / away reason (max 200 chars); persists across status changes until cleared. Send null to clear.

Maximum string length: 200
Example:

"Demo call until :30"

activity
enum<string> | null

Rich busy refinement — in_a_call or in_a_meeting. Only meaningful with status=busy; cleared on any non-busy status. Send null to clear.

Available options:
in_a_call,
in_a_meeting
Example:

"in_a_call"

Response

The caller's presence after the update.

The caller's presence after the update.

data
object

The caller's own presence as persisted.

meta
object