Support · Contact · Legal
Verified RCS · SMS · MMS · Log in
API REFERENCE

Sender IDs API

The SimplyRCS sender ids API has 31 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.

Sender IDs, channels, protocols, and RCS sender resources.

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

GET/v1/sender-ids

List sender IDs

GET https://api.simplyrcs.com/v1/sender-ids · requires an API key

Query parameters

NameTypeRequiredDescription
typeSenderIdTypeNo
statusSenderIdStatusNo
providerSenderIdProviderNo

Responses

StatusReturnsDescription
200ListSenderIdsResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/sender-ids \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

POST/v1/sender-ids

Create a sender ID

POST https://api.simplyrcs.com/v1/sender-ids · requires an API key

Request body

CreateSenderIdBody · optional

Responses

StatusReturnsDescription
201SenderIdResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

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

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

GET/v1/sender-ids/{id}

Get a sender ID

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

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200SenderIdResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/sender-ids/{id} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

PATCH/v1/sender-ids/{id}

Update a sender ID

PATCH https://api.simplyrcs.com/v1/sender-ids/{id} · requires an API key

Path parameters

NameTypeDescription
id requiredId

Request body

UpdateSenderIdBody · optional

Responses

StatusReturnsDescription
200SenderIdResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X PATCH https://api.simplyrcs.com/v1/sender-ids/{id} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

DELETE/v1/sender-ids/{id}

Delete a sender ID

DELETE https://api.simplyrcs.com/v1/sender-ids/{id} · requires an API key

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200objectSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X DELETE https://api.simplyrcs.com/v1/sender-ids/{id} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

POST/v1/sender-ids/{id}/activate

Activate a sender ID

POST https://api.simplyrcs.com/v1/sender-ids/{id}/activate · requires an API key

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200SenderIdResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/sender-ids/{id}/activate \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

POST/v1/sender-ids/{id}/suspend

Suspend a sender ID

POST https://api.simplyrcs.com/v1/sender-ids/{id}/suspend · requires an API key

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200SenderIdResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/sender-ids/{id}/suspend \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

POST/v1/sender-ids/{id}/reactivate

Reactivate a sender ID

POST https://api.simplyrcs.com/v1/sender-ids/{id}/reactivate · requires an API key

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200SenderIdResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/sender-ids/{id}/reactivate \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

POST/v1/sender-ids/numbers/search

Search sender ID numbers

Search inventory for exact Local or Toll-Free acquisition. Purchasable rows include a short-lived server-signed binding of the organization, exact numberKey, canonical number, and server-observed inventory type. Toll-Free supports an optional 8XX prefix plus following digits through the effective leading-number filter; state remains Local-only.

POST https://api.simplyrcs.com/v1/sender-ids/numbers/search · requires an API key

Request body

SenderIdNumberSearchBody · optional

Responses

StatusReturnsDescription
200SenderIdNumberSearchResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/sender-ids/numbers/search \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

POST/v1/sender-ids/numbers/purchase

Purchase an exact Local or Toll-Free sender ID number

Purchase requires the unmodified numberKey, number, and selectionProof returned by inventory search. Toll-Free additionally requires an owning draft and Idempotency-Key. Exact provider ownership creates one non-send-ready Sender and one non-billed pending lease; customer setup and monthly billing begin only after the exact Infobip campaign reaches REGISTERED. Missing, expired, or contradictory selection evidence fails closed before downstream access.

POST https://api.simplyrcs.com/v1/sender-ids/numbers/purchase · requires an API key

Request body

SenderIdPurchaseNumberBody · optional

Responses

StatusReturnsDescription
201PurchaseSenderIdNumberResponseExact number acquired and pending Sender returned
400ErrorResponseValidation error
401ErrorResponseAuthentication failed
409SenderIdPurchaseNumberConflictToll-Free ownership or local finalization requires read-only reconciliation. Do not start a second purchase.

Example request

