> ## Documentation Index
> Fetch the complete documentation index at: https://docs.prelude.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Get the routing configuration

> Retrieve the countries Prelude supports and, for each one, whether it is open for your account and which channels Prelude can attempt there.

Use this endpoint to decide which channels to offer to a user before you create a verification. For example, show a WhatsApp option only in countries where `whatsapp` is listed.

The list does not say whether a specific phone number can receive a channel. For example, it does not say whether the user has WhatsApp. If a channel cannot reach the phone number, Prelude falls back to the next channel.

`voice` and `silent` can appear in the list, but they are not values of the `channels` option of the create verification endpoint. Request voice with the `method` option set to `voice`. Silent verification needs the Prelude SDK on the user's device.

The list is per country. It does not show channels that are closed for one platform only (for example web only) in the dashboard.

The result changes rarely. Refresh it periodically (for example once a day) instead of calling it before every verification.

In order to get access to this endpoint, contact our support team.


Get the countries Prelude supports and, for each one, whether it is open for your account and which channels Prelude can attempt there. Use this endpoint to decide which channels to offer to a user before you create a verification. For example, show a WhatsApp option only in countries where `whatsapp` is listed.

The list does not say whether a specific phone number can receive a channel. For example, it does not say whether the user has WhatsApp. If a channel cannot reach the phone number, Prelude falls back to the next channel.

`voice` and `silent` can appear in the list, but they are not values of the `channels` option of the create verification endpoint. Request voice with the `method` option set to `voice`. Silent verification needs the Prelude SDK on the user's device.

The list is per country. It does not show channels that are closed for one platform only (for example web only) in the dashboard.

The result changes rarely. Refresh it periodically (for example once a day) instead of calling it before every verification.

> [!NOTE]
>
> Access to the management API is opt-in. [Contact our support team](mailto:support@prelude.so) to enable it on your account. To learn how channels are used during a verification, see the [Create Verification](https://docs.prelude.so/verify/v2/api-reference/create-or-retry-a-verification.md) endpoint.


## OpenAPI

````yaml get /v2/verification/management/routing
openapi: 3.1.0
info:
  title: Prelude API
  version: 2.0.0
  description: The Prelude API allows you to send messages to your users.
  contact:
    email: support@prelude.so
servers:
  - url: https://api.prelude.dev
    description: Production server
security:
  - apiToken: []
tags:
  - name: Notify
    description: Send transactional and marketing messages with compliance enforcement.
  - name: Transactional
    description: Send transactional messages (deprecated - use Notify API instead).
  - name: Verify
    description: Verify phone numbers.
  - name: Watch
    description: Evaluate email addresses and phone numbers for trustworthiness.
  - name: Lookup
    description: >-
      Retrieve detailed information about a phone number including carrier data,
      line type, and portability status.
paths:
  /v2/verification/management/routing:
    get:
      tags:
        - Verify
      summary: Get the routing configuration
      description: >
        Retrieve the countries Prelude supports and, for each one, whether it is
        open for your account and which channels Prelude can attempt there.


        Use this endpoint to decide which channels to offer to a user before you
        create a verification. For example, show a WhatsApp option only in
        countries where `whatsapp` is listed.


        The list does not say whether a specific phone number can receive a
        channel. For example, it does not say whether the user has WhatsApp. If
        a channel cannot reach the phone number, Prelude falls back to the next
        channel.


        `voice` and `silent` can appear in the list, but they are not values of
        the `channels` option of the create verification endpoint. Request voice
        with the `method` option set to `voice`. Silent verification needs the
        Prelude SDK on the user's device.


        The list is per country. It does not show channels that are closed for
        one platform only (for example web only) in the dashboard.


        The result changes rarely. Refresh it periodically (for example once a
        day) instead of calling it before every verification.


        In order to get access to this endpoint, contact our support team.
      operationId: getRoutingConfig
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRoutingConfigResponse'
        '400':
          description: KO
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    GetRoutingConfigResponse:
      type: object
      description: The routing configuration of your account.
      required:
        - regions
      properties:
        regions:
          type: array
          description: >-
            One entry for each country Prelude supports, sorted by
            `region_code`.
          items:
            $ref: '#/components/schemas/RoutingConfigRegion'
      examples:
        - regions:
            - region_code: CU
              status: closed
              channels: []
            - region_code: FR
              status: open
              channels:
                - rcs
                - sms
                - whatsapp
    Error:
      type: object
      properties:
        code:
          type: string
          description: The error code.
          examples:
            - invalid_phone_number
        message:
          type: string
          examples:
            - >-
              The provided phone number is invalid. Provide a valid E.164 phone
              number.
          description: A human-readable message describing the error.
        type:
          type: string
          examples:
            - bad_request
          description: The error type.
        request_id:
          type: string
          examples:
            - 3d19215e-2991-4a05-a41a-527314e6ff6a
          description: >-
            A string that identifies this specific request. Report it back to us
            to help us diagnose your issues.
        param:
          type: string
          examples:
            - phone_number
          description: The parameter the error refers to, when it applies to a single one.
      required:
        - code
        - message
        - type
    RoutingConfigRegion:
      type: object
      required:
        - region_code
        - status
        - channels
      properties:
        region_code:
          type: string
          description: The country, as an ISO 3166-1 alpha-2 code.
          examples:
            - FR
        status:
          type: string
          enum:
            - open
            - closed
          description: |
            Whether the country is open for your account. Possible values are:
              * `open` - Prelude can send verifications to this country.
              * `closed` - Prelude does not send verifications to this country.
        channels:
          type: array
          description: >-
            The channels Prelude can attempt for your account in this country.
            The list is empty when the country is closed, or when no channel is
            available for your account there.
          items:
            $ref: '#/components/schemas/PhoneVerificationChannel'
          examples:
            - - rcs
              - sms
              - whatsapp
    PhoneVerificationChannel:
      type: string
      enum:
        - sms
        - rcs
        - whatsapp
        - viber
        - zalo
        - telegram
        - voice
        - silent
  securitySchemes:
    apiToken:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.