skills/team-telnyx/telnyx-skills/telnyx-webrtc-curl

telnyx-webrtc-curl

SKILL.md

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

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 '{
  "tag": "some_tag",
  "connection_id": "1234567890",
  "expires_at": "2018-02-02T22:25:27.521Z"
}' \
  "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/{id}"

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" \
  -d '{
  "tag": "some_tag",
  "connection_id": "987654321",
  "expires_at": "2018-02-02T22:25:27.521Z"
}' \
  "https://api.telnyx.com/v2/telephony_credentials/{id}"

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/{id}"

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)

Weekly Installs
3
GitHub Stars
141
First Seen
10 days ago
Installed on
opencode3
gemini-cli3
antigravity3
github-copilot3
amp3
cline3