curl -X POST https://api.simplyrcs.com/v1/sender-ids/numbers/purchase \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

POST/v1/sender-ids/numbers/import

Import an owned sender ID number

POST https://api.simplyrcs.com/v1/sender-ids/numbers/import · requires an API key

Request body

SenderIdImportNumberBody · optional

Responses

StatusReturnsDescription
201ImportSenderIdNumberResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/sender-ids/numbers/import \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

DELETE/v1/sender-ids/numbers/{id}/release

Release a sender ID number

DELETE https://api.simplyrcs.com/v1/sender-ids/numbers/{id}/release · requires an API key

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200objectSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X DELETE https://api.simplyrcs.com/v1/sender-ids/numbers/{id}/release \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

GET/v1/sender-ids/numbers

List purchased sender ID numbers

GET https://api.simplyrcs.com/v1/sender-ids/numbers · requires an API key

Query parameters

NameTypeRequiredDescription
pageintegerNo
limitintegerNo
provider"INFOBIP" | "SIGNALMASH"No

Responses

StatusReturnsDescription
200ListSenderIdNumbersResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/sender-ids/numbers \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

GET/v1/sender-ids/{id}/protocols

List sender protocols

GET https://api.simplyrcs.com/v1/sender-ids/{id}/protocols · requires an API key

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200ListSenderProtocolsResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/sender-ids/{id}/protocols \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

POST/v1/sender-ids/{id}/protocols

Enable a sender protocol

POST https://api.simplyrcs.com/v1/sender-ids/{id}/protocols · requires an API key

Path parameters

NameTypeDescription
id requiredId

Request body

EnableSenderProtocolBody · optional

Responses

StatusReturnsDescription
200SenderProtocolResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/sender-ids/{id}/protocols \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

PATCH/v1/sender-ids/{id}/protocols/{type}

Update sender protocol config

PATCH https://api.simplyrcs.com/v1/sender-ids/{id}/protocols/{type} · requires an API key

Path parameters

NameTypeDescription
id requiredstring
type requiredSenderProtocolType

Request body

UpdateSenderProtocolBody · optional

Responses

StatusReturnsDescription
200SenderProtocolResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X PATCH https://api.simplyrcs.com/v1/sender-ids/{id}/protocols/{type} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

DELETE/v1/sender-ids/{id}/protocols/{type}

Disable a sender protocol

DELETE https://api.simplyrcs.com/v1/sender-ids/{id}/protocols/{type} · requires an API key

Path parameters

NameTypeDescription
id requiredstring
type requiredSenderProtocolType

Responses

StatusReturnsDescription
200SenderProtocolResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X DELETE https://api.simplyrcs.com/v1/sender-ids/{id}/protocols/{type} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

GET/v1/channels

List channels

Deprecated in favor of /v1/sender-ids (Sunset: 2026-09-01).

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

Responses

StatusReturnsDescription
200ListChannelsResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/channels \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

POST/v1/channels

Create a channel

Deprecated in favor of /v1/sender-ids (Sunset: 2026-09-01).

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

Request body

CreateChannelBody · optional

Responses

StatusReturnsDescription
201ChannelWithHealthResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

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

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

GET/v1/channels/{id}

Get a channel

Deprecated in favor of /v1/sender-ids (Sunset: 2026-09-01).

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

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200ChannelResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/channels/{id} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

PUT/v1/channels/{id}

Update a channel

Deprecated in favor of /v1/sender-ids (Sunset: 2026-09-01).

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

Path parameters

NameTypeDescription
id requiredId

Request body

UpdateChannelBody · optional

Responses

StatusReturnsDescription
200ChannelWithHealthResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X PUT https://api.simplyrcs.com/v1/channels/{id} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

DELETE/v1/channels/{id}

Delete a channel

Deprecated in favor of /v1/sender-ids (Sunset: 2026-09-01).

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

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200DeleteChannelResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X DELETE https://api.simplyrcs.com/v1/channels/{id} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

