telnyx-account-reports-ruby

📁 team-telnyx/telnyx-ext-agent-skills 📅 3 days ago
3
总安装量
3
周安装量
#56947
全站排名
安装命令
npx skills add https://github.com/team-telnyx/telnyx-ext-agent-skills --skill telnyx-account-reports-ruby

Agent 安装分布

opencode 3
antigravity 3
claude-code 3
github-copilot 3
windsurf 3
codex 3

Skill 文档

Telnyx Account Reports – Ruby

Installation

gem install telnyx

Setup

require "telnyx"

client = Telnyx::Client.new(
  api_key: ENV["TELNYX_API_KEY"], # This is the default and can be omitted
)

All examples below assume client is already initialized as shown above.

Get all MDR detailed report requests

Retrieves all MDR detailed report requests for the authenticated user

GET /legacy_reporting/batch_detail_records/messaging

messagings = client.legacy.reporting.batch_detail_records.messaging.list

puts(messagings)

Create a new MDR detailed report request

Creates a new MDR detailed report request with the specified filters

POST /legacy_reporting/batch_detail_records/messaging — Required: start_time, end_time

Optional: connections (array[integer]), directions (array[integer]), filters (array[object]), include_message_body (boolean), managed_accounts (array[string]), profiles (array[string]), record_types (array[integer]), report_name (string), select_all_managed_accounts (boolean), timezone (string)

messaging = client.legacy.reporting.batch_detail_records.messaging.create(
  end_time: "2024-02-12T23:59:59Z",
  start_time: "2024-02-01T00:00:00Z"
)

puts(messaging)

Get a specific MDR detailed report request

Retrieves a specific MDR detailed report request by ID

GET /legacy_reporting/batch_detail_records/messaging/{id}

messaging = client.legacy.reporting.batch_detail_records.messaging.retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(messaging)

Delete a MDR detailed report request

Deletes a specific MDR detailed report request by ID

DELETE /legacy_reporting/batch_detail_records/messaging/{id}

