SKILL.md
<!-- 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 $TELNYXAPIKEY 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]andpage[size]query parameters to navigate pages. Checkmeta.total_pagesin the response.
List mobile push credentials
GET /mobilepushcredentials
curl -H "Authorization: Bearer $TELNYX_API_KEY" "https://api.telnyx.com/v2/mobile_push_credentials"
Returns: alias (string), certificate (string), createdat (date-time), id (string), privatekey (string), projectaccountjsonfile (object), recordtype (string), type (string), updated_at (date-time)
Creates a new mobile push credential
POST /mobilepushcredentials — 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), createdat (date-time), id (string), privatekey (string), projectaccountjsonfile (object), recordtype (string), type (string), updated_at (date-time)
Retrieves a mobile push credential
Retrieves mobile push credential based on the given pushcredentialid
GET /mobilepushcredentials/{pushcredentialid}
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), createdat (date-time), id (string), privatekey (string), projectaccountjsonfile (object), recordtype (string), type (string), updated_at (date-time)
Deletes a mobile push credential
Deletes a mobile push credential based on the given pushcredentialid
DELETE /mobilepushcredentials/{pushcredentialid}
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: createdat (string), expired (boolean), expiresat (string), id (string), name (string), recordtype (string), resourceid (string), sippassword (string), sipusername (string), updatedat (string), userid (string)
Create a credential
Create a credential.
POST /telephonycredentials — Required: connectionid
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: createdat (string), expired (boolean), expiresat (string), id (string), name (string), recordtype (string), resourceid (string), sippassword (string), sipusername (string), updatedat (string), userid (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: createdat (string), expired (boolean), expiresat (string), id (string), name (string), recordtype (string), resourceid (string), sippassword (string), sipusername (string), updatedat (string), userid (string)
Update a credential
Update an existing credential.
PATCH /telephony_credentials/{id}
Optional: connectionid (string), expiresat (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: createdat (string), expired (boolean), expiresat (string), id (string), name (string), recordtype (string), resourceid (string), sippassword (string), sipusername (string), updatedat (string), userid (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: createdat (string), expired (boolean), expiresat (string), id (string), name (string), recordtype (string), resourceid (string), sippassword (string), sipusername (string), updatedat (string), userid (string)