Ai telnyx-webrtc-curl

install
source · Clone the upstream repo
git clone https://github.com/team-telnyx/ai
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/team-telnyx/ai "$T" && mkdir -p ~/.claude/skills && cp -r "$T/providers/cursor/plugin/skills/telnyx-webrtc-curl" ~/.claude/skills/team-telnyx-ai-telnyx-webrtc-curl-e8694a && rm -rf "$T"
manifest: providers/cursor/plugin/skills/telnyx-webrtc-curl/SKILL.md
source content
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->

Telnyx Webrtc - curl

Installation

# curl is pre-installed on macOS, Linux, and Windows 10+

Setup

export TELNYX_API_KEY="YOUR_API_KEY_HERE"

All examples below use

$TELNYX_API_KEY
for authentication.

Error Handling

All API calls can fail with network errors, rate limits (429), validation errors (422), or authentication errors (401). Always handle errors in production code:

# Check HTTP status code in response
response=$(curl -s -w "\n%{http_code}" \
  -X POST "https://api.telnyx.com/v2/messages" \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"to": "+13125550001", "from": "+13125550002", "text": "Hello"}')

http_code=$(echo "$response" | tail -1)
body=$(echo "$response" | sed '$d')

case $http_code in
  2*) echo "Success: $body" ;;
  422) echo "Validation error — check required fields and formats" ;;
  429) echo "Rate limited — retry after delay"; sleep 1 ;;
  401) echo "Authentication failed — check TELNYX_API_KEY" ;;
  *)   echo "Error $http_code: $body" ;;
esac

Common error codes:

401
invalid API key,
403
insufficient permissions,
404
resource not found,
422
validation error (check field formats),
429
rate limited (retry with exponential backoff).

Important Notes

  • Pagination: List endpoints return paginated results. Use
    page[number]
    and
    page[size]
    query parameters to navigate pages. Check
    meta.total_pages
    in the response.

List mobile push credentials

GET /mobile_push_credentials

curl -H "Authorization: Bearer $TELNYX_API_KEY" "https://api.telnyx.com/v2/mobile_push_credentials"

Returns:

alias
(string),
certificate
(string),
created_at
(date-time),
id
(string),
private_key
(string),
project_account_json_file
(object),
record_type
(string),
type
(string),
updated_at
(date-time)

Creates a new mobile push credential

POST /mobile_push_credentials
— Required:
type
,
certificate
,
private_key
,
alias

curl \
  -X POST \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  -H "Content-Type: application/json" \
  "https://api.telnyx.com/v2/mobile_push_credentials"

Returns:

alias
(string),
certificate
(string),
created_at
(date-time),
id
(string),
private_key
(string),
project_account_json_file
(object),
record_type
(string),
type
(string),
updated_at
(date-time)

Retrieves a mobile push credential

Retrieves mobile push credential based on the given

push_credential_id

GET /mobile_push_credentials/{push_credential_id}

curl -H "Authorization: Bearer $TELNYX_API_KEY" "https://api.telnyx.com/v2/mobile_push_credentials/0ccc7b76-4df3-4bca-a05a-3da1ecc389f0"

Returns:

alias
(string),
certificate
(string),
created_at
(date-time),
id
(string),
private_key
(string),
project_account_json_file
(object),
record_type
(string),
type
(string),
updated_at
(date-time)

Deletes a mobile push credential

Deletes a mobile push credential based on the given

push_credential_id

DELETE /mobile_push_credentials/{push_credential_id}

curl \
  -X DELETE \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  "https://api.telnyx.com/v2/mobile_push_credentials/0ccc7b76-4df3-4bca-a05a-3da1ecc389f0"

List all credentials

List all On-demand Credentials.

GET /telephony_credentials

curl -H "Authorization: Bearer $TELNYX_API_KEY" "https://api.telnyx.com/v2/telephony_credentials"

Returns:

created_at
(string),
expired
(boolean),
expires_at
(string),
id
(string),
name
(string),
record_type
(string),
resource_id
(string),
sip_password
(string),
sip_username
(string),
updated_at
(string),
user_id
(string)

Create a credential

Create a credential.

POST /telephony_credentials
— Required:
connection_id

Optional:

expires_at
(string),
name
(string),
tag
(string)

curl \
  -X POST \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "connection_id": "1234567890"
}' \
  "https://api.telnyx.com/v2/telephony_credentials"

Returns:

created_at
(string),
expired
(boolean),
expires_at
(string),
id
(string),
name
(string),
record_type
(string),
resource_id
(string),
sip_password
(string),
sip_username
(string),
updated_at
(string),
user_id
(string)

Get a credential

Get the details of an existing On-demand Credential.

GET /telephony_credentials/{id}

curl -H "Authorization: Bearer $TELNYX_API_KEY" "https://api.telnyx.com/v2/telephony_credentials/550e8400-e29b-41d4-a716-446655440000"

Returns:

created_at
(string),
expired
(boolean),
expires_at
(string),
id
(string),
name
(string),
record_type
(string),
resource_id
(string),
sip_password
(string),
sip_username
(string),
updated_at
(string),
user_id
(string)

Update a credential

Update an existing credential.

PATCH /telephony_credentials/{id}

Optional:

connection_id
(string),
expires_at
(string),
name
(string),
tag
(string)

curl \
  -X PATCH \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  -H "Content-Type: application/json" \
  "https://api.telnyx.com/v2/telephony_credentials/550e8400-e29b-41d4-a716-446655440000"

Returns:

created_at
(string),
expired
(boolean),
expires_at
(string),
id
(string),
name
(string),
record_type
(string),
resource_id
(string),
sip_password
(string),
sip_username
(string),
updated_at
(string),
user_id
(string)

Delete a credential

Delete an existing credential.

DELETE /telephony_credentials/{id}

curl \
  -X DELETE \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  "https://api.telnyx.com/v2/telephony_credentials/550e8400-e29b-41d4-a716-446655440000"

Returns:

created_at
(string),
expired
(boolean),
expires_at
(string),
id
(string),
name
(string),
record_type
(string),
resource_id
(string),
sip_password
(string),
sip_username
(string),
updated_at
(string),
user_id
(string)