messaging = client.legacy.reporting.batch_detail_records.messaging.delete("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(messaging)

Get all CDR report requests

Retrieves all CDR report requests for the authenticated user

GET /legacy_reporting/batch_detail_records/voice

voices = client.legacy.reporting.batch_detail_records.voice.list

puts(voices)

Create a new CDR report request

Creates a new CDR report request with the specified filters

POST /legacy_reporting/batch_detail_records/voice — Required: start_time, end_time

Optional: call_types (array[integer]), connections (array[integer]), fields (array[string]), filters (array[object]), include_all_metadata (boolean), managed_accounts (array[string]), record_types (array[integer]), report_name (string), select_all_managed_accounts (boolean), source (string), timezone (string)

voice = client.legacy.reporting.batch_detail_records.voice.create(
  end_time: "2024-02-12T23:59:59Z",
  start_time: "2024-02-01T00:00:00Z"
)

puts(voice)

Get a specific CDR report request

Retrieves a specific CDR report request by ID

GET /legacy_reporting/batch_detail_records/voice/{id}

voice = client.legacy.reporting.batch_detail_records.voice.retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(voice)

Delete a CDR report request

Deletes a specific CDR report request by ID

DELETE /legacy_reporting/batch_detail_records/voice/{id}

voice = client.legacy.reporting.batch_detail_records.voice.delete("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(voice)

Get available CDR report fields

Retrieves all available fields that can be used in CDR reports

GET /legacy_reporting/batch_detail_records/voice/fields

response = client.legacy.reporting.batch_detail_records.voice.retrieve_fields

puts(response)

List MDR usage reports

Fetch all previous requests for MDR usage reports.

GET /legacy_reporting/usage_reports/messaging

page = client.legacy.reporting.usage_reports.messaging.list

puts(page)

Create a new legacy usage V2 MDR report request

Creates a new legacy usage V2 MDR report request with the specified filters

POST /legacy_reporting/usage_reports/messaging

messaging = client.legacy.reporting.usage_reports.messaging.create(aggregation_type: 0)

puts(messaging)

Get an MDR usage report

Fetch single MDR usage report by id.

GET /legacy_reporting/usage_reports/messaging/{id}

messaging = client.legacy.reporting.usage_reports.messaging.retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(messaging)

Delete a V2 legacy usage MDR report request

Deletes a specific V2 legacy usage MDR report request by ID

DELETE /legacy_reporting/usage_reports/messaging/{id}

messaging = client.legacy.reporting.usage_reports.messaging.delete("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(messaging)

List telco data usage reports

Retrieve a paginated list of telco data usage reports

GET /legacy_reporting/usage_reports/number_lookup

number_lookups = client.legacy.reporting.usage_reports.number_lookup.list

puts(number_lookups)

Submit telco data usage report

Submit a new telco data usage report

POST /legacy_reporting/usage_reports/number_lookup

number_lookup = client.legacy.reporting.usage_reports.number_lookup.create

puts(number_lookup)

Get telco data usage report by ID

Retrieve a specific telco data usage report by its ID

GET /legacy_reporting/usage_reports/number_lookup/{id}

number_lookup = client.legacy.reporting.usage_reports.number_lookup.retrieve("id")

puts(number_lookup)

Delete telco data usage report

Delete a specific telco data usage report by its ID

DELETE /legacy_reporting/usage_reports/number_lookup/{id}

result = client.legacy.reporting.usage_reports.number_lookup.delete("id")

puts(result)

Get speech to text usage report

Generate and fetch speech to text usage report synchronously.

GET /legacy_reporting/usage_reports/speech_to_text

response = client.legacy.reporting.usage_reports.retrieve_speech_to_text

puts(response)

List CDR usage reports

Fetch all previous requests for cdr usage reports.

GET /legacy_reporting/usage_reports/voice

page = client.legacy.reporting.usage_reports.voice.list

puts(page)

Create a new legacy usage V2 CDR report request

Creates a new legacy usage V2 CDR report request with the specified filters

POST /legacy_reporting/usage_reports/voice

voice = client.legacy.reporting.usage_reports.voice.create(
  end_time: "2024-02-01T00:00:00Z",
  start_time: "2024-02-01T00:00:00Z"
)

puts(voice)

Get a CDR usage report

Fetch single cdr usage report by id.

GET /legacy_reporting/usage_reports/voice/{id}

voice = client.legacy.reporting.usage_reports.voice.retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(voice)

Delete a V2 legacy usage CDR report request

Deletes a specific V2 legacy usage CDR report request by ID

DELETE /legacy_reporting/usage_reports/voice/{id}

voice = client.legacy.reporting.usage_reports.voice.delete("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(voice)

Fetch all Messaging usage reports

Fetch all messaging usage reports.

GET /reports/mdr_usage_reports

page = client.reports.mdr_usage_reports.list

puts(page)

Create MDR Usage Report

Submit request for new new messaging usage report.

POST /reports/mdr_usage_reports

mdr_usage_report = client.reports.mdr_usage_reports.create(
  aggregation_type: :NO_AGGREGATION,
  end_date: "2020-07-01T00:00:00-06:00",
  start_date: "2020-07-01T00:00:00-06:00"
)

puts(mdr_usage_report)

Retrieve messaging report

Fetch a single messaging usage report by id

GET /reports/mdr_usage_reports/{id}

mdr_usage_report = client.reports.mdr_usage_reports.retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(mdr_usage_report)

Delete MDR Usage Report

Delete messaging usage report by id

DELETE /reports/mdr_usage_reports/{id}

mdr_usage_report = client.reports.mdr_usage_reports.delete("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")

puts(mdr_usage_report)

Generate and fetch MDR Usage Report

Generate and fetch messaging usage report synchronously.

GET /reports/mdr_usage_reports/sync

response = client.reports.mdr_usage_reports.fetch_sync(aggregation_type: :PROFILE)

puts(response)

Generates and fetches CDR Usage Reports

Generate and fetch voice usage report synchronously.

GET /reports/cdr_usage_reports/sync

response = client.reports.cdr_usage_reports.fetch_sync(
  aggregation_type: :NO_AGGREGATION,
  product_breakdown: :NO_BREAKDOWN
)

puts(response)

Get Telnyx product usage data (BETA)

Get Telnyx usage data by product, broken out by the specified dimensions

GET /usage_reports

page = client.usage_reports.list(dimensions: ["string"], metrics: ["string"], product: "product")

puts(page)

Get Usage Reports query options (BETA)

Get the Usage Reports options for querying usage, including the products available and their respective metrics and dimensions

GET /usage_reports/options

response = client.usage_reports.get_options

puts(response)