Loading...
Loading...
Compare original and translation side by side
npm install telnyxnpm install telnyximport Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});clientimport Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // 这是默认值,可省略
});clienttry {
const availablePhoneNumbers = await client.availablePhoneNumbers.list();
} catch (err) {
if (err instanceof Telnyx.APIConnectionError) {
console.error('Network error — check connectivity and retry');
} else if (err instanceof Telnyx.RateLimitError) {
const retryAfter = err.headers?.['retry-after'] || 1;
await new Promise(r => setTimeout(r, retryAfter * 1000));
} else if (err instanceof Telnyx.APIError) {
console.error(`API error ${err.status}: ${err.message}`);
if (err.status === 422) {
console.error('Validation error — check required fields and formats');
}
}
}401403404422429try {
const availablePhoneNumbers = await client.availablePhoneNumbers.list();
} catch (err) {
if (err instanceof Telnyx.APIConnectionError) {
console.error('网络错误 — 检查连接性并重试');
} else if (err instanceof Telnyx.RateLimitError) {
const retryAfter = err.headers?.['retry-after'] || 1;
await new Promise(r => setTimeout(r, retryAfter * 1000));
} else if (err instanceof Telnyx.APIError) {
console.error(`API错误 ${err.status}: ${err.message}`);
if (err.status === 422) {
console.error('验证错误 — 检查必填字段和格式');
}
}
}401403404422429+13125550001+for await (const item of result) { ... }+13125550001+for await (const item of result) { ... }## Additional Operations## 额外操作client.availablePhoneNumbers.list()GET /available_phone_numbers| Parameter | Type | Required | Description |
|---|---|---|---|
| object | No | Consolidated filter parameter (deepObject style). |
const availablePhoneNumbers = await client.availablePhoneNumbers.list();
console.log(availablePhoneNumbers.data);availablePhoneNumbers.dataavailablePhoneNumbers.metaphoneNumberrecordTypequickshipreservablebestEffortcostInformationclient.availablePhoneNumbers.list()GET /available_phone_numbers| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| object | 否 | 合并的过滤参数(deepObject格式)。 |
const availablePhoneNumbers = await client.availablePhoneNumbers.list();
console.log(availablePhoneNumbers.data);availablePhoneNumbers.dataavailablePhoneNumbers.metaphoneNumberrecordTypequickshipreservablebestEffortcostInformationclient.numberOrders.create()POST /number_orders| Parameter | Type | Required | Description |
|---|---|---|---|
| array[object] | Yes | |
| string (UUID) | No | Identifies the connection associated with this phone number. |
| string (UUID) | No | Identifies the messaging profile associated with the phone n... |
| string (UUID) | No | Identifies the billing group associated with the phone numbe... |
| ... | +1 optional params in references/api-details.md |
const numberOrder = await client.numberOrders.create({
phoneNumbers: [{"phone_number": "+18005550101"}],
});
console.log(numberOrder.data);numberOrder.data.idnumberOrder.data.statusnumberOrder.data.phoneNumbersCountnumberOrder.data.requirementsMetnumberOrder.data.messagingProfileIdnumberOrder.data.connectionIdclient.numberOrders.create()POST /number_orders| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| array[object] | 是 | |
| string (UUID) | 否 | 标识与此电话号码关联的连接。 |
| string (UUID) | 否 | 标识与此电话号码关联的消息配置文件。 |
| string (UUID) | 否 | 标识与此电话号码关联的计费组。 |
| ... | +1个可选参数请查看references/api-details.md |
const numberOrder = await client.numberOrders.create({
phoneNumbers: [{"phone_number": "+18005550101"}],
});
console.log(numberOrder.data);numberOrder.data.idnumberOrder.data.statusnumberOrder.data.phoneNumbersCountnumberOrder.data.requirementsMetnumberOrder.data.messagingProfileIdnumberOrder.data.connectionIdclient.numberOrders.retrieve()GET /number_orders/{number_order_id}| Parameter | Type | Required | Description |
|---|---|---|---|
| string (UUID) | Yes | The number order ID. |
const numberOrder = await client.numberOrders.retrieve('550e8400-e29b-41d4-a716-446655440000');
console.log(numberOrder.data);numberOrder.data.idnumberOrder.data.statusnumberOrder.data.requirementsMetnumberOrder.data.phoneNumbersCountnumberOrder.data.phoneNumbersnumberOrder.data.connectionIdclient.numberOrders.retrieve()GET /number_orders/{number_order_id}| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| string (UUID) | 是 | 号码订单ID。 |
const numberOrder = await client.numberOrders.retrieve('550e8400-e29b-41d4-a716-446655440000');
console.log(numberOrder.data);numberOrder.data.idnumberOrder.data.statusnumberOrder.data.requirementsMetnumberOrder.data.phoneNumbersCountnumberOrder.data.phoneNumbersnumberOrder.data.connectionIdclient.numberReservations.create()POST /number_reservations| Parameter | Type | Required | Description |
|---|---|---|---|
| array[object] | Yes | |
| enum (pending, success, failure) | No | The status of the entire reservation. |
| string (UUID) | No | |
| string | No | |
| ... | +3 optional params in references/api-details.md |
const numberReservation = await client.numberReservations.create({
phoneNumbers: [{"phone_number": "+18005550101"}],
});
console.log(numberReservation.data);numberReservation.data.idnumberReservation.data.statusnumberReservation.data.createdAtnumberReservation.data.updatedAtnumberReservation.data.customerReferencenumberReservation.data.errorsclient.numberReservations.create()POST /number_reservations| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| array[object] | 是 | |
| enum (pending, success, failure) | 否 | 整个预留的状态。 |
| string (UUID) | 否 | |
| string | 否 | |
| ... | +3个可选参数请查看references/api-details.md |
const numberReservation = await client.numberReservations.create({
phoneNumbers: [{"phone_number": "+18005550101"}],
});
console.log(numberReservation.data);numberReservation.data.idnumberReservation.data.statusnumberReservation.data.createdAtnumberReservation.data.updatedAtnumberReservation.data.customerReferencenumberReservation.data.errorsclient.numberReservations.retrieve()GET /number_reservations/{number_reservation_id}| Parameter | Type | Required | Description |
|---|---|---|---|
| string (UUID) | Yes | The number reservation ID. |
const numberReservation = await client.numberReservations.retrieve('550e8400-e29b-41d4-a716-446655440000');
console.log(numberReservation.data);numberReservation.data.idnumberReservation.data.statusnumberReservation.data.createdAtnumberReservation.data.updatedAtnumberReservation.data.customerReferencenumberReservation.data.errorsclient.numberReservations.retrieve()GET /number_reservations/{number_reservation_id}| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| string (UUID) | 是 | 号码预留ID。 |
const numberReservation = await client.numberReservations.retrieve('550e8400-e29b-41d4-a716-446655440000');
console.log(numberReservation.data);numberReservation.data.idnumberReservation.data.statusnumberReservation.data.createdAtnumberReservation.data.updatedAtnumberReservation.data.customerReferencenumberReservation.data.errorsclient.advancedOrders.list()GET /advanced_ordersconst advancedOrders = await client.advancedOrders.list();
console.log(advancedOrders.data);advancedOrders.dataidstatusareaCodecommentscountryCodecustomerReferenceclient.advancedOrders.list()GET /advanced_ordersconst advancedOrders = await client.advancedOrders.list();
console.log(advancedOrders.data);advancedOrders.dataidstatusareaCodecommentscountryCodecustomerReferenceclient.advancedOrders.create()POST /advanced_orders| Parameter | Type | Required | Description |
|---|---|---|---|
| enum (local, mobile, toll_free, shared_cost, national, ...) | No | |
| string (UUID) | No | The ID of the requirement group to associate with this advan... |
| string (ISO 3166-1 alpha-2) | No | |
| ... | +5 optional params in references/api-details.md |
const advancedOrder = await client.advancedOrders.create();
console.log(advancedOrder.id);advancedOrder.idadvancedOrder.statusadvancedOrder.areaCodeadvancedOrder.commentsadvancedOrder.countryCodeadvancedOrder.customerReferenceclient.advancedOrders.create()POST /advanced_orders| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| enum (local, mobile, toll_free, shared_cost, national, ...) | 否 | |
| string (UUID) | 否 | 标识与此高级订单关联的要求组ID。 |
| string (ISO 3166-1 alpha-2) | 否 | |
| ... | +5个可选参数请查看references/api-details.md |
const advancedOrder = await client.advancedOrders.create();
console.log(advancedOrder.id);advancedOrder.idadvancedOrder.statusadvancedOrder.areaCodeadvancedOrder.commentsadvancedOrder.countryCodeadvancedOrder.customerReferenceclient.advancedOrders.updateRequirementGroup()PATCH /advanced_orders/{advanced-order-id}/requirement_group| Parameter | Type | Required | Description |
|---|---|---|---|
| string (UUID) | Yes | |
| enum (local, mobile, toll_free, shared_cost, national, ...) | No | |
| string (UUID) | No | The ID of the requirement group to associate with this advan... |
| string (ISO 3166-1 alpha-2) | No | |
| ... | +5 optional params in references/api-details.md |
const response = await client.advancedOrders.updateRequirementGroup(
'182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
);
console.log(response.id);response.idresponse.statusresponse.areaCoderesponse.commentsresponse.countryCoderesponse.customerReferenceclient.advancedOrders.updateRequirementGroup()PATCH /advanced_orders/{advanced-order-id}/requirement_group| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| string (UUID) | 是 | |
| enum (local, mobile, toll_free, shared_cost, national, ...) | 否 | |
| string (UUID) | 否 | 标识与此高级订单关联的要求组ID。 |
| string (ISO 3166-1 alpha-2) | 否 | |
| ... | +5个可选参数请查看references/api-details.md |
const response = await client.advancedOrders.updateRequirementGroup(
'182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
);
console.log(response.id);response.idresponse.statusresponse.areaCoderesponse.commentsresponse.countryCoderesponse.customerReferenceclient.advancedOrders.retrieve()GET /advanced_orders/{order_id}| Parameter | Type | Required | Description |
|---|---|---|---|
| string (UUID) | Yes |
const advancedOrder = await client.advancedOrders.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');
console.log(advancedOrder.id);advancedOrder.idadvancedOrder.statusadvancedOrder.areaCodeadvancedOrder.commentsadvancedOrder.countryCodeadvancedOrder.customerReferenceclient.advancedOrders.retrieve()GET /advanced_orders/{order_id}| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| string (UUID) | 是 |
const advancedOrder = await client.advancedOrders.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');
console.log(advancedOrder.id);advancedOrder.idadvancedOrder.statusadvancedOrder.areaCodeadvancedOrder.commentsadvancedOrder.countryCodeadvancedOrder.customerReferenceclient.availablePhoneNumberBlocks.list()GET /available_phone_number_blocks| Parameter | Type | Required | Description |
|---|---|---|---|
| object | No | Consolidated filter parameter (deepObject style). |
const availablePhoneNumberBlocks = await client.availablePhoneNumberBlocks.list();
console.log(availablePhoneNumberBlocks.data);availablePhoneNumberBlocks.dataavailablePhoneNumberBlocks.metaphoneNumbercostInformationfeaturesrangerecordTyperegionInformationclient.availablePhoneNumberBlocks.list()GET /available_phone_number_blocks| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| object | 否 | 合并的过滤参数(deepObject格式)。 |
const availablePhoneNumberBlocks = await client.availablePhoneNumberBlocks.list();
console.log(availablePhoneNumberBlocks.data);availablePhoneNumberBlocks.dataavailablePhoneNumberBlocks.metaphoneNumbercostInformationfeaturesrangerecordTyperegionInformationclient.comments.list()GET /comments| Parameter | Type | Required | Description |
|---|---|---|---|
| object | No | Consolidated filter parameter (deepObject style). |
const comments = await client.comments.list();
console.log(comments.data);comments.datacomments.metaidbodycreatedAtupdatedAtcommentRecordIdcommentRecordTypeclient.comments.list()GET /comments| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| object | 否 | 合并的过滤参数(deepObject格式)。 |
const comments = await client.comments.list();
console.log(comments.data);comments.datacomments.metaidbodycreatedAtupdatedAtcommentRecordIdcommentRecordType| Operation | SDK method | Endpoint | Use when | Required params |
|---|---|---|---|---|
| Create a comment | | | Create or provision an additional resource when the core tasks do not cover this flow. | None |
| Retrieve a comment | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| Mark a comment as read | | | Modify an existing resource without recreating it. | |
| Get country coverage | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Get coverage for a specific country | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| List customer service records | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Create a customer service record | | | Create or provision an additional resource when the core tasks do not cover this flow. | None |
| Verify CSR phone number coverage | | | Create or provision an additional resource when the core tasks do not cover this flow. | None |
| Get a customer service record | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| List inexplicit number orders | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Create an inexplicit number order | | | Create or provision an additional resource when the core tasks do not cover this flow. | |
| Retrieve an inexplicit number order | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| Create an inventory coverage request | | | Inspect available resources or choose an existing resource before mutating it. | None |
| List mobile network operators | | | Inspect available resources or choose an existing resource before mutating it. | None |
| List network coverage locations | | | Inspect available resources or choose an existing resource before mutating it. | None |
| List number block orders | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Create a number block order | | | Create or provision an additional resource when the core tasks do not cover this flow. | |
| Retrieve a number block order | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| Retrieve a list of phone numbers associated to orders | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Retrieve a single phone number within a number order. | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| Update requirements for a single phone number within a number order. | | | Modify an existing resource without recreating it. | |
| List number orders | | | Create or inspect provisioning orders for number purchases. | None |
| Update a number order | | | Modify an existing resource without recreating it. | |
| List number reservations | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Extend a number reservation | | | Trigger a follow-up action in an existing workflow rather than creating a new top-level resource. | |
| Retrieve the features for a list of numbers | | | Create or provision an additional resource when the core tasks do not cover this flow. | |
| Lists the phone number blocks jobs | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Deletes all numbers associated with a phone number block | | | Create or provision an additional resource when the core tasks do not cover this flow. | |
| Retrieves a phone number blocks job | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| List sub number orders | | | Inspect available resources or choose an existing resource before mutating it. | None |
| Retrieve a sub number order | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| Update a sub number order's requirements | | | Modify an existing resource without recreating it. | |
| Cancel a sub number order | | | Modify an existing resource without recreating it. | |
| Create a sub number orders report | | | Create or provision an additional resource when the core tasks do not cover this flow. | None |
| Retrieve a sub number orders report | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| Download a sub number orders report | | | Fetch the current state before updating, deleting, or making control-flow decisions. | |
| 操作 | SDK方法 | 端点 | 使用场景 | 必填参数 |
|---|---|---|---|---|
| 创建评论 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | 无 |
| 获取评论 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 标记评论为已读 | | | 无需重新创建即可修改现有资源。 | |
| 获取国家覆盖范围 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 获取特定国家的覆盖范围 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 列出客户服务记录 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 创建客户服务记录 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | 无 |
| 验证CSR电话号码覆盖范围 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | 无 |
| 获取客户服务记录 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 列出非明确号码订单 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 创建非明确号码订单 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | |
| 获取非明确号码订单 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 创建库存覆盖范围请求 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 列出移动网络运营商 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 列出网络覆盖位置 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 列出号码块订单 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 创建号码块订单 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | |
| 获取号码块订单 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 获取与订单关联的电话号码列表 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 获取号码订单中的单个电话号码 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 更新号码订单中单个电话号码的要求 | | | 无需重新创建即可修改现有资源。 | |
| 列出号码订单 | | | 创建或检查号码购买的配置订单。 | 无 |
| 更新号码订单 | | | 无需重新创建即可修改现有资源。 | |
| 列出号码预留 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 延长号码预留期限 | | | 在现有工作流中触发后续操作,而非创建新的顶级资源。 | |
| 获取号码列表的功能 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | |
| 列出电话号码块任务 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 删除与电话号码块关联的所有号码 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | |
| 获取电话号码块任务 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 列出子号码订单 | | | 在修改资源前检查可用资源或选择现有资源。 | 无 |
| 获取子号码订单 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 更新子号码订单的要求 | | | 无需重新创建即可修改现有资源。 | |
| 取消子号码订单 | | | 无需重新创建即可修改现有资源。 | |
| 创建子号码订单报告 | | | 当核心任务未涵盖此流程时,创建或配置额外资源。 | 无 |
| 获取子号码订单报告 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| 下载子号码订单报告 | | | 在更新、删除或做出控制流决策前获取当前状态。 | |
| Event | | Description |
|---|---|---|
| | Number Order Status Update |
| 事件 | | 描述 |
|---|---|---|
| | 号码订单状态更新 |