Support · Legal
Verified RCS · SMS · MMS
API REFERENCE

Conversations API

The SimplyRCS conversations API has 10 public endpoints. Every endpoint below is documented with its parameters, responses and an example request. The reference is public and needs no account; a scoped API key is required only to make live calls.

Conversation, messaging, inbox, and session APIs.

Base URL https://api.simplyrcs.com · All 195 endpoints · Pricing

GET/v1/conversations

List conversations

GET https://api.simplyrcs.com/v1/conversations · requires an API key

Query parameters

NameTypeRequiredDescription
pageintegerNo
limitintegerNo
status"BOT" | "HUMAN" | "CLOSED"No
channelIdstringNo

Responses

StatusReturnsDescription
200ConversationListResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/conversations \
  -H 'Authorization: Bearer YOUR_API_KEY'

GET/v1/conversations/{id}

Get a conversation

GET https://api.simplyrcs.com/v1/conversations/{id} · requires an API key

Path parameters

NameTypeDescription
id requiredstring

Responses

StatusReturnsDescription
200ConversationDetailSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/conversations/{id} \
  -H 'Authorization: Bearer YOUR_API_KEY'

GET/v1/conversations/{id}/messages

List conversation messages

Cursor-paginated, newest first. Pass `before` (a message id) to load older pages.

GET https://api.simplyrcs.com/v1/conversations/{id}/messages · requires an API key

Path parameters

NameTypeDescription
id requiredstring

Query parameters

NameTypeRequiredDescription
limitintegerNo
beforestringNoMessage id to paginate backwards from.

Responses

StatusReturnsDescription
200ConversationMessagesResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/conversations/{id}/messages \
  -H 'Authorization: Bearer YOUR_API_KEY'

POST/v1/conversations/{id}/messages

Send a conversation message

Sends a message into an existing conversation using its contact, channel, and sender ID.

POST https://api.simplyrcs.com/v1/conversations/{id}/messages · requires an API key

Path parameters

NameTypeDescription
id requiredstring

Request body

ConversationSendMessageRequest · optional

Responses

StatusReturnsDescription
200ConversationSendMessageResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/conversations/{id}/messages \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

GET/v1/conversations/{id}/session

Get conversation session details

GET https://api.simplyrcs.com/v1/conversations/{id}/session · requires an API key

Path parameters

NameTypeDescription
id requiredstring

Responses

StatusReturnsDescription
200objectSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/conversations/{id}/session \
  -H 'Authorization: Bearer YOUR_API_KEY'

GET/v1/conversations/{id}/source

Get conversation source

GET https://api.simplyrcs.com/v1/conversations/{id}/source · requires an API key

Path parameters

NameTypeDescription
id requiredstring

Responses

StatusReturnsDescription
200objectSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/conversations/{id}/source \
  -H 'Authorization: Bearer YOUR_API_KEY'

POST/v1/conversations/{id}/handoff

Handoff a conversation

Moves a BOT conversation to HUMAN and (by default) auto-assigns the next available agent.

POST https://api.simplyrcs.com/v1/conversations/{id}/handoff · requires an API key

Path parameters

NameTypeDescription
id requiredstring

Request body

ConversationHandoffRequest · optional

Responses

StatusReturnsDescription
200ConversationHandoffResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/conversations/{id}/handoff \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

POST/v1/messages/send

Send a direct message

Sends an outbound message to a contact. Pass an optional `Idempotency-Key` header (printable ASCII, max 255 chars) to make retries replay the original response for 24h instead of double-sending. When `messageType` is omitted it defaults to MARKETING, which applies the strictest consent gates.

POST https://api.simplyrcs.com/v1/messages/send · requires an API key

Request body

SendMessageRequest · optional

Responses

StatusReturnsDescription
200SendMessageResponseMessage accepted and dispatched
400ErrorResponseValidation error
401ErrorResponseAuthentication failed
409ErrorResponseIdempotency-Key conflict (in progress or reused with a different body)

Example request

curl -X POST https://api.simplyrcs.com/v1/messages/send \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

POST/v1/messages/preview

Preview a rendered message

POST https://api.simplyrcs.com/v1/messages/preview · requires an API key

Request body

PreviewMessageRequest · optional

Responses

StatusReturnsDescription
200PreviewMessageResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/messages/preview \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

POST/v1/messages/{id}/revoke

Revoke a sent message

POST https://api.simplyrcs.com/v1/messages/{id}/revoke · requires an API key

Path parameters

NameTypeDescription
id requiredstring

Responses

StatusReturnsDescription
200RevokeMessageResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/messages/{id}/revoke \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'