# Wavix (remote · mcp.wavix.com)

Hosted MCP server for the Wavix telecom platform: SMS, voice, 2FA, SIP, numbers, 10DLC, CDRs.

- Trust score: 65/100 (medium)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `mcp.wavix.com`: 65/100 (this document), [markdown](https://verifymcp.io/servers/wavix-mcp/mcp.md), [page](https://verifymcp.io/servers/wavix-mcp/mcp)

## Channel facts

- Endpoint: `https://mcp.wavix.com/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 122 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 67/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (fair).
  - Tool/resource definitions use about 13523 tokens (~80/item across 167 items; 122 tools + 45 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 99/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 96% of tool parameters carry a description.
  - Structured output schemas are declared (98% of tools); any adoption earns full credit.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http wavix-mcp https://mcp.wavix.com/mcp
```

### Codex

```toml
[mcp_servers.wavix-mcp]
url = "https://mcp.wavix.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "wavix-mcp": {
      "type": "remote",
      "url": "https://mcp.wavix.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add wavix-mcp --url https://mcp.wavix.com/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  wavix-mcp:
    url: "https://mcp.wavix.com/mcp"
```

### Other

```json
{
  "mcpServers": {
    "wavix-mcp": {
      "type": "http",
      "url": "https://mcp.wavix.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 65, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-31 (score 64, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 63, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-29 (score 63, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-28 (score 62, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-27 (score 61, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 61)

First indexed and scored.

## MCP tools (122)

### `call_recording_get` (~63 tokens)

Get a download URL for a call recording audio file.

Returns ``{download_url, content_type, status_code, note}`` instead of the
binary audio stream. Fetch ``download_url`` to obtain the MP3.

Input parameters:

- `call_uuid` (string, required)

### `billing_invoices_download` (~60 tokens)

Get a download URL for a billing invoice PDF.

Returns ``{download_url, content_type, status_code, note}`` instead of the
binary PDF stream. Fetch ``download_url`` to obtain the file.

Input parameters:

- `id` (integer, required)

### `speech_analytics_file_get` (~72 tokens)

Get a download URL for a speech-analytics audio file.

Returns ``{download_url, content_type, status_code, note}`` instead of the
binary audio stream (WAV/MP3/MP4). Fetch ``download_url`` to obtain the file.

Input parameters:

- `uuid` (string, required)

### `ten_dlc_brand_evidence_get` (~75 tokens)

Get a download URL for a 10DLC brand evidence file.

Returns ``{download_url, content_type, status_code, note}`` instead of the
binary file stream. Fetch ``download_url`` to obtain the file.

Input parameters:

- `brand_id` (string, required)
- `uuid` (string, required)

### `api_keys_list` (~32 tokens)

Returns a list of API keys.

Input parameters:

- `label` (string): Label to filter API keys. Partial match supported.

Output parameters:

- `result` (array)

### `api_keys_create` (~482 tokens)

Creates an API key. Optional IP restrictions can be configured to limit access.

Input parameters:

- `account`: View and update account profile information and timezone.
- `billing`: Access invoices, balance, payment methods, usage reports, and billing settings, including payment method updates.
- `calls`: Access call records and active calls, and control live call actions such as starting, answering, ending, audio playback, DTMF, streaming, and transcription requests.
- `campaigns`: View campaign analytics and Sender ID or Brand status, schedule bulk voice or SMS campaigns, register Brands, and create short links.
- `embeddable`: Manage widget tokens, including listing, viewing, creating, updating, and deleting them.
- `is_active` (boolean): Indicates whether the API key should be activated upon creation.
- `is_restriction` (boolean): Indicates whether to restrict API key access by IP address. When enabled, only requests from IP addresses listed in `permitted_ips` are allowed.
- `is_scopes_enabled` (boolean): When `true`, scope fields below are enforced. When `false` (default), the key has full access. Omitted scope fields default to `{ allow: none }`, so with `is_scopes_enabled: true` and no scopes set t…
- `label` (string): API key label.
- `messages`: Access message history and Sender IDs, send messages, manage opt-outs, and create or delete Sender IDs.
- `numbers`: View, buy, release, and configure phone numbers, browse inventory, and manage the cart.
- `permitted_ips` (array): List of permitted IP addresses for this API key. Each must be a valid IPv4 address. Required when `is_restriction` is true.
- `recordings`: List, download, and delete call recordings.
- `subaccounts`: Manage subaccounts: list and view them, create, update, and suspend them.
- `trunks`: View, create, update, and delete SIP trunks and their settings.
- `two_fa`: View 2FA service details and verification logs, trigger OTPs by voice or SMS, and validate verification codes.
- `validator`: View number validation results and trigger single or bulk validation or HLR lookup requests.
- `webhooks`: List, create, and delete webhooks.

Output parameters:

- `account`: View and update account profile information and timezone.
- `billing`: Access invoices, balance, payment methods, usage reports, and billing settings, including payment method updates.
- `calls`: Access call records and active calls, and control live call actions such as starting, answering, ending, audio playback, DTMF, streaming, and transcription requests.
- `campaigns`: View campaign analytics and Sender ID or Brand status, schedule bulk voice or SMS campaigns, register Brands, and create short links.
- `created_at` (string): Creation date and time in ISO 8601 format.
- `embeddable`: Manage widget tokens, including listing, viewing, creating, updating, and deleting them.
- `id` (integer): API key ID.
- `is_active` (boolean): Indicates whether the API key is active.
- `is_restriction` (boolean): Indicates whether IP restrictions are enabled. When enabled,  the API key works only from IP addresses in `permitted_ips`.
- `is_scopes_enabled` (boolean): When `true`, the key is restricted to the permissions defined in the scope fields below. When `false`, the key has full access.
- `label` (string): API key label.
- `last_used_at` (string|null): Timestamp of the most recent authenticated request made with this key.
- `messages`: Access message history and Sender IDs, send messages, manage opt-outs, and create or delete Sender IDs.
- `numbers`: View, buy, release, and configure phone numbers, browse inventory, and manage the cart.
- `permitted_ips` (array): List of permitted IP addresses. If `is_restriction` is false,  an empty list means no IP restrictions. If `is_restriction` is true,   an empty list prevents all requests.
- `recordings`: List, download, and delete call recordings.
- `subaccounts`: Manage subaccounts: list and view them, create, update, and suspend them.
- `trunks`: View, create, update, and delete SIP trunks and their settings.
- `two_fa`: View 2FA service details and verification logs, trigger OTPs by voice or SMS, and validate verification codes.
- `validator`: View number validation results and trigger single or bulk validation or HLR lookup requests.
- `value` (string): API key value.
- `webhooks`: List, create, and delete webhooks.

### `api_keys_delete` (~29 tokens)

Deletes an API key. This action is permanent.

Input parameters:

- `id` (integer, required): API key ID.

Output parameters:

- `success` (boolean)

### `api_keys_activate` (~38 tokens)

Activates an API key. Once activated, the API key can be used for authentication again.

Input parameters:

- `id` (integer, required): API key ID.

Output parameters:

- `success` (boolean)

### `api_keys_deactivate` (~40 tokens)

Deactivates an API key. Once deactivated, the API key cannot be used for authentication.

Input parameters:

- `id` (integer, required): API key ID.

Output parameters:

- `success` (boolean)

### `sip_trunks_list` (~68 tokens)

Returns a paginated list of SIP trunks. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.

Output parameters:

- `result`

### `sip_trunks_create` (~599 tokens)

Creates a SIP trunk.

Input parameters:

- `allowed_ips` (array|null): A list of public static IP addresses allowed to register with the SIP trunk
- `call_limit` (integer): A maximum call duration for the SIP trunk, in seconds. Must not exceed the maximum duration set for your account. Ignored when call_restrict is `false`.
- `call_recording_enabled` (boolean): Indicates whether outbound call recording is enabled for the SIP trunk
- `call_restrict` (boolean, required): Indicates whether a maximum call duration limit is enforced for the SIP trunk
- `callerid` (string, required): Caller ID associated with the SIP trunk. Must be an active or verified number on your account.
- `channels_restrict` (boolean, required): Indicates whether a limit on the number of concurrent outbound calls is enforced for the SIP trunk
- `cost_limit` (boolean, required): Indicates if the max cost limit for an outbound call limit is activated for the SIP trunk.
- `didinfo_enabled` (boolean, required): Indicates whether inbound calls include dialed number information in the `To` header of SIP INVITE requests
- `encrypted_media` (boolean)
- `host_request` (object): For SIP trunks with IP authentication, includes the SIP endpoint public static IP address and the status of the authentication request. Wavix authenticates all SIP traffic originating from this IP ad…
- `ip_restrict` (boolean, required): Indicates whether SIP trunk registration is allowed from only specific public static IP addresses. When set to `true`, the `allowed_ips` parameter must be provided.
- `label` (string, required): User-defined name of the SIP trunk
- `machine_detection_enabled` (boolean): Indicates whether automatic voicemail detection is enabled for the SIP trunk. Available for `Flex Pro` customers only.
- `max_call_cost` (number): Maximum cost for an outbound call, in USD
- `max_channels` (integer): Maximum number of concurrent outbound calls for the SIP trunk. Must not exceed the outbound channel capacity set for your account. Ignored when channels_restrict is `false`.
- `multiple_numbers` (boolean): Indicates whether any active or verified phone number in your account can be used as the Caller ID for the SIP trunk
- `password` (string, required): Password set for the SIP trunk. Use a strong password to help keep your SIP trunk secure.
- `rewrite_cond` (string): Number of leading digits to automatically remove from each dialed phone number
- `rewrite_enabled` (boolean, required): Indicates whether a custom dial plan is activated for the SIP trunk
- `rewrite_prefix` (string): Digits to automatically prepend to each dialed phone number
- `transcription_enabled` (boolean, required): Indicates whether automatic call transcription is enabled for the SIP trunk. Available for `Flex Pro` customers only.
- `transcription_threshold` (integer, required): Transcriptions will be generated for calls that meet or exceed the specified minimal call duration threshold, in seconds. Available for `Flex Pro` customers only.

Output parameters:

- `result`

### `sip_trunks_get` (~26 tokens)

Returns a SIP trunk configuration.

Input parameters:

- `id` (integer, required): SIP trunk ID.

Output parameters:

- `result`

### `sip_trunks_update` (~610 tokens)

Updates a SIP trunk configuration.

Input parameters:

- `allowed_ips` (array|null): A list of public static IP addresses allowed to register with the SIP trunk
- `call_limit` (integer): A maximum call duration for the SIP trunk, in seconds. Must not exceed the maximum duration set for your account. Ignored when call_restrict is `false`.
- `call_recording_enabled` (boolean): Indicates whether outbound call recording is enabled for the SIP trunk
- `call_restrict` (boolean, required): Indicates whether a maximum call duration limit is enforced for the SIP trunk
- `callerid` (string, required): Caller ID associated with the SIP trunk. Must be an active or verified number on your account.
- `channels_restrict` (boolean, required): Indicates whether a limit on the number of concurrent outbound calls is enforced for the SIP trunk
- `cost_limit` (boolean, required): Indicates if the max cost limit for an outbound call limit is activated for the SIP trunk.
- `didinfo_enabled` (boolean, required): Indicates whether inbound calls include dialed number information in the `To` header of SIP INVITE requests
- `encrypted_media` (boolean)
- `host_request` (object): For SIP trunks with IP authentication, includes the SIP endpoint public static IP address and the status of the authentication request. Wavix authenticates all SIP traffic originating from this IP ad…
- `id` (integer, required): SIP trunk ID.
- `ip_restrict` (boolean, required): Indicates whether SIP trunk registration is allowed from only specific public static IP addresses. When set to `true`, the `allowed_ips` parameter must be provided.
- `label` (string, required): User-defined name of the SIP trunk
- `machine_detection_enabled` (boolean): Indicates whether automatic voicemail detection is enabled for the SIP trunk. Available for `Flex Pro` customers only.
- `max_call_cost` (number): Maximum cost for an outbound call, in USD
- `max_channels` (integer): Maximum number of concurrent outbound calls for the SIP trunk. Must not exceed the outbound channel capacity set for your account. Ignored when channels_restrict is `false`.
- `multiple_numbers` (boolean): Indicates whether any active or verified phone number in your account can be used as the Caller ID for the SIP trunk
- `password` (string, required): Password set for the SIP trunk. Use a strong password to help keep your SIP trunk secure.
- `rewrite_cond` (string): Number of leading digits to automatically remove from each dialed phone number
- `rewrite_enabled` (boolean, required): Indicates whether a custom dial plan is activated for the SIP trunk
- `rewrite_prefix` (string): Digits to automatically prepend to each dialed phone number
- `transcription_enabled` (boolean, required): Indicates whether automatic call transcription is enabled for the SIP trunk. Available for `Flex Pro` customers only.
- `transcription_threshold` (integer, required): Transcriptions will be generated for calls that meet or exceed the specified minimal call duration threshold, in seconds. Available for `Flex Pro` customers only.

Output parameters:

- `result`

### `sip_trunks_delete` (~25 tokens)

Deletes a SIP trunk.

Input parameters:

- `id` (integer, required): SIP trunk ID.

Output parameters:

- `result`

### `buy_countries_list` (~41 tokens)

Returns a list of countries where phone numbers are available.

Input parameters:

- `text_enabled_only` (boolean): Indicates whether to return only countries with text-enabled phone numbers.

Output parameters:

- `result`

### `buy_regions_list` (~62 tokens)

Returns a list of regions (states or provinces) for countries where `has_provinces_or_states` is `true`.

Input parameters:

- `country` (integer, required): Country ID.
- `text_enabled_only` (boolean): Indicates whether to return only regions with text-enabled numbers.

Output parameters:

- `result`

### `buy_cities_list` (~59 tokens)

Returns a list of cities for countries where
 \`has_provinces_or_states` is `false`.

Input parameters:

- `country` (integer, required): Country ID.
- `text_enabled_only` (boolean): Indicates whether to return only cities with text-enabled numbers.

Output parameters:

- `result`

### `buy_region_cities_list` (~72 tokens)

Returns a list of cities in the specified region for countries where `has_provinces_or_states` is `true`.

Input parameters:

- `country` (integer, required): Country ID.
- `region` (integer, required): Region ID.
- `text_enabled_only` (boolean): Indicates whether to return only cities with text-enabled numbers.

Output parameters:

- `result`

### `buy_numbers_list` (~81 tokens)

Returns a paginated list of phone numbers available for purchase.

Input parameters:

- `city` (integer, required): City ID.
- `country` (integer, required): Country ID.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `text_enabled_only` (boolean): Indicates whether to return only text-enabled phone numbers.

Output parameters:

- `result`

### `cart_get` (~12 tokens)

Returns the cart.

Output parameters:

- `result`

### `cart_add` (~31 tokens)

Adds phone numbers to the cart.

Input parameters:

- `ids` (array, required): List of phone numbers to add to the cart.

Output parameters:

- `result` (array)

### `cart_remove` (~28 tokens)

Removes phone numbers from the cart.

Input parameters:

- `ids` (array, required): List of phone numbers to remove.

Output parameters:

- `result`

### `cart_checkout` (~41 tokens)

Checks out the cart. Activation and monthly fees are deducted from the account balance.

Input parameters:

- `ids` (array, required): List of phone numbers to check out from the cart.

Output parameters:

- `result`

### `my_numbers_list` (~126 tokens)

Returns a paginated list of phone numbers on the account. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `city_id` (integer): City or rate center for filtering.
- `label` (string): Label for filtering.
- `label_present` (boolean): Indicates whether to return only numbers with or without labels.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `search` (string): Phone number or partial number for filtering.

Output parameters:

- `doc_types` (array): Documents required to activate phone numbers.
- `items` (array): List of phone numbers on the account.
- `pagination` (object)

### `my_numbers_delete` (~44 tokens)

Releases phone numbers back to stock.

Input parameters:

- `dids` (string): List of phone numbers to release.
- `ids` (array): List of phone number IDs to release.

Output parameters:

- `result`

### `my_numbers_get` (~24 tokens)

Returns a phone number.

Input parameters:

- `id` (integer, required): Phone number ID.

Output parameters:

- `activation_fee` (string): One-time activation fee in USD.
- `added` (string): Date and time the phone number was purchased in ISO 8601 format.
- `call_recording_enabled` (boolean): Indicates whether call recording is enabled.
- `call_status_url` (string|null): Callback URL for call status updates.
- `channels` (integer): Maximum number of concurrent inbound calls.
- `city` (string): City or rate center where the phone number originates.
- `cnam` (boolean|null): Indicates whether CNAM is enabled.
- `country` (string): Country where the phone number originates.
- `country_short_name` (string): Two-letter ISO country code.
- `destination` (array): Inbound call destinations set for the phone number.
- `documents` (array): Uploaded documents for the phone number.
- `domestic_cli` (boolean): Indicates whether the number can be used as the Caller ID for local calls.
- `free_min` (integer): Number of free inbound minutes.
- `id` (integer): Phone number ID.
- `label` (string|null): Label assigned to the phone number.
- `monthly_fee` (string): Monthly fee in USD.
- `number` (string): Phone number.
- `paid_until` (string): Date until which the number is paid.
- `per_min` (string): Price per inbound minute in USD.
- `require_docs` (array): Documents required to activate the phone number.
- `seconds` (string): Total inbound call duration in seconds for current month.
- `sms_enabled` (boolean): Indicates whether SMS is enabled.
- `sms_relay_url` (string|null): Callback URL for inbound SMS and MMS messages.
- `state` (string|null): State where the phone number originates. For non-US numbers, this field may be null.
- `status` (string): Phone number status. `active` means the number can receive and place calls; `inactive` means it cannot.
- `transcription_enabled` (boolean): Indicates whether transcription is enabled.
- `transcription_threshold` (integer): Minimum call duration in seconds to trigger transcription.
- `unlimited` (boolean): Indicates whether usage is unlimited.

### `my_numbers_update` (~105 tokens)

Updates a phone number.

Input parameters:

- `call_recording_enabled` (boolean): Indicates whether call recording is enabled.
- `call_status_url` (string): Callback URL for call status updates.
- `id` (integer, required): Phone number ID.
- `sms_relay_url` (string): Callback URL for inbound messages. Set to `null`  to remove routing.
- `transcription_enabled` (boolean): Indicates whether transcription is enabled.
- `transcription_threshold` (integer): Transcription threshold in seconds.

Output parameters:

- `activation_fee` (string): One-time activation fee in USD.
- `added` (string): Date and time the phone number was purchased in ISO 8601 format.
- `call_recording_enabled` (boolean): Indicates whether call recording is enabled.
- `call_status_url` (string|null): Callback URL for call status updates.
- `channels` (integer): Maximum number of concurrent inbound calls.
- `city` (string): City or rate center where the phone number originates.
- `cnam` (boolean|null): Indicates whether CNAM is enabled.
- `country` (string): Country where the phone number originates.
- `country_short_name` (string): Two-letter ISO country code.
- `destination` (array): Inbound call destinations set for the phone number.
- `documents` (array): Uploaded documents for the phone number.
- `domestic_cli` (boolean): Indicates whether the number can be used as the Caller ID for local calls.
- `free_min` (integer): Number of free inbound minutes.
- `id` (integer): Phone number ID.
- `label` (string|null): Label assigned to the phone number.
- `monthly_fee` (string): Monthly fee in USD.
- `number` (string): Phone number.
- `paid_until` (string): Date until which the number is paid.
- `per_min` (string): Price per inbound minute in USD.
- `require_docs` (array): Documents required to activate the phone number.
- `seconds` (string): Total inbound call duration in seconds for current month.
- `sms_enabled` (boolean): Indicates whether SMS is enabled.
- `sms_relay_url` (string|null): Callback URL for inbound SMS and MMS messages.
- `state` (string|null): State where the phone number originates. For non-US numbers, this field may be null.
- `status` (string): Phone number status. `active` means the number can receive and place calls; `inactive` means it cannot.
- `transcription_enabled` (boolean): Indicates whether transcription is enabled.
- `transcription_threshold` (integer): Minimum call duration in seconds to trigger transcription.
- `unlimited` (boolean): Indicates whether usage is unlimited.

### `my_numbers_sms_update` (~45 tokens)

Enables or disables inbound SMS support for a phone number.

Input parameters:

- `id` (integer): Phone number ID.
- `sms_enabled` (boolean): Indicates whether inbound SMS is enabled.

Output parameters:

- `success` (boolean): Indicates whether the request succeeded.

### `my_numbers_destinations_update` (~64 tokens)

Updates inbound call routing for phone numbers.

Input parameters:

- `destinations` (array, required): Inbound call destinations to apply.
- `ids` (array, required): List of phone number IDs to update.
- `sms_relay_url` (string, required): Callback URL for inbound SMS and MMS messages.

Output parameters:

- `result`

### `my_numbers_papers_upload` (~145 tokens)

Uploads a document for one or more phone numbers.
Uploaded files must meet the following requirements:
\- Allowed formats: PNG, JPG, JPEG, TIFF, BMP, or PDF
\- Maximum file size: 10 MB
\- Files can't be password protected
\- PDF files must not contain digital signatures

Input parameters:

- `did_ids` (string): List of phone number IDs.
- `doc_attachment` (string): Document file to upload.
- `doc_id` (integer): Specifies the type of document required to activate the phone number. Possible values are: `1` - Proof of identity, `2` - Proof of address, `3` - Proof of business registration.

Output parameters:

- `result` (array)

### `cdrs_list` (~199 tokens)

Returns a paginated list of CDRs.

Input parameters:

- `disposition`: Call disposition to filter results. Allowed values: `answered`, `busy`, `rejected`,  `failed`, `all`.
- `from` (string, required): Start date in `YYYY-MM-DD` format.
- `from_search` (string): Originating phone number for filtering. Full or partial input accepted.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `sip_trunk` (string): SIP trunk login to filter outbound calls. Ignored for inbound calls.
- `to` (string, required): End date in `YYYY-MM-DD` format.
- `to_search` (string): Destination phone number for filtering. Full or partial input accepted.
- `type` (string, required): Call direction to filter results. Allowed values: `placed`, `received`.
- `uuid` (string): Call ID to filter results.

Output parameters:

- `result`

### `cdrs_search` (~194 tokens)

Searches call transcriptions for specific keywords or phrases.

Input parameters:

- `disposition`
- `from` (string, required): Start date for call search in `YYYY-MM-DD` format.
- `from_search` (string): Originating phone number to filter results. Accepts full or partial number.
- `min_duration` (integer): Minimum call duration in seconds.
- `page` (integer, required): Page number to retrieve.
- `per_page` (integer, required): Number of records per page.
- `sip_trunk` (string): SIP trunk login to filter outbound calls. Ignored for inbound calls.
- `to` (string, required): End date for call search in `YYYY-MM-DD` format.
- `to_search` (string): Destination phone number to filter results. Accepts full or partial number.
- `transcription` (object)
- `type` (string, required): Search transcriptions by call type.
- `uuid` (string): Call ID.

Output parameters:

- `result`

### `cdrs_retranscribe` (~51 tokens)

Transcribes a recorded call.

Input parameters:

- `language` (string|null): Language.
- `uuid` (string, required): Call ID.
- `webhook_url` (string): Webhook URL to receive status updates.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `cdrs_transcription_get` (~27 tokens)

Returns a recorded call transcription.

Input parameters:

- `uuid` (string, required): Call ID.

Output parameters:

- `result`

### `cdrs_get` (~37 tokens)

Returns call details.

Input parameters:

- `show_transcription` (boolean): Indicates whether to include transcription.
- `uuid` (string, required): Call ID.

Output parameters:

- `result`

### `cdrs_list_all` (~202 tokens)

Returns CDRs in NDJSON format for bulk export.

Input parameters:

- `disposition`: Call disposition to filter results. Allowed values: `answered`, `busy`, `rejected`,  `failed`, `all`.
- `from` (string, required): Start date in `YYYY-MM-DD` format.
- `from_search` (string): Originating phone number for filtering. Full or partial input accepted.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `sip_trunk` (string): SIP trunk login to filter outbound calls. Ignored for inbound calls.
- `to` (string, required): End date in `YYYY-MM-DD` format.
- `to_search` (string): Destination phone number for filtering. Full or partial input accepted.
- `type` (string, required): Call direction to filter results. Allowed values: `placed`, `received`.
- `uuid` (string): Call ID to filter results.

### `call_recording_list` (~145 tokens)

Returns a paginated list of call recordings.

Input parameters:

- `call_uuid` (string): Call ID for filtering.
- `from` (string): Originating phone number for filtering. Full or partial input accepted.
- `from_date` (string): Start date in `YYYY-MM-DD` format.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `sip_trunks` (array): List of SIP trunk logins to filter outbound calls.
- `to` (string): Destination phone number for filtering. Full or partial input accepted.
- `to_date` (string): End date in `YYYY-MM-DD` format.

Output parameters:

- `invalid` (object): An invalid recording filter response
- `pagination` (object)
- `recordings` (array)

### `call_recording_delete` (~24 tokens)

Deletes a call recording.

Input parameters:

- `id` (integer, required): Recording ID.

Output parameters:

- `success` (boolean): Indicates whether the request succeeded.

### `speech_analytics_create` (~209 tokens)

Uploads an audio file for transcription. Wavix sends a POST callback to the specified callback URL when the transcription is complete.

Callback body:
\```json
   {
        "request_id": "e865ea07-25af-4fdd-876e-04b0d41d5ebd",
        "status": "completed",
        "error": null
   }
\```

\- `request_id`: Transcription request ID.
\- `status`: Operation status. Possible values are `completed`, `failed`. `completed` indicates successful transcription; `failed` indicates an error. - `error`: Error description. Value is `null` if the transcription was successful.

Input parameters:

- `callback_url` (string): Callback URL for transcription status updates.
- `file` (string): Binary file content. Maximum size is 25 MB. Wavix supports WAV, MP3, and MP4 stereo formats.
- `insights` (boolean): Indicates whether to enable insights generation.

Output parameters:

- `result`

### `speech_analytics_get` (~25 tokens)

Returns a transcription.

Input parameters:

- `uuid` (string, required): Transcription request ID.

Output parameters:

- `result`

### `speech_analytics_retranscribe` (~57 tokens)

Retranscribes an uploaded file.

Input parameters:

- `callback_url` (string): Callback URL for transcription status updates.
- `insights` (boolean): Indicates whether to enable insights generation.
- `uuid` (string, required): Transcription request ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `call_webhooks_list` (~37 tokens)

Returns a list of configured call webhooks. Wavix sends POST callbacks for `on-call` and `post-call` events.

Output parameters:

- `result` (array): List of call webhooks configured for the phone number.

### `call_webhooks_create` (~111 tokens)

Creates a call webhook. Wavix sends POST callbacks for `on-call` and `post-call` events.

Input parameters:

- `event_type` (string, required): Allowed values: `on-call`, `post-call`.  - `on-call`: Sends real-time status updates   when a call starts, is answered, and ends.  - `post-call`: Sends a callback after the call ends   with disposit…
- `url` (string, required): Webhook URL to send call events to.

Output parameters:

- `event_type` (string): Type of call events
- `success` (boolean)
- `url` (string): Webhook URL

### `call_webhooks_delete` (~48 tokens)

Deletes a call webhook.

Input parameters:

- `event_type` (string, required): Use `post-call` to stop receiving post-call callbacks. Use `on-call` to stop receiving real-time call status updates.

Output parameters:

- `success` (boolean)

### `call_control_list` (~16 tokens)

Returns a list of active calls.

Output parameters:

- `calls` (array): List of calls
- `success` (boolean): Indicates whether the request was successful.

### `call_control_create` (~129 tokens)

Starts an outbound call.

Input parameters:

- `callback_url` (string, required): The callback URL where Wavix sends the call status updates
- `from` (string, required): Caller ID. Must be an active or verified phone number in your account.
- `recording` (boolean): Specifies whether to record the call
- `tag` (string): Call metadata
- `timeout` (integer): The ring timeout, in seconds, before the call is considered unanswered.
- `to` (string, required): Destination number in E.164 format
- `voicemail_detection` (boolean): Specifies whether the AMD is turned on for the call

Output parameters:

- `call_answered` (string|null): Date and time when the call was answered
- `call_completed` (string|null): Date and time when the call ended
- `call_started` (string): Date and time when the call started
- `direction` (string): Call direction - inbound or outbound
- `event_payload`: Event-specific data
- `event_time` (string): Date and time of the latest event
- `event_type` (string): The latest call event
- `from` (string): Caller ID
- `machine_detected` (boolean): Indicates whether the call was answered by an answering machine
- `tag` (string): Call metadata
- `to` (string): Destination number
- `uuid` (string): Call ID

### `call_control_get` (~22 tokens)

Returns a call.

Input parameters:

- `uuid` (string, required): Call ID.

Output parameters:

- `call` (object)
- `success` (boolean): Indicates whether the request was successful.

### `call_control_delete` (~23 tokens)

Ends an active call.

Input parameters:

- `uuid` (string, required): Call ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `call_control_update` (~42 tokens)

Updates an active call. Only the `tag` field can be modified.

Input parameters:

- `tag` (string, required): Call metadata.
- `uuid` (string, required): Call ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `call_control_answer` (~94 tokens)

Answers an inbound call. Optionally initiate media streaming upon answering.

Input parameters:

- `call_recording` (boolean): Indicates whether the call should be recorded.
- `call_transcription` (boolean): Indicates whether the call should be transcribed after it ends.
- `stream_channel`
- `stream_type`
- `stream_url` (string): WebSocket URL to stream the call.
- `uuid` (string, required): Call ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `call_control_streams_create` (~51 tokens)

Starts call media streaming.

Input parameters:

- `stream_channel` (required)
- `stream_type` (required)
- `stream_url` (string, required): WebSocket URL for call streaming
- `uuid` (string, required): Call ID.

Output parameters:

- `stream_id` (string): Stream ID
- `success` (boolean): Indicates that the request was successful

### `call_control_streams_delete` (~35 tokens)

Stops call media streaming.

Input parameters:

- `stream_uuid` (string, required): Stream ID.
- `uuid` (string, required): Call ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `call_control_audio_play` (~41 tokens)

Plays audio in an active call.

Input parameters:

- `audio_file` (string, required): URL of the audio file to play
- `uuid` (string, required): Call ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `call_control_audio_stop` (~27 tokens)

Stops audio playback in an active call.

Input parameters:

- `uuid` (string, required): Call ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `call_control_collect` (~113 tokens)

Collects DTMF input in an active call.

Input parameters:

- `max_attempts` (integer): Maximum number of attempts.
- `max_digits` (integer): Maximum number of digits to collect.
- `prompt` (object): Prompt to play before collecting digits.  Play a prerecorded audio file or use Wavix Text-To-Speech.
- `termination_character` (string): DTMF character that ends input collection.
- `timeout` (integer): Timeout for digit collection in seconds.
- `uuid` (string, required): Call ID.

Output parameters:

- `success` (boolean): Indicates whether the request was successful.

### `webrtc_tokens_list` (~51 tokens)

Returns a paginated list of active Wavix Embeddable widget tokens. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Output parameters:

- `items` (array)
- `pagination` (object)

### `webrtc_tokens_create` (~71 tokens)

Creates a Wavix Embeddable widget token.

Input parameters:

- `payload` (object|null): Arbitrary data to be associated with the token
- `sip_trunk` (string, required): SIP trunk name
- `ttl` (integer|null, required): Time to live in seconds. Pass `null` for no expiration.

Output parameters:

- `payload` (object|null): Arbitrary data associated with the token
- `sip_trunk` (string): SIP trunk name
- `token` (string): Wavix Embeddable Widget token.
- `ttl` (integer|null): Time to live, in seconds
- `uuid` (string): Token ID

### `webrtc_tokens_get` (~31 tokens)

Returns a Wavix Embeddable widget token configuration.

Input parameters:

- `uuid` (string, required): Token ID.

Output parameters:

- `payload` (object|null): Arbitrary data associated with the token
- `sip_trunk` (string): SIP trunk name
- `ttl` (integer|null): Time to live, in seconds. `null` means no expiration.
- `uuid` (string): Token ID

### `webrtc_tokens_update` (~49 tokens)

Updates the payload for a Wavix Embeddable widget token.

Input parameters:

- `payload` (object, required): Arbitrary data to be associated with the token
- `uuid` (string, required): Token ID

Output parameters:

- `payload` (object|null): Arbitrary data associated with the token
- `sip_trunk` (string): SIP trunk name
- `ttl` (integer|null): Time to live, in seconds. `null` means no expiration.
- `uuid` (string): Token ID

### `webrtc_tokens_delete` (~53 tokens)

Deletes a Wavix Embeddable widget token. After deletion, the token can't be used to authenticate widget sessions, and any active session associated with it is terminated.

Input parameters:

- `uuid` (string, required): Token ID

Output parameters:

- `success` (boolean)

### `sms_and_mms_sender_ids_list` (~20 tokens)

Returns a list of Sender IDs.

Output parameters:

- `result`

### `sms_and_mms_sender_ids_create` (~120 tokens)

Creates a Sender ID. Use the 10DLC API to create Sender IDs in the US.

Input parameters:

- `countries` (array, required): Two-letter ISO country codes where the Sender ID is allowlisted.
- `monthly_volume` (string): Expected monthly volume.
- `samples` (array): Message samples.
- `sender_id` (string, required): Sender ID name. Can be either an alphanumeric string or a  phone number.
- `type` (string, required): Sender ID type.
- `usecase` (string, required): Use case for the Sender ID

Output parameters:

- `result`

### `sms_and_mms_sender_ids_get` (~28 tokens)

Returns a Sender ID.

Input parameters:

- `id` (string, required): Sender ID ID.

Output parameters:

- `result`

### `sms_and_mms_sender_ids_delete` (~28 tokens)

Deletes a Sender ID.

Input parameters:

- `id` (string, required): Sender ID ID.

Output parameters:

- `result`

### `sms_and_mms_opt_outs_list` (~135 tokens)

Returns a paginated list of opted-out phone numbers. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `campaign_id` (string): 10DLC campaign for filtering.
- `created_after` (string): Start date in `YYYY-MM-DD` format.
- `created_before` (string): End date in `YYYY-MM-DD` format.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `sender_id` (string): Sender ID for filtering.

Output parameters:

- `items` (array)
- `pagination` (object)

### `sms_and_mms_opt_outs_create` (~42 tokens)

Creates an opt-out for a Sender ID, 10DLC campaign,
 or all outbound messages.

Input parameters:

- `opt_out` (object, required)

Output parameters:

- `result`

### `sms_and_mms_messages_list` (~228 tokens)

Returns a paginated list of SMS and MMS messages.

Input parameters:

- `from` (string): Message sender. For `outbound` messages,  the Sender ID used to send the message;  for `inbound` messages, the originating phone number.
- `message_type` (string): Message type for filtering. Allowed values are `sms`, `mms`.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `sent_after` (string): Start date in `YYYY-MM-DD` format.
- `sent_before` (string): End date in `YYYY-MM-DD` format.
- `status`: Message delivery status for filtering.
- `tag` (string): Tag for filtering. Supported for outbound messages only.
- `to` (string): Recipient phone number. For `outbound` messages,  the destination phone number;  for `inbound` messages, an SMS-enabled number on the Wavix platform.
- `type` (string, required): Message direction for filtering. Allowed values are `inbound`, `outbound`.

Output parameters:

- `result`

### `sms_and_mms_messages_send` (~127 tokens)

Sends SMS or MMS messages. MMS is supported for U.S. numbers only.
\**Rate limit**: 20 messages per phone number in 24 hours.

Input parameters:

- `callback_url` (string): Callback URL for delivery reports.
- `from` (string, required): Sender ID. Numeric or alphanumeric.
- `message_body` (object, required)
- `tag` (string): Tag to group messages, such as for a specific campaign.
- `to` (string, required): Recipient phone number.
- `validity` (integer): Message validity period in seconds. Delivery attempts stop after this period expires.

Output parameters:

- `carrier_fees` (string|null): Mobile carrier fees in USD.
- `charge` (string): Total charge for the message in USD.
- `delivered_at` (string|null): Date and time the message was delivered in ISO 8601 format.
- `direction` (string): Message direction. Possible values are `outbound`, `inbound`.
- `error_message` (string|null): Error message.
- `from` (string): Sender ID.
- `mcc` (string|null): Mobile country code.
- `message_body` (object)
- `message_id` (string): Message ID.
- `message_type` (string): Message type.
- `mnc` (string|null): Mobile network code.
- `segments` (integer): Number of SMS segments. Always 1 for MMS.
- `sent_at` (string|null): Date and time the message was sent in ISO 8601 format.
- `status` (string): Message status.
- `submitted_at` (string): Date and time the message was submitted in ISO 8601 format.
- `tag` (string|null): Message tag.
- `to` (string): Recipient phone number.

### `sms_and_mms_messages_get` (~25 tokens)

Returns a message.

Input parameters:

- `id` (string, required): Message ID.

Output parameters:

- `result`

### `sms_and_mms_messages_list_all` (~221 tokens)

Returns SMS and MMS messages in newline-delimited JSON (NDJSON) format.

Input parameters:

- `from` (string): Message sender. For `outbound` messages, the Sender ID used to send  the message;  for `inbound` messages, the originating phone number.
- `message_type` (string): Message type for filtering. Allowed values are `sms`, `mms`.
- `sent_after` (string): Start date in `YYYY-MM-DDTHH:MM:SS` format.
- `sent_before` (string): End date in `YYYY-MM-DDTHH:MM:SS` format.
- `status`: Message delivery status for filtering.
- `tag` (string): Tag for filtering. Supported for outbound messages only.
- `to` (string): Message recipient. For `outbound` messages,  the destination phone number;  for `inbound` messages,   the SMS-enabled number that received the message.
- `type` (string, required): Message direction for filtering.  Allowed values are `inbound`, `outbound`.

### `ten_dlc_brands_list` (~217 tokens)

Returns a paginated list of 10DLC brands. Filter results by date, name, legal name, and status. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `company_name` (string): Company legal name.
- `country` (string): Brand registration country.
- `created_after` (string): Brand creation start date in `YYYY-MM-DD` format.
- `created_before` (string): Brand creation end date in `YYYY-MM-DD` format.
- `dba_name` (string): Brand name.
- `ein_taxid` (string): EIN/Tax ID.
- `entity_type` (string): Business entity type.
- `mock` (boolean): Indicates whether to include mock brands only.
- `page` (integer): Page number.
- `per_page` (integer): Number of records per page.
- `show_deleted` (boolean): Indicates whether to include deleted brands.
- `status` (string): Brand identity verification status.

Output parameters:

- `result`

### `ten_dlc_brands_create` (~387 tokens)

Registers a 10DLC Brand. TCR automatically verifies the brand identity. Only brands with `VERIFIED` or `VETTED_VERIFIED` identity status can register 10DLC Campaigns.

Input parameters:

- `city` (string, required): The city name
- `company_name` (string, required): Legal name of the company
- `country` (string, required): 2-letter ISO country code the business address
- `dba_name` (string, required): Brand name or DBA
- `ein_taxid` (string, required): IRS Employee Identification Number (EIN) for US-based or foreign companies with EIN. The numeric portion of Tax ID for companies incorporated in other countries.
- `ein_taxid_country` (string, required): 2-letter ISO country code of the Tax ID issuing country
- `email` (string, required): The email address of the support contact
- `entity_type` (string, required): The company entity type
- `first_name` (string, required): The first name of the business contact
- `last_name` (string, required): The last name of the business contact
- `mock` (boolean): Indicates a mock Brand. You can create mock Brands for testing purposes only, production traffic with the mock Brands is prohibited.
- `phone_number` (string, required): The support contact telephone in E.164 format
- `state_or_province` (string|null, required): State or province. For the United States, use 2 character codes.
- `stock_exchange` (string|null): The stock exchange code. For PUBLIC_PROFIT Brands only.
- `stock_symbol` (string|null): The stock symbol of the Brand. For PUBLIC_PROFIT Brands only.
- `street_address` (string, required): Street name and house number
- `vertical` (string, required): The segment the business operates in
- `website` (string): The website of the business
- `zip` (string, required): The business zip or postal code

Output parameters:

- `result`

### `ten_dlc_brands_get` (~30 tokens)

Returns a 10DLC Brand.

Input parameters:

- `brand_id` (string, required): Brand ID.

Output parameters:

- `result`

### `ten_dlc_brands_update` (~409 tokens)

Updates a 10DLC brand. Updating identity-related parameters, including  `ein_taxid`, `ein_taxid_country`, and `entity_type`, resets the Brand status to `UNVERIFIED` and triggers automatic re-submission. Brands in `VETTED_VERIFIED` status or with active Campaigns cannot be updated.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `city` (string): The city name
- `company_name` (string): Legal name of the company
- `country` (string): 2-letter ISO country code the business address
- `dba_name` (string): Brand name or DBA
- `ein_taxid` (string): IRS Employee Identification Number (EIN) for US-based or foreign companies with EIN. The numeric portion of Tax ID for companies incorporated in other countries.
- `ein_taxid_country` (string): 2-letter ISO country code of the Tax ID issuing country
- `email` (string): The email address of the support contact
- `entity_type` (string): The company entity type
- `first_name` (string): The first name of the business contact
- `last_name` (string): The last name of the business contact
- `mock` (boolean): Mock flag for testing (optional, defaults to false)
- `phone_number` (string): The support contact telephone in E.164 format
- `state_or_province` (string|null): State or province. For the United States, use 2 character codes.
- `stock_exchange` (string|null): The stock exchange code. For PUBLIC_PROFIT Brands only.
- `stock_symbol` (string|null): The stock symbol of the Brand. For PUBLIC_PROFIT Brands only.
- `street_address` (string): Street name and house number
- `vertical` (string): The segment the business operates in
- `website` (string): The website of the business
- `zip` (string): The business zip or postal code

Output parameters:

- `result`

### `ten_dlc_brands_delete` (~38 tokens)

Deletes a 10DLC Brand. Brands with active campaigns cannot be deleted.

Input parameters:

- `brand_id` (string, required): Brand ID.

Output parameters:

- `result`

### `ten_dlc_brand_appeals_list` (~33 tokens)

Returns a list of brand identity verification appeals.

Input parameters:

- `brand_id` (string, required): Brand ID.

Output parameters:

- `result` (array)

### `ten_dlc_brand_appeals_create` (~211 tokens)

Submits an appeal for 10DLC brand identity verification. Provide any additional documentation to support the appeal. Use `appeal_category` to specify the appeal type:
\- `VERIFY_TAX_ID` — Use if the brand is UNVERIFIED due to a tax ID mismatch. Applies to private companies, public companies, non-profits, and government entities.
\- `VERIFY_NON_PROFIT` — Use if a non-profit brand is UNVERIFIED or VERIFIED but missing tax-exempt status.
\- `VERIFY_GOVERNMENT` — Use if a government brand is UNVERIFIED or VERIFIED but missing government entity status.

Input parameters:

- `appeal_categories` (array, required): List of appeal categories. Allowed values: `VERIFY_TAX_ID`, `VERIFY_NON_PROFIT`, `VERIFY_GOVERNMENT`
- `brand_id` (string, required): Brand ID.
- `evidence` (array, required): List of evidence IDs associated with the appeal.
- `explanation` (string): Appeal comment or justification.

Output parameters:

- `result`

### `ten_dlc_brand_evidence_list` (~37 tokens)

Use this method to list previously uploaded Brand appeal evidence.

Input parameters:

- `brand_id` (string, required): Unique identifier of a Brand

Output parameters:

- `items` (array): List of uploaded evidence files

### `ten_dlc_brand_evidence_upload` (~66 tokens)

Uploads 10DLC Brand evidence. Supported formats include .jpg, .png, .pdf, and more. File size must be under 10MB.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `file` (string): File to upload.

Output parameters:

- `result`

### `ten_dlc_brand_evidence_delete` (~42 tokens)

Deletes a 10DLC Brand evidence file.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `uuid` (string, required): Evidence ID.

Output parameters:

- `result`

### `ten_dlc_brand_vettings_list` (~38 tokens)

Returns a list of external vettings for a 10DLC Brand.

Input parameters:

- `brand_id` (string, required): Brand ID.

Output parameters:

- `result` (array)

### `ten_dlc_brand_vettings_import` (~80 tokens)

Imports an existing external vetting for a 10DLC Brand.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `evp_id` (string, required): External vetting provider code
- `vetting_id` (string, required): Unique identifier of the vetting request
- `vetting_token` (string, required): Unique vetting token

Output parameters:

- `result`

### `ten_dlc_brand_vettings_create` (~87 tokens)

Requests external vetting for a 10DLC Brand. Supported providers: `AEGIS`, `CV`, `WMC`. Supported classes: `STANDARD`, `ENHANCED`.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `evp_id` (string, required): External vetting provider code
- `vetting_class` (string, required): The vetting class

Output parameters:

- `create_date` (string): The date and time the vetting request is created
- `evp_id` (string): External vetting provider code
- `reasons` (array|null): Reason
- `vetted_date` (string|null): The date and time the vetting request is competed
- `vetting_class` (string): The vetting class
- `vetting_details` (object): Additional details of the vetting request
- `vetting_id` (string): Unique identifier of the vetting request
- `vetting_score` (integer|null): The assigned Brand vetting score
- `vetting_status` (string): Status of the vetting request
- `vetting_token` (string|null): Unique vetting token

### `ten_dlc_brand_vetting_appeals_list` (~42 tokens)

Returns a list of external vetting appeals for a 10DLC Brand.

Input parameters:

- `brand_id` (string, required): Brand ID.

Output parameters:

- `result` (array)

### `ten_dlc_brand_vetting_appeals_create` (~128 tokens)

Submits an appeal for a 10DLC Brand external vetting.

Input parameters:

- `appeal_categories` (array, required): List of appeal categories. Allowed values: `VERIFY_TAX_ID`, `VERIFY_NON_PROFIT`, `VERIFY_GOVERNMENT`, `LOW_SCORE`.
- `brand_id` (string, required): Brand ID.
- `evidence` (array, required): List of evidence IDs associated with the appeal.
- `evp_id` (string): EVP ID.
- `explanation` (string): Appeal comment or justification.
- `vetting_id` (string): Vetting ID.

Output parameters:

- `result`

### `ten_dlc_brand_usecase_qualify` (~61 tokens)

Returns the qualification results for a 10DLC Brand use case. Includes MNO-specific attributes, restrictions, and fees.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `use_case` (string, required): Use case name.

Output parameters:

- `result`

### `ten_dlc_campaigns_list` (~170 tokens)

Returns a paginated list of 10DLC Campaigns. Filter results by date, status, and use case. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `created_after` (string): Campaign creation start date in `YYYY-MM-DD` format.
- `created_before` (string): Campaign creation end date in `YYYY-MM-DD` format.
- `mock` (boolean): Indicates whether to include mock 10DLC Campaigns only.
- `name` (string): Campaign name.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `status` (string): Campaign status.
- `usecase` (string): Use case.

Output parameters:

- `result`

### `ten_dlc_brand_campaigns_list` (~166 tokens)

Returns 10DLC Campaigns associated with a Brand.
 Results are limited to 25 records per page by default.
  Use `page` and `per_page` to navigate results.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `created_after` (string): Campaign creation start date in `YYYY-MM-DD` format.
- `created_before` (string): Campaign creation end date in `YYYY-MM-DD` format.
- `mock` (boolean): Indicates whether to include mock Campaigns only.
- `name` (string): Campaign name.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `status` (string): Campaign status.
- `usecase` (string): Use case.

Output parameters:

- `result`

### `ten_dlc_brand_campaigns_create` (~547 tokens)

Registers a 10DLC Campaign.

Input parameters:

- `affiliate_marketing` (boolean, required): Indicates whether the Campaign is used for affiliate marketing
- `age_gated` (boolean, required): Indicates whether the Campaign messages contain age-gated content
- `auto_renewal` (boolean, required): Indicates whether the Campaign should be automatically renewed
- `brand_id` (string, required): Brand ID.
- `description` (string, required): The Campaign description
- `direct_lending` (boolean, required): Indicates whether the Campaign messages contain direct lending content
- `embedded_link_sample` (string|null, required): An embedded link sample
- `embedded_links` (boolean, required): Indicates whether the Campaign messages contain embedded links
- `embedded_phones` (boolean|null, required): Indicates whether the Campaign messages contain embedded phone numbers
- `help` (boolean, required): Indicates whether the campaign has a help system (e.g. keyword: HELP, INFO) that subscribers can use or not.
- `help_keywords` (string, required): A comma-separated list of HELP keywords. The HELP keywords are case-insensitive.
- `help_message` (string, required): An acknowledgement to be sent when a HELP keyword is received
- `mock` (boolean, required): Indicates a mock Campaign. The mock Campaigns cannot be used to send production traffic
- `name` (string, required): A user-defined Campaign name
- `optin` (boolean, required): Indicates whether the campaign requires a subscriber to opt-in before receiving messages or not.
- `optin_keywords` (string, required): A comma-separated list of OPT-IN keywords. The OPT-IN keywords are case-insensitive.
- `optin_message` (string, required): An acknowledgement to be sent when an OPT-IN keyword is received
- `optin_workflow` (string, required): The opt-in workflow - the process through which consumers opt-in to the Campaign
- `optout` (boolean, required): Indicates whether the campaign has an opt-out system (e.g. keyword: STOP, QUIT) that subscribers can use or not.
- `optout_keywords` (string, required): A comma-separated list of OPT-OUT keywords. The OPT-OUT keywords are case-insensitive.
- `optout_message` (string, required): An acknowledgement to be sent when an OPT-OUT keyword is received
- `privacy_policy` (string): A link to the Campaign privacy policy
- `sample1` (string, required): Message sample
- `sample2` (string|null, required): Message sample
- `sample3` (string|null, required): Message sample
- `sample4` (string|null, required): Message sample
- `sample5` (string|null, required): Message sample
- `terms_conditions` (string, required): A link to the Campaign terms and conditions
- `usecase` (string, required): The Campaign use case

Output parameters:

- `result`

### `ten_dlc_brand_campaigns_get` (~41 tokens)

Returns a 10DLC Campaign.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `campaign_id` (string, required): Campaign ID.

Output parameters:

- `result`

### `ten_dlc_brand_campaigns_update` (~467 tokens)

Updates a 10DLC Campaign.

Input parameters:

- `age_gated` (boolean): Indicates whether the Campaign messages contain age-gated content
- `auto_renewal` (boolean): Indicates whether the Campaign should be automatically renewed
- `brand_id` (string, required): Brand ID.
- `campaign_id` (string, required): Campaign ID.
- `description` (string): The Campaign description
- `direct_lending` (boolean): Indicates whether the Campaign messages contain direct lending content
- `embedded_link_sample` (string): An embedded link sample
- `embedded_links` (boolean): Indicates whether the Campaign messages contain embedded links
- `embedded_phones` (boolean): Indicates whether the Campaign messages contain embedded phone numbers
- `help` (boolean): Indicates whether the Campaign provides HELP responses
- `help_keywords` (string): A comma-separated list of HELP keywords. The HELP keywords are case-insensitive.
- `help_message` (string): An acknowledgement to be sent when a HELP keyword is received
- `name` (string): A user-defined Campaign name
- `optin` (boolean): Indicates whether the Campaign supports opt-in functionality
- `optin_keywords` (string): A comma-separated list of OPT-IN keywords. The OPT-IN keywords are case-insensitive.
- `optin_message` (string): An acknowledgement to be sent when an OPT-IN keyword is received
- `optin_workflow` (string): The opt-in workflow - the process through which consumers opt-in to the Campaign
- `optout` (boolean): Indicates whether the Campaign supports opt-out functionality
- `optout_keywords` (string): A comma-separated list of OPT-OUT keywords. The OPT-OUT keywords are case-insensitive.
- `optout_message` (string): An acknowledgement to be sent when an OPT-OUT keyword is received
- `privacy_policy` (string): A link to the Campaign privacy policy
- `sample1` (string): Message sample
- `sample2` (string): Message sample
- `sample3` (string): Message sample
- `sample4` (string): Message sample
- `sample5` (string): Message sample
- `terms_conditions` (string): A link to the Campaign terms and conditions
- `usecase` (string): Campaign use case

Output parameters:

- `result`

### `ten_dlc_brand_campaigns_delete` (~56 tokens)

Deletes a 10DLC Campaign. Associated phone numbers cannot be used as Sender IDs once the Campaign is deleted.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `campaign_id` (string, required): Campaign ID.

Output parameters:

- `result`

### `ten_dlc_subscriptions_list` (~23 tokens)

Returns a list of 10DLC event subscriptions.

Output parameters:

- `result` (array)

### `ten_dlc_subscriptions_create` (~75 tokens)

Subscribes to Wavix 10DLC event callbacks.

Input parameters:

- `subscription_category` (string, required): The Wavix 10DLC event type. Can be one of the following: `brand`, `campaign`, or `number`.
- `url` (string, required): A webhook URL to send events to

Output parameters:

- `result`

### `ten_dlc_subscriptions_delete` (~34 tokens)

Deletes a 10DLC event subscription.

Input parameters:

- `subscription_category` (string, required): Event category to unsubscribe from.

Output parameters:

- `result`

### `ten_dlc_campaign_numbers_link` (~72 tokens)

Links a phone number to a 10DLC Campaign. Wavix automatically creates a Sender ID once the number is approved.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `campaign_id` (string, required): Campaign ID.
- `number` (string, required): Phone number to associate with the Campaign.

Output parameters:

- `result`

### `ten_dlc_campaign_numbers_unlink` (~65 tokens)

Unlinks a phone number from a 10DLC Campaign. The associated Sender ID is also deleted.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `campaign_id` (string, required): Campaign ID.
- `number` (string, required): Phone number to unlink.

Output parameters:

- `result`

### `ten_dlc_campaign_numbers_list` (~47 tokens)

Returns a list of phone numbers associated with a 10DLC Campaign.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `campaign_id` (string, required): Campaign ID.

Output parameters:

- `result`

### `ten_dlc_campaigns_nudge` (~191 tokens)

Requests action on a pending or rejected 10DLC Campaign. Use `nudge_intent` to specify the action: 
\- `REVIEW`: Request review for a pending Campaign. - `APPEAL_REJECTION`: Appeal a rejected Campaign.
Note:
\- The Campaign must be at least 72 hours old.
\- Only one nudge request per Campaign is allowed every 24 hours.

Input parameters:

- `brand_id` (string, required): Brand ID.
- `campaign_id` (string, required): Campaign ID.
- `description` (string, required): Description of the nudge request.
- `nudge_intent` (string, required): Nudge intent. Allowed values: `REVIEW`, `APPEAL_REJECTION`.  Use `nudge_intent` to specify the action: - `REVIEW`: Request review for a pending Campaign. - `APPEAL_REJECTION`: Appeal a rejected Campa…

Output parameters:

- `result`

### `number_validator_get` (~41 tokens)

Returns details for a phone number.

Input parameters:

- `phone_number` (string, required): Phone number in E.164 format or without "+".
- `type` (required): Validation type.

Output parameters:

- `result`

### `number_validator_create_bulk` (~113 tokens)

Returns details for multiple phone numbers. If `async` is true, returns a token to poll for results.

Input parameters:

- `async` (boolean, required): Indicates whether the request should be executed asynchronously. If `true`, the response will include a `request_uuid` that can be used to poll for results. If `false`, the response will include vali…
- `force` (boolean, required): Force
- `phone_numbers` (array, required): List of phone numbers to get detailed information about.
- `type` (string, required)

Output parameters:

- `result`

### `number_validator_results_get` (~25 tokens)

Returns asynchronous validation results.

Input parameters:

- `request_id` (string, required): Request ID.

Output parameters:

- `result`

### `voice_campaigns_create` (~31 tokens)

Triggers an outbound call based on a pre-configured scenario.

Input parameters:

- `voice_campaign` (object, required)

Output parameters:

- `voice_campaign` (object)

### `voice_campaigns_get` (~26 tokens)

Returns a specific voice campaign.

Input parameters:

- `id` (integer, required): Voice campaign ID.

Output parameters:

- `voice_campaign` (object)

### `link_shortener_create` (~90 tokens)

Creates a short link.

Input parameters:

- `expiration_time` (string): Expiration date and time in ISO 8601 format.
- `fallback_url` (string): Fallback URL for expired or invalid links.
- `link` (string, required): Target URL to shorten.
- `phone` (string): Phone number for the short link.
- `utm_campaign` (string): UTM campaign name for tracking insights.

Output parameters:

- `result`

### `link_shortener_metrics_list` (~98 tokens)

Returns short link metrics.

Input parameters:

- `from` (string, required): Start date in `YYYY-MM-DD` format.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `phone` (string): Phone number for filtering.
- `to` (string, required): End date in `YYYY-MM-DD` format.
- `utm_campaign` (string): UTM campaign name for filtering.

Output parameters:

- `result`

### `two_fa_verification_create` (~218 tokens)

Creates a new 2FA Verification and sends a one-time password (OTP) to the destination phone number.
Before using this endpoint, create a 2FA Service in the Wavix portal. The service is created once and reused to generate and validate OTPs.
OTP flow:
1\. Create a Verification to generate and send an OTP.
2\. Reuse the same Verification to resend the OTP if needed.
3\. Validate the OTP using the 2FA API

When a Verification is created, Wavix generates a random code and sends it to the destination phone number via the selected channel.

Input parameters:

- `channel` (string, required): The communication channel you want to use. Can be either `sms` or `voice`.
- `service_id` (string, required): Unique Wavix 2FA Service ID. Find your 2FA Service ID on the Wavix portal.
- `to` (string, required): End user's phone number to which the verification code will be sent. The phone number must be in E.164 format.

Output parameters:

- `result`

### `two_fa_sessions_list` (~72 tokens)

Returns a list of 2FA verifications. Filter by service or date.

Input parameters:

- `from` (string, required): Start date in `YYYY-MM-DD` format.
- `service_id` (string, required): 2FA Service ID.
- `to` (string, required): End date in `YYYY-MM-DD` format.

Output parameters:

- `result` (array)

### `two_fa_verification_resend` (~67 tokens)

Resends the verification code using the specified channel. Previously sent codes are invalidated.

Input parameters:

- `channel` (string, required): The communication channel you want to use. Can be either `sms` or `voice`.
- `session_id` (string, required): 2FA Verification ID.

Output parameters:

- `result`

### `two_fa_verification_check` (~45 tokens)

Validates the verification code.

Input parameters:

- `code` (string, required): The code entered by an end user
- `session_id` (string, required): 2FA Verification ID.

Output parameters:

- `result`

### `two_fa_verification_cancel` (~63 tokens)

Cancels a 2FA verification. After cancellation, no additional codes are sent, and previously sent codes can no longer be validated. You must create a new verification to send another code.

Input parameters:

- `session_id` (string, required): 2FA Verification ID.

Output parameters:

- `success` (boolean)

### `two_fa_events_list` (~37 tokens)

Returns a list of events for a specific 2FA Verification.

Input parameters:

- `session_id` (string, required): 2FA Verification ID.

Output parameters:

- `result` (array)

### `billing_transactions_list` (~112 tokens)

Returns a paginated list of financial transactions.

Input parameters:

- `details_contains` (string): Transaction details for filtering.
- `from_date` (string, required): Start date in `YYYY-MM-DD` format.
- `page` (integer): Page number to retrieve.
- `payments` (boolean): Indicates whether to include account top-ups only.
- `per_page` (integer): Number of records per page.
- `to_date` (string, required): End date in `YYYY-MM-DD` format.
- `type`: Filter by transaction type.

Output parameters:

- `result`

### `billing_invoices_list` (~43 tokens)

Returns a paginated list of financial statements.

Input parameters:

- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.

Output parameters:

- `result`

### `profile_get` (~16 tokens)

Returns the account profile and billing details.

Output parameters:

- `result`

### `profile_update` (~165 tokens)

Updates the account profile and billing details.

Input parameters:

- `additional_info` (string): Additional information associated with the account.
- `company_info` (object)
- `contacts` (string): Email associated with the account.
- `default_short_link_endpoint` (string): Default short link endpoint.
- `dlr_relay_url` (string): Callback URL to forward message delivery reports (DLRs) to.
- `first_name` (string): Account owner's first name.
- `job_title` (string): Account owner's job title.
- `last_name` (string): Account owner's last name.
- `phone` (string): Account owner's phone number
- `sms_relay_url` (string): Callback URL to forward inbound SMS to.
- `time_zone` (string): Timezone configured on the account.

Output parameters:

- `result`

### `profile_config_get` (~17 tokens)

Returns the account balance and configuration details.

Output parameters:

- `result`

### `sub_accounts_list` (~56 tokens)

Returns a paginated list of sub-accounts. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `status` (string): Account status to filter results.

Output parameters:

- `pagination` (object)
- `sub_organizations` (array)

### `sub_accounts_create` (~42 tokens)

Creates a sub-account.

Input parameters:

- `default_destinations` (object): Default webhook URLs for inbound messages and delivery reports.
- `name` (string, required): Sub-account name.

Output parameters:

- `api_key` (string): Sub-account API key.
- `created_at` (string): Date and time the sub-account was created in ISO 8601 format.
- `default_destinations` (object): Default webhook URLs for inbound messages and delivery reports.
- `id` (integer): Sub-account ID.
- `master_organization` (integer): Master account ID.
- `name` (string): Sub-account name.
- `status` (string): Sub-account status.

### `sub_accounts_get` (~50 tokens)

Returns a specific sub-account. Results are limited to 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `id` (integer, required): Sub-account ID.

Output parameters:

- `api_key` (string): Sub-account API key.
- `created_at` (string): Date and time the sub-account was created in ISO 8601 format.
- `default_destinations` (object): Default webhook URLs for inbound messages and delivery reports.
- `id` (integer): Sub-account ID.
- `master_organization` (integer): Master account ID.
- `name` (string): Sub-account name.
- `status` (string): Sub-account status.

### `sub_accounts_update` (~64 tokens)

Updates a sub-account's configuration.

Input parameters:

- `default_destinations` (object): Default webhook URLs for inbound messages and delivery reports.
- `id` (integer, required): Sub-account ID.
- `name` (string, required): Sub-account name.
- `status` (string): Sub-account status.

Output parameters:

- `api_key` (string): Sub-account API key.
- `created_at` (string): Date and time the sub-account was created in ISO 8601 format.
- `default_destinations` (object): Default webhook URLs for inbound messages and delivery reports.
- `id` (integer): Sub-account ID.
- `master_organization` (integer): Master account ID.
- `name` (string): Sub-account name.
- `status` (string): Sub-account status.

### `sub_accounts_transactions_list` (~134 tokens)

Returns a paginated list of transactions for a specific sub-account. Filter by date range and type. Results are paginated with 25 records per page by default. Use `page` and `per_page` to navigate results.

Input parameters:

- `from_date` (string, required): Start date in `YYYY-MM-DD` format.
- `id` (integer, required): Sub-account ID.
- `page` (integer): Page number to retrieve.
- `per_page` (integer): Number of records per page.
- `to_date` (string, required): End date in `YYYY-MM-DD` format.
- `type`: Transaction types to filter results.

Output parameters:

- `pagination` (object)
- `transactions` (array)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/wavix-mcp/mcp#diagnostics

## Score history

- 2026-08-03: 65
- 2026-08-02: 65
- 2026-08-01: 64
- 2026-07-31: 64
- 2026-07-30: 63
- 2026-07-29: 63
- 2026-07-28: 62
- 2026-07-27: 61
- 2026-07-26: 61

## Links

- Remote endpoint: https://mcp.wavix.com/mcp
- Authorisation metadata: https://mcp.wavix.com/.well-known/oauth-protected-resource/mcp
- Repository: https://github.com/Wavix/wavix-mcp-server
- Website: https://wavix.com/
- Changelog RSS feed: https://verifymcp.io/servers/wavix-mcp/mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/wavix-mcp/mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/wavix-mcp/mcp