POST/v1/channels/{id}/test

Test a channel

Deprecated in favor of /v1/sender-ids (Sunset: 2026-09-01).

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

Path parameters

NameTypeDescription
id requiredId

Responses

StatusReturnsDescription
200ChannelHealthSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

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

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

GET/v1/channels/{channelId}/rcs/senders

List RCS senders

GET https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders · requires an API key

Path parameters

NameTypeDescription
channelId requiredstring

Responses

StatusReturnsDescription
200ListRcsSendersResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

POST/v1/channels/{channelId}/rcs/senders

Create an RCS sender

POST https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders · requires an API key

Path parameters

NameTypeDescription
channelId requiredstring

Request body

CreateRcsSenderBody · optional

Responses

StatusReturnsDescription
201RcsSenderResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

GET/v1/channels/{channelId}/rcs/senders/{senderName}

Get an RCS sender

GET https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders/{senderName} · requires an API key

Path parameters

NameTypeDescription
channelId requiredstring
senderName requiredstring

Responses

StatusReturnsDescription
200objectSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders/{senderName} \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

POST/v1/channels/{channelId}/rcs/senders/{senderName}/test-devices

Add an RCS sender test device

POST https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders/{senderName}/test-devices · requires an API key

Path parameters

NameTypeDescription
channelId requiredstring
senderName requiredstring

Request body

AddRcsTestDeviceBody · optional

Responses

StatusReturnsDescription
201RcsTestDeviceResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X POST https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders/{senderName}/test-devices \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

GET/v1/channels/{channelId}/rcs/senders/{senderName}/test-devices

List RCS sender test devices

GET https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders/{senderName}/test-devices · requires an API key

Path parameters

NameTypeDescription
channelId requiredstring
senderName requiredstring

Responses

StatusReturnsDescription
200ListRcsTestDevicesResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/channels/{channelId}/rcs/senders/{senderName}/test-devices \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

GET/v1/sender-ids/{id}/voice-forwarding

Get voice forwarding configuration

Returns the inbound-voice call-forwarding configuration for a voice-capable sender ID. data is null when forwarding has never been configured.

GET https://api.simplyrcs.com/v1/sender-ids/{id}/voice-forwarding · requires an API key

Path parameters

NameTypeDescription
id requiredstringSender ID id

Responses

StatusReturnsDescription
200VoiceForwardingResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X GET https://api.simplyrcs.com/v1/sender-ids/{id}/voice-forwarding \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"

PUT/v1/sender-ids/{id}/voice-forwarding

Set voice forwarding destination

Enables inbound-call forwarding to the given destination number (US/CA destinations only) and syncs the change to the voice provider.

PUT https://api.simplyrcs.com/v1/sender-ids/{id}/voice-forwarding · requires an API key

Path parameters

NameTypeDescription
id requiredstringSender ID id

Request body

VoiceForwardingSetRequest · optional

Responses

StatusReturnsDescription
200VoiceForwardingResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X PUT https://api.simplyrcs.com/v1/sender-ids/{id}/voice-forwarding \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Example request" }'

The body in this sample is the spec’s placeholder, not a real payload: send the request body type named above with the fields for this operation.

DELETE/v1/sender-ids/{id}/voice-forwarding

Disable voice forwarding

Disables inbound-call forwarding for the sender ID and syncs the change to the voice provider. Returns the updated configuration.

DELETE https://api.simplyrcs.com/v1/sender-ids/{id}/voice-forwarding · requires an API key

Path parameters

NameTypeDescription
id requiredstringSender ID id

Responses

StatusReturnsDescription
200VoiceForwardingResponseSuccessful response
400ErrorResponseValidation error
401ErrorResponseAuthentication failed

Example request

curl -X DELETE https://api.simplyrcs.com/v1/sender-ids/{id}/voice-forwarding \
  -H "Authorization: Bearer $SIMPLYRCS_API_KEY"