A valid request URL is required to generate request examples{
"success": true,
"data": {
"phoneNumber": "+14155551234",
"aiPaused": false,
"wasPaused": true,
"resumedAt": "2026-09-24T18:02:11.000Z"
}
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}Resume the AI for a contact
Clear the pause set by pauseSMSContactAI so the AI answers the person’s texts again. The AI does not reply retroactively to texts that arrived during the pause: it answers the next text the person sends, with the conversation so far — including the messages your system sent — as context. A thread a teammate has taken over stays with the teammate. When a pause is cleared and the person has an open text conversation, an “AI resumed” marker is added to it, so Observe shows when the AI was turned back on and by whom. Idempotent: a contact that is not paused succeeds with wasPaused: false and changes nothing.
A valid request URL is required to generate request examples{
"success": true,
"data": {
"phoneNumber": "+14155551234",
"aiPaused": false,
"wasPaused": true,
"resumedAt": "2026-09-24T18:02:11.000Z"
}
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}Authorizations
Flowyte secret API key (Authorization: Bearer flowyte_sk_live_…). Scope-gated; is scoped to your organization — a key can never reach another tenant. The listed scopes in each operation's apiKey requirement are the scopes that key must hold. The tokenUrl is nominal: keys are minted in the dashboard.
- Token URL
- /api/v1/api-keys
Path Parameters
The contact's number in E.164 format (e.g. +14155551234).