---
title: "List RCS Agents"
method: POST
path: "/rcs/agents/list"
tags: ["rcs > agents"]
---

# List RCS Agents

`POST /rcs/agents/list`

## Request

- Base URL: `https://api.pinnacle.sh`
- URL: `https://api.pinnacle.sh/rcs/agents/list`
- Auth: API key in header `PINNACLE-API-KEY`

List all RCS agents with pagination. Results are sorted by creation date, newest first.

## Request body

- ListAgentsRequest
  - `pageIndex` integer
  - `pageSize` integer
  - `agentType` 'PRODUCTION' | 'TEST': Filter by agent type.
  - `name` string: Case-insensitive substring search on agent name.

## Response `200`

Returns paginated list of agents.

- ListAgentsResponse
  - `data` AgentSummary[], required
    - `agentId` string, required: Unique identifier for the agent.
    - `agentType` 'PRODUCTION' | 'TEST', required: Type of the agent.
    - `serviceId` string, nullable: Service ID associated with the agent.
    - `carrierLaunches` AgentSummaryCarrierLaunches: Raw per-carrier launch + verification state for the agent. Each value is tri-state — `null` means "no launch requested" or "not sent yet"; `false` means "pending" / "sent"; `true` means "launched" / "verified". Use the [GET /rcs/{agentId}](/api-reference/rcs-agents/get-agent) endpoint for the resolved enum representation.
      - `ATT` boolean, nullable: Launch status for AT&T. null = not requested, false = pending, true = launched.
      - `OTHERS` boolean, nullable: Launch status for other carriers. null = not requested, false = pending, true = launched.
      - `TMOBILE` boolean, nullable: Launch status for T-Mobile. null = not requested, false = pending, true = launched.
      - `VERIZON` boolean, nullable: Launch status for Verizon. null = not requested, false = pending, true = launched.
      - `AEGIS` boolean, nullable: AEGIS verification status. null = not sent, false = sent, true = verified.
      - `GOOGLE` boolean, nullable: Google verification status. null = not sent, false = sent, true = verified.
    - `config` AgentSummaryConfig: Agent configuration details.
      - `name` string: Display name of the agent (max 40 characters).
      - `description` string: Description of the agent (max 100 characters).
      - `color` string: Hex color code for the agent.
      - `websites` AgentSummaryConfigWebsitesItems[]
        - `url` string
        - `label` string
      - `phones` AgentSummaryConfigPhonesItems[]
        - `phone` string
        - `label` string
      - `emails` AgentSummaryConfigEmailsItems[]
        - `email` string
        - `label` string
      - `iconUrl` string, nullable: Logo image URL.
      - `heroUrl` string, nullable: Hero image URL.
      - `privacyUrl` string, nullable: Privacy policy URL.
      - `termsUrl` string, nullable: Terms of service URL.
      - `isConversational` boolean, nullable: Whether the agent supports two-way conversation.
      - `agentUseCase` 'TRANSACTIONAL' | 'PROMOTIONAL' | 'OTP' | 'MULTI_USE': Use case for the agent.
    - `createdAt` string, required: ISO 8601 timestamp of when the agent was created.
    - `updatedAt` string, required: ISO 8601 timestamp of when the agent was last updated.
  - `hasMore` boolean, required
  - `count` integer, required

## Other responses

- `400`: Validation failed. The payload has missing required fields and/or invalid types. <br> See https://zod.dev/error-formatting for more information.
- `401`: The request lacks valid authentication credentials or the provided credentials are invalid. <br> Ensure you're including a valid API key in the request headers and that your account has the necessary permissions to access this endpoint.
- `500`: An unexpected error occurred on Pinnacle's servers while processing your request. <br> If this error persists, please contact support with the request details.

---

[API](https://skmtc.dev/pinnacle/apis/pinnacle-2.md) - [All operations](https://skmtc.dev/pinnacle/apis/pinnacle-2/llms.txt) - [OpenAPI document](https://skmtc.dev/pinnacle/apis/pinnacle-2/revisions/45416dadab79?raw)
