Reporting
Available commands:cloudx report dashboardfor summary and daily or hourly metricscloudx report breakdownfor CloudX-only custom breakdowns by time, inventory, and device dimensionscloudx report biddersfor bidder performancecloudx report appsfor app performancecloudx report ad-unitsfor ad unit performancecloudx report exportfor CSV or JSON exportcloudx report impressions exportfor asynchronous, impression-level revenue exports
Request Timeout
Reporting requests default to a 60 second API timeout. Use the global--timeout flag before the command when a workflow should fail earlier, or when a heavy report needs more time.
--timeout accepts duration values such as 30s, 90s, or 2m. Values must be greater than 0s and no more than 2m.
Shared Flags
Most reporting commands use the flags below. Exact support by command is listed in the next section.Flag Support By Command
Period Values
Period parsing is UTC-based. If you omit--period, every reporting command uses today.
Validation rules:
- End date must not be earlier than start date.
--countrymust be a two-letter uppercase ISO-2 code after normalization.--device-osmust be exactlyiOSorAndroid.--test-modemust beproduction,test, orall.--granularitymust bedailyorhourly.
Granularity Values
Use--granularity when you need to change how reporting rows are bucketed inside the selected period.
For hourly dashboard reports, the human-readable chart table uses
BUCKET START instead of DATE, and JSON chart rows include bucket_start timestamps such as 2026-04-01T13:00:00Z.
For hourly exports, the leading CSV or JSON column changes from date to bucket_start.
Source Values
When you omit--source, report commands use the existing CloudX-only reporting path. This keeps dashboard, app, and ad-unit results scoped to impressions served by CloudX.
Use --source when you want reports to include impression-level revenue data (ILRD) forwarded by publisher SDKs for other mediation platforms.
Source names are case-insensitive and normalized by the CLI. External source values come from the ILRD mediator/platform, not the downstream demand network. For example, AppLovin MAX rows with
ADMOB_BIDDING demand are reported under applovin, not admob.
When
--source includes external mediators, fill rate remains CloudX-only because external ILRD includes impressions and revenue, but not CloudX bid requests. The CLI labels this as Fill Rate (CloudX-only).Output Format
Human-Readable
Most commands print a metadata block first, then a table. Example metadata block:JSON
Pass--json to return structured JSON:
cloudx report dashboard
Shows summary metrics and daily or hourly chart rows.
Usage
--source all to include external mediator ILRD in dashboard revenue, impressions, eCPM, and source breakdowns:
--granularity hourly to show chart rows by UTC hour:
Example
cloudx report breakdown
Shows CloudX-only aggregate metrics grouped by the dimensions you choose.
This command is intended for ad hoc analysis such as revenue by country, hourly fill rate by app, or eCPM by ad unit. It does not accept --source and does not include external mediator ILRD or provider revenue. Use the source-aware dashboard, app, and ad-unit commands only when you need external ILRD where supported.
Usage
Dimensions
Use a comma-separated list with--by.
Metrics
Use a comma-separated list with--metrics.
Rate metrics are computed from summed components for each returned row. They are not averaged from precomputed rates.
Options
Having Expressions
--having filters rows after grouping. It supports one metric comparison:
<, <=, =, ==, !=, >=, >.
The metric must be one of the supported breakdown metrics listed above, and the right-hand side must be a number. == is accepted as an alias for =. Boolean logic, strings, SQL functions, and field-to-field comparisons are not supported.
Valid examples:
Examples
Daily revenue, impressions, and eCPM by country:Example Output
cloudx report bidders
Shows bidder-level performance for the selected time period.
Usage
Example
cloudx report apps
Shows app-level performance for the selected time period.
Usage
Example
cloudx report ad-units
Shows ad-unit-level performance for the selected time period.
Usage
--app and --ad-unit-type.
Use --source all with --app to see CloudX and external mediator revenue for the same app’s ad units:
Example
cloudx report export
Exports report data in CSV format by default.
Usage
--granularity hourly when downstream reporting needs UTC hour buckets:
Example
bucket_start for the first column:
JSON Output
With--json, the response includes:
columnsrowsrow_count
cloudx report impressions export
Creates a full-day, impression-level revenue export as a gzip-compressed CSV file. The export runs asynchronously so large result sets do not have to fit within a normal API request.
Usage
--date is required and must identify a completed UTC day within the previous 45 days. The current UTC day cannot be exported because it is not complete.
Options
Only two impression exports may be processing for an account at the same time. Submitting the same date and filters again reuses the matching queued, running, or completed export instead of creating duplicate work.
When an export is ready, CloudX returns a download URL that expires after one hour. Re-running the same command can issue a fresh URL while the generated file is still retained. Generated files are retained for up to seven days.