---
title: "Notify RCS Capability Result (Async)"
method: POST
path: "/rcs/v1/capability-check/notify"
tags: ["RCS"]
---

# Notify RCS Capability Result (Async)

`POST /rcs/v1/capability-check/notify`

Asynchronously notify the result of a capability check for an RCS recipient.

## Request body

- union
  - object
  - CapabilityRcsCapabilityCheckAsyncRequest
    - `notifyContentType` 'application/json' | 'application/xml' — NotifyContentType sets the callback content type.
    - `notifyUrl` string — NotifyUrl is the callback URL for the async result. If empty, the subscription webhook URL is used.
    - `phoneNumbers` string[] — PhoneNumbers is the list of numbers to check (up to 10,000 for async).
    - `sender` string

## Response `200`

Notification accepted

- CapabilityRcsCapabilityCheckAsyncResponse
  - `bulkId` string — BulkId uniquely identifies this async check request.
  - `capabilityCheckRequestStates` CapabilityRcsCapabilityCheckRequestState[]
    - `messageId` string
    - `phoneNumber` string
    - `status` 'PENDING_TIME_VIOLATION' | 'DELIVERED_TO_OPERATOR' | 'PENDING_WAITING_DELIVERY' | 'UNDELIVERABLE_REJECTED_OPERATOR' | 'DELIVERED_TO_HANDSET' | 'REJECTED_NETWORK' | 'PENDING_ENROUTE' | 'REJECTED_PREFIX_MISSING' | 'UNDELIVERABLE_NOT_DELIVERED' | 'REJECTED_DND' | 'REJECTED_SOURCE' | 'REJECTED_NOT_ENOUGH_CREDITS' | 'REJECTED_SENDER' | 'REJECTED_DESTINATION' | 'EXPIRED_EXPIRED' | 'REJECTED_NOT_REACHABLE' | 'REJECTED_PREPAID_PACKAGE_EXPIRED' | 'REJECTED_DESTINATION_NOT_REGISTERED' | 'REJECTED_ROUTE_NOT_AVAILABLE' | 'REJECTED_FLOODING_FILTER' | 'REJECTED_SYSTEM_ERROR' | 'EXPIRED_UNKNOWN' | 'REJECTED_DUPLICATE_MESSAGE_ID' | 'REJECTED_INVALID_UDH' | 'REJECTED_MESSAGE_TOO_LONG' | 'REJECTED_NOT_SENT' | 'EXPIRED_DLR_UNKNOWN' | 'MO_DELIVERED' | 'UNDELIVERABLE_NOT_SENT' | 'MISSING_TO' | 'INVALID_DESTINATION_ADDRESS' | 'CONCATENATED_MESSAGE_TOO_LONG' | 'REJECTED_MONTHLY_LIMIT_REACHED' | 'REJECTED_SMPP_SESSION_CLOSED' | 'INVALID_SUBACCOUNT_NAME' | 'REJECTED_GATEWAY_DATA_TOO_LONG' | 'INVALID_COMPANY_ID' | 'REJECTED_INVALID_TRACKING_DATA' | 'REJECTED_INVALID_COUNT' | 'REJECTED_FREE_TRIAL_EXCEEDED' | 'REJECTED_SUBSCRIPTION_PLAN_NOT_ACTIVE' | 'SIM_SWAP_DETECTED' | 'DEACTIVATED_LIST' | 'INVALID_CLIENT_NETWORK' | 'CURRENCY_CHANGE_IN_PROGRESS' | 'REJECTED_UNREACHABLE_DESTINATION' | 'SIGNALS_BLOCKED' | 'VOLUMETRIC_BLOCKED' | 'REJECTED_BLOCKED_TEMPLATE' | 'REJECTED_INVALID_PLATFORM_PARAMETERS' | 'REJECTED_SHORT_DOMAIN_NOT_VERIFIED' | 'REJECTED_10DLC_LIMIT_REACHED' | 'REJECTED_INVALID_BYO_EXTERNAL_ID' — Status is the current processing state of the capability check request.

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `429` — Rate limit exceeded

---

[API](https://skmtc.dev/360dialog/apis/messaging-api.md) · [All operations](https://skmtc.dev/360dialog/apis/messaging-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/360dialog/messaging-api/revisions/74b31f9f8610/schema)
