SuperAPI AI 工具集

telnyx-numbers-compliance-curl

部署与运维

查看项目

更新于 10-16 05:36

技能介绍

用途

本技能面向 Telnyx 电话号码的监管合规管理,提供 REST API 的 curl 调用示例。它覆盖监管要求、要求组、号码捆绑包、支持文档以及已验证号码等合规相关资源,帮助开发者通过命令行完成号码合规流程的查询与操作。

主要能力

捆绑包(Bundles)

  • 获取所有允许的捆绑包:GET /bundle_pricing/billing_bundles
  • 按 ID 获取单个捆绑包:GET /bundle_pricing/billing_bundles/{bundle_id}
  • 获取用户捆绑包分页列表:GET /bundle_pricing/user_bundles
  • 批量创建用户捆绑包:POST /bundle_pricing/user_bundles/bulk(可选 idempotency_key、items)
  • 获取未使用的用户捆绑包:GET /bundle_pricing/user_bundles/unused
  • 按 ID 获取用户捆绑包:GET /bundle_pricing/user_bundles/{user_bundle_id}
  • 停用用户捆绑包:DELETE /bundle_pricing/user_bundles/{user_bundle_id}
  • 获取用户捆绑包资源:GET /bundle_pricing/user_bundles/{user_bundle_id}/resources

文档(Documents)

  • 列出所有文档链接:GET /document_links
  • 列出所有文档(支持过滤、排序):GET /documents
  • 上传文档:POST /documents(可选 customer_reference、file、filename、url)。上传的文件必须在 30 分钟内关联到服务,否则会被自动删除。
  • 检索文档:GET /documents/{id}
  • 更新文档:PATCH /documents/{id}
  • 删除文档:DELETE /documents/{id}。仅当文档未关联服务时可删除;若已关联,需先解除关联。
  • 下载文档:GET /documents/{id}/download
  • 生成临时下载链接:GET /documents/{id}/download_link,返回无需认证即可直接下载的预签名 URL。

监管要求与要求组(Regulatory Requirements & Requirement Groups)

  • 为号码订单电话号码更新要求组:POST /number_order_phone_numbers/{id}/requirement_group(必填 requirement_group_id)
  • 检索一组电话号码的监管要求:GET /phone_numbers_regulatory_requirements
  • 检索监管要求:GET /regulatory_requirements
  • 列出要求组:GET /requirement_groups
  • 创建要求组:POST /requirement_groups(必填 country_code、phone_number_type、action;可选 customer_reference、regulatory_requirements)
  • 按 ID 获取单个要求组:GET /requirement_groups/{id}
  • 更新要求组中的要求值:PATCH /requirement_groups/{id}
  • 按 ID 删除要求组:DELETE /requirement_groups/{id}
  • 提交要求组审批:POST /requirement_groups/{id}/submit_for_approval
  • 列出所有要求类型:GET /requirement_types
  • 按 ID 检索要求类型:GET /requirement_types/{id}
  • 列出所有要求(支持过滤、排序、分页):GET /requirements
  • 检索文档要求记录:GET /requirements/{id}
  • 为子号码订单更新要求组:POST /sub_number_orders/{id}/requirement_group(必填 requirement_group_id)

使用方式

安装

curl 在 macOS、Linux 和 Windows 10+ 上已预装。

设置

export TELNYX_API_KEY="YOUR_API_KEY_HERE"

所有示例均使用 $TELNYX_API_KEY 进行认证。

错误处理

所有 API 调用都可能因网络错误、速率限制(429)、验证错误(422)或认证错误(401)而失败。生产代码中应始终处理错误。示例:

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

常见错误码:401 无效 API 密钥,403 权限不足,404 资源未找到,422 验证错误(检查字段格式),429 速率限制(使用指数退避重试)。

重要说明

  • 电话号码必须为 E.164 格式(例如 +13125550001),包含 + 前缀和国家代码,不能有空格、短横线或括号。
  • 分页:列表端点返回分页结果,使用 page[number] 和 page[size] 查询参数翻页,检查响应中的 meta.total_pages。

适用场景

适用于需要通过命令行或脚本方式管理 Telnyx 电话号码合规事务的开发者,例如:查询可用捆绑包、上传并关联合规文档、创建并提交监管要求组审批、为号码订单指定要求组等。

限制

  • 文档上传后必须在 30 分钟内关联到服务,否则自动删除。
  • 文档仅在未关联服务时可删除,已关联需先解除关联。
  • 电话号码必须使用 E.164 格式。
  • 列表端点分页返回,需自行处理翻页。
  • 需有效的 TELNYX_API_KEY 进行认证。
  • 关于收费、价格、平台支持范围等具体信息,资料中暂未提供。