SuperAPI AI 工具集

telnyx-account-reports-go

数据与分析

查看项目

更新于 10-16 05:09

技能介绍

用途

telnyx-account-reports-go 面向使用 Go 语言的开发者,帮助其在 Telnyx 平台上生成和获取账户用量报告,用于计费核对、用量分析与对账。该技能以 Go SDK 代码示例的形式给出,涵盖从客户端初始化到各类报告接口调用的完整流程。

主要能力

技能覆盖的报告接口包括:

  • 通话事件列表:GET /call_events,按过滤器参数筛选通话事件,事件按 occurred_at 排序;若未提供 leg_id 或 application_session_id 过滤条件,则仅筛选最近 24 小时内的事件。返回字段含 call_leg_id、call_session_id、event_timestamp、metadata、name、record_type、type 等。
  • 账本账单组报告:POST /ledger_billing_group_reports 创建,可选 month、year;GET /ledger_billing_group_reports/{id} 获取。返回字段含 created_at、id、organization_id、record_type、report_url、status(pending、complete、failed、deleted)、updated_at。
  • MDR 详细报告请求(消息):GET /legacy/reporting/batch_detail_records/messaging 列出全部请求;POST 创建(必填 start_time、end_time,可选 connections、directions、filters、include_message_body、managed_accounts、profiles、record_types、report_name、select_all_managed_accounts、timezone);GET /{id} 获取;DELETE /{id} 删除。
  • CDR 报告请求(语音):GET /legacy/reporting/batch_detail_records/voice 列出全部;POST 创建(必填 start_time、end_time,可选 call_types、connections、fields、filters、include_all_metadata、managed_accounts、record_types、report_name、select_all_managed_accounts、source、timezone);GET /{id} 获取;DELETE /{id} 删除;GET /voice/fields 获取 CDR 报告可用字段,返回 Billing、Interaction Data、Number Information、Telephony Data 等分组。
  • MDR 用量报告:GET /legacy/reporting/usage_reports/messaging 列出历史请求;POST 创建(含 aggregation_type);GET /{id} 获取;DELETE /{id} 删除。
  • 号码查询用量报告:GET /legacy/reporting/usage_reports/number_lookup 分页列出;POST 提交;GET /{id} 获取;DELETE /{id} 删除。
  • CDR 用量报告:GET /legacy/reporting/usage_reports/voice 列出历史请求;POST 创建(含 start_time、end_time)。

使用方式

安装命令:

go get github.com/team-telnyx/telnyx-go

初始化示例:

import ( "context" "fmt" "os"

"github.com/team-telnyx/telnyx-go" "github.com/team-telnyx/telnyx-go/option" )

client := telnyx.NewClient( option.WithAPIKey(os.Getenv("TELNYX_API_KEY")), )

文档中的示例均假定 client 已按上述方式初始化。分页场景建议使用 ListAutoPaging() 自动迭代,例如 iter := client.Resource.ListAutoPaging(ctx, params); for iter.Next() { item := iter.Current() }。

错误处理

所有 API 调用可能因网络错误、限流(429)、校验错误(422)或认证错误(401)而失败。文档建议在生产代码中始终处理错误,示例使用 errors.As 判断是否为 *telnyx.Error 并读取 StatusCode。常见错误码:401 无效 API key、403 权限不足、404 资源未找到、422 校验错误(检查字段格式)、429 限流(使用指数退避重试)。

适用场景

适合需要在 Go 应用中集成 Telnyx 账户用量与详细记录报告的开发者,用于计费、分析与对账流程。

限制

关于收费、价格、报告生成时延或数据保留策略等具体信息,资料中暂未提供。