Skip to main content
An RCS instance is your brand’s agent in RCS Business Messaging: name, logo, colors, and approval dossier. Once ACTIVE, send by passing from in POST /v1/rcs/messages (instance id or name).

In short

  • Create a draft with POST /v1/rcs/instances
  • Fill the agent profile (agentProfile) with PATCH
  • Submit for approval with POST /v1/rcs/instances/:id/submit
  • Send with from when status is ACTIVE
Without your own instance, the workspace uses the platform shared sender (when available) or the workspace default instance.

When to create an instance?

Provisioning flow

  1. DRAFT — instance created; edit name, displayName, and agentProfile freely
  2. SUBMITTED / VERIFICATION_PENDING / LAUNCH_PENDING — awaiting review (awaitingPartner: true, standby: true on submit)
  3. ACTIVE — agent approved; can send with from
  4. REJECTED — fix profile and submit again
On an ACTIVE agent, profile changes go into review (pendingAgentProfile, revisionStatus: DRAFT). Sending continues with the approved profile until the new revision is accepted.

1. Create instance

201 response with onboardingStatus: "DRAFT". Scope: rcs:instances:create. slug is unique per workspace (2–64 chars, lowercase and hyphens). If omitted, it is generated from name.

2. Fill agent profile

Update with PATCH /v1/rcs/instances/:instanceId. Main agentProfile fields:

3. Submit for approval

Incomplete profile returns 400 (RCS_PROFILE_INCOMPLETE). Already active returns 409 (RCS_ALREADY_ACTIVE). Manual review response:

4. Send with the instance

When status and onboardingStatus are ACTIVE:
If from is omitted, the platform uses the workspace default instance (if ACTIVE) or the shared sender.
instanceId in the body still works as a legacy alias, but prefer from (id, instance name, or slug).
Inactive instance returns 503 (RCS_INSTANCE_NOT_ACTIVE). Missing instance returns 404 (RCS_INSTANCE_NOT_FOUND).

API Key restriction

If the key has instanceIds set, it only accesses and sends through listed instances. Empty list = access to all.

Common errors

slug already exists in this workspace. Choose another or omit to auto-generate.
Active agent in carrier review. Direct edits to the published profile require a new review cycle via pendingAgentProfile.
A revision is already in progress. Wait for approval or rejection before another PATCH.
Instance limit for your plan reached. Upgrade or remove unused instances.
Agent not yet approved. Check onboardingStatus and awaitingPartner.

Next steps