---
title: "Invite an RCS test phone"
method: POST
path: "/v1/rcs/agents/{agentId}/test-devices"
tags: ["RCS"]
---

# Invite an RCS test phone

`POST /v1/rcs/agents/{agentId}/test-devices`

Invites a phone to try the agent before launch. It must accept the invite in its
messaging app. Available once the agent exists with the carriers (after brand vetting).
T-Mobile and AT&T numbers cannot be test phones.

## Path parameters

- `agentId` string, required

## Request body

- object
  - `phoneNumber` string, required — E.164

## Response `201`

Invite sent.

- object
  - `testDevice` RcsTestDevice
    - `testDeviceId` string
    - `phoneNumber` string
    - `inviteStatus` 'PENDING' | 'ACCEPTED' | 'DECLINED' — The phone must accept the invite in its messaging app before it receives messages.

## Other responses

- `400` — Invalid phone number, or the carrier refused it as a test phone
- `401` — Missing or invalid API key. `code` is `missing_credentials` when no Authorization header was sent and `invalid_credentials` when the key is unknown, revoked or expired.
- `403` — Your plan does not include the inbox, which RCS requires.
- `404` — Agent not found
- `409` — The agent does not exist with the carriers yet

## Changes

- **2026-10-02** `d556591af3f6` — 7 info
  - added the optional property `code` to the response with the `401` status
  - added the optional property `details` to the response with the `401` status
  - added the optional property `docUrl` to the response with the `401` status
  - added the optional property `param` to the response with the `401` status
  - …3 more
- **2026-09-29** `698a0d89ab62` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/zernio/apis/zernio-api/changes/v1/rcs/agents/:agentId/test-devices/post.md)

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) · [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zernio/apis/zernio-api/revisions/f8dd1581bb14?raw)
