reporting

Query and analyze Webex Calling CDR data, report templates, and recordings via wxcli.

3|Updated Mar 20, 2026
One-click install
npx skills add https://github.com/achobgood/wxops --skill reporting-achobgood
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: reporting
Source: https://github.com/achobgood/wxops/tree/main/.claude/skills/reporting
Command: npx skills add https://github.com/achobgood/wxops --skill reporting-achobgood

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Answering questions about a Webex Calling environment — call volumes, missed calls, hold times, trunk usage, spam blocking, recording compliance — requires navigating a complex CDR API with a 12-hour query window, 1-request-per-minute rate limit, 55+ space-separated field names, and a multi-leg call model that inflates naive counts. This Skill encodes the correct query patterns, scope requirements, and analysis recipes so those questions get accurate answers instead of hallucinated or miscounted results. ## Core Features & Use Cases - CDR querying with 75 ready-made recipes: Pre-built wxcli + Python snippets across 11 categories (volume, outcomes, hold time, agent performance, trunks, PSTN billing, devices, spam, recording compliance, call tracing, compound queries), plus a composition guide for questions no recipe covers. - Async report generation: Discover report templates, create Call Queue Stats / Auto Attendant / Media Quality reports, poll for completion, and download CSV output via the Reports API. - Recording management: List, download, and bulk-export converged (call) recordings, and administer meeting recordings with recycle-bin lifecycle — with explicit guardrails against confusing the two near-identical CLI groups. - Session caching: Pull CDR data once into /tmp/cdr-session.json and run unlimited follow-up analyses in seconds without re-hitting the rate-limited API. - Use Case: A manager asks "What was our answer rate by location last week, and which agents missed the most calls?" The Skill plans a 14-window CDR pull, caches the merged data, then runs the answer-rate and missed-calls recipes to produce per-location and per-user tables. ## Quick Start Ask the agent to analyze your Webex Calling environment, for example: "Show me missed calls and average hold time by location for the past 48 hours using the reporting skill."

Frequently Asked Questions about reporting

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I query Webex Calling CDR data from the command line?

Use wxcli cdr list with --start-time and --end-time ISO 8601 timestamps and -o json output. Each request covers a maximum 12-hour window, so longer ranges require sequential pulls merged with Python before analysis.

How do I analyze call detail records to answer questions like missed calls or hold time?

Pipe the CDR JSON output into python3.11 with filters on fields like Answer indicator, Hold Duration, and Ring duration. The skill provides 75 ready-made recipes across 11 categories plus composition rules for questions no recipe covers.

What OAuth scopes are required for Webex Calling reporting APIs?

CDR requires spark-admin:calling_cdr_read plus the Detailed Call History role in Control Hub. Report templates need analytics:read_all and a Pro Pack license, while converged recordings need spark-admin:telephony_config_read.

What is the difference between converged-recordings and admin-recordings in wxcli?

converged-recordings manages Webex Calling phone call recordings via /v1/convergedRecordings, while admin-recordings manages Webex Meetings recordings via /v1/recordings endpoints. They share command names but operate on different data, so verify which recording type you need before running delete or purge operations.

Why does my CDR query take so long or return incomplete data?

The CDR Feed API enforces 1 request per minute and a 12-hour maximum window, so a 7-day pull needs 14 sequential requests taking about 14 minutes. Also avoid passing --limit, which truncates results to a single request instead of auto-paginating the full window.

When should I use the Reports API instead of the CDR Feed?

Use the Reports API for windows longer than 7 days, since it handles up to 30 days asynchronously in one request without the per-minute rate limit. It requires analytics:read_all scope and a Pro Pack license; otherwise CDR Feed is the only option.