Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/mediamath-reports-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: ''
contact:
name: API Support
url: https://www.mediamath.com/contact-us/
email: support@mediamath.com
title: Reporting API V1 Reports API
description: "{% admonition type=\"danger\" name=\"This API is deprecated and will be removed in July 2026\" %}\n The new API docs can be found here: [https://apidocs.mediamath.com/apis/reporting-api](https://apidocs.mediamath.com/apis/reporting-api)\n{% /admonition %}\n\n{% admonition type=\"warning\" name=\"Notice about authentication with cookie adama_session\" %}\n The use of cookie adama_session for authentication has been discontinued and it's not supported in Reporting API V2. \n We ask all of our clients who have not yet migrated to [OAuth2 Authentication](https://apidocs.mediamath.com/guides/authentication) to do so as soon as possible.\n{% /admonition %}\n\nThe Reports API on MediaMath Platform allows advertisers to access, query and aggregate reporting data. It is also the API that powers all reporting seen on our MediaMath Platform flagship UI.\n\nThe Reports API offers a number of reports. Each report offers its own pre-aggregated, time-based metrics on entities that users can query. A query can filter, aggregate, sort, paginate, and format this data.\n\nIt is a read-only system meaning no request against it can alter the data in any way.\n\nIt is also a metadata-driven system. The supported reports are described in a human- and machine-readable format. This ensures easy one-off and repeatable programmatic data querying. It also provides a way for clients to adapt to changes in reports programmatically. This gives client-developers the ability to create UIs that provide useful operational feedback in a navigable and understandable way. \n\nThe $API_BASE for the V1 version of Reports API is `https://api.mediamath.com/reporting/v1/std`\n\n## Authentication\n\n{% admonition type=\"danger\" name=\"This API is deprecated and will be removed in July 2026\" %}\n The new API docs can be found here: [https://apidocs.mediamath.com/apis/reporting-api](https://apidocs.mediamath.com/apis/reporting-api)\n{% /admonition %}\n\nSee [OAuth Authentication](https://apidocs.mediamath.com/guides/authentication)\n\n## Fields\n\n{% admonition type=\"danger\" name=\"This API is deprecated and will be removed in July 2026\" %}\n The new API docs can be found here: [https://apidocs.mediamath.com/apis/reporting-api](https://apidocs.mediamath.com/apis/reporting-api)\n{% /admonition %}\n\nReport data is stored and output in a tabular format. This means that the output consists of rows and columns. Every row has a value for every column.\n\nThe `structure` object can be used to determine the columns a report can output. Its fields are divided among three mappings - `time_field`, `dimensions`, and `metrics`. \n\n```json\n{\n \n \"time_rollups\" : [ \"by_day\", \"by_week\", \"by_month\", \"all\" ],\n \"time_windows\" : [ \"yesterday\", \"last_X_days\", \"month_to_date\", \"campaign_to_date\" ],\n \"timezone\" : \"campaign timezone\",\n \"time_aggregation\" : \"by_day\",\n \"structure\" : { \n \"time_field\" : { \n \"date\" : { \n \"name\" : \"Date\",\n \"type\" : \"datetime\"\n }\n }, \n \"dimensions\" : {\n \"campaign_id\" : { ... },\n \"campaign_name\" : { ... },\n \"strategy_id\" : { ... },\n \"strategy_name\" : { ... }\n }, \n \"metrics\" : { \n \"clicks\" : { ... },\n \"impressions\" : { ... }\n }\n }\n ...\n}\n```\n\n---\n**Time Field**\n\nThe time field represents the time-component of the report's metrics. There is (currently) only one time field for each report. It can be of one of these data types: `datetime` or `interval`. Its data type determines the type of report (**datetime** or **interval** based report).\n\n**Note:** The type of report is not to be confused with the `Type` attribute. The `Type` attribute is purely informational.\n\nThe time field was distinguished from the dimension fields to allow its use in grouping and filtering rows easier to understand. It gets its own set of parameters and language.\n\n---\n**datetime-typed Time Fields**\n\nDatetime-typed time fields contains a combination of year, month, day, and possibly down to hour, minute and second. The `time_aggregation` property indicates the field's finest grain (by_hour, by_day, etc). The `time_rollups` property indicates the available grouping options that can go beyond the `time_aggregation` of the report.\n\n```\ntime_rollup=by_week ### group rows by the week - week starts on Monday \ntime_rollup=by_month ### group rows by the month\ntime_rollup=all ### produces at most one row of output per combination of dimension fields\n ### listed in the dimensions parameter\n```\n\nThe time field for these reports are typically represented in the output by a start_date and end_date column. The format of the column will depend on the time window and `time_rollup`.\n\n* YYYY-MM-DD\n* YYYY-MM-DD hh:mi:ss\n\nThe only exception to this rule is detailed in the Special Time Windows section.\n\nThe timezone of the start_date and end_date columns will match the `timezone` property.\n\n---\n**interval-typed Time Fields**\n\n`interval`-typed time fields, contain a predefined non-calendar date based aggregation (1 day, 7 days, 30 days, and so on). In this case, the only accepted way to specify a time interval is by using the parameter `time_window`. The only value supported for the parameter `time_rollup` for interval-based reports is `all`.\n\nThe time field for these reports are represented in the output by a interval column. The value of the column will depend on the `time_window` chosen. The following gives example column values based on the time_window.\n\n* yesterday - 1\n* last_7_days - 7\n* last_30_days - 30\n* campaign_to_date - CTD\n* flight_to_date - FTD\n\n---\n**Filtering with the Time Field**\n\nThe API requires the specification of a time window in order to narrow the data set operated on. A time window must be specified in one of the two possible ways.\n\n* `start_date` and `end_date` (optional - defaults to \"yesterday\").\n* `time_window` may be set to one of the formats defined by the `time_windows` attribute.\n\n```\n### operate on data timestamped between Jan 01, 2013 and Feb 01, 2013, inclusive\nstart_date=2013-01-01&end_date=2013-02-01 \n### operate on data timestamped between May 05, 2013 and yesterday, inclusive\nstart_date=2013-05-01 \n### other usage examples \ntime_window=last_30_days \ntime_window=month_to_date \ntime_window=yesterday \n```\n\n---\n**start_date and end_date**\n\n`start_date` and `end_date` may only be used when the report's time field is of the `datetime` type. They may not be used when the report's time field is of the `interval` data type. This is because the `time_windows` are pre-defined intervals that cannot be split.\n\nThe `start_date` and `end_date` parameters define inclusive boundaries for the data. In order to ease the burden of calculating an inclusive end, the inputs may be specified at various granularities.\n\n* month - YYYY-MM\n* day - YYYY-MM-DD\n* hour - YYYY-MM-DDThh\n* minute - YYYY-MM-DDThh:mi\n* second - YYYY-MM-DDThh:mi:ss\n\nEach granularity matches a substring of the ISO 8601 format.\n\nIf the report is at a coarser granularity (see `time_aggregation`) than the input, the input will be taken to mean the entirety of the time unit.\n\n```\nstart_date=2016-04-12T01%3A30%3A00&end_date=2016-04-12T02%3A30%3A00\n# ie. start_date=2016-04-12T01:30:00&end_date=2016-04-12T02:30:00\n# For a report with a time_aggregation of by_hour:\n# 2016-04-12T01:00:00 to 2016-04-12T02:59:59.\n \n# For a report with a time_aggregation of by_day:\n# 2016-04-12T00:00:00 to 2016-04-12T23:59:59\n```\n\n---\n**time_window**\n\nAll values mentioned in the `time_windows` array will be accepted verbatim by the time_window parameter with the exception of any time window that starts with `last_X_`. They may be interpreted as such.\n\n* The `last_X_days` time window ends yesterday (inclusive) and starts X days before that.\n* The `last_X_hours` time window ends at the previous hour (inclusive) and starts X hours before that.\n\nFuture windows of this type may be defined following this nomenclature, but for different units. Rules for the time window may vary slightly.\n\n---\n**Special Time Windows**\n\nThe following `time_windows` are considered to be special time windows.\n\n* `campaign_to_date`\n* `flight_to_date`\n\nFor reports with a `datetime`-typed `time_field`, the start_date and end_date columns that would normally be present, will be replaced by the interval column. Additionally, the following validation rules apply when a special `time_window` is chosen.\n\n* The results will have an `interval` column instead of `start_date` and `end_date` columns.\n* The `time_rollup` parameter must be set to `all`.\n* Any mention of the `time_field` for the report in the `order` parameter will be rejected.\n\n---\n**Dimension Fields**\n\nDimension fields describe an entity. The example reports provide dimension fields for campaign, and strategy entities. Dimension fields are used to group rows during aggregation in conjunction with the time field.\n\n---\n**Metric Fields**\n\nOnce the rows have been grouped. The metric fields are calculated based on the values of the group's underlying rows. These calculations are generally sums or averages. These fields are usually a numeric data type.\n\nPlease note that fees (eg: managed_service_fee, optimization_fee, platform_access_fee, and mm_total_fee), cost (eg: adserving_cost, adverification_cost, media_cost, and tota_ad_cost), and margin data are only available to users who have “edit margin” access.\n\n# Data Types\n\n{% admonition type=\"danger\" name=\"This API is deprecated and will be removed in July 2026\" %}\n The new API docs can be found here: [https://apidocs.mediamath.com/apis/reporting-api](https://apidocs.mediamath.com/apis/reporting-api)\n{% /admonition %}\n\nThe `id` type allows any character except whitespace.\n\nThe `datetime` type may be filtered by dates, or datetimes in either of the following ISO 8601 based formats.\n\n* date - YYYY-MM-DD\n* datetime - YYYY-MM-DDThh:mi:ss\n\nYear, month, and day are all 1-based. Hour, minute, and second are all 0-based. Valid hours are 0-23.\n\nThe dimension fields of the `datetime` type will always be output in the aforementioned datetime format. The output columns for the time field will be output in the same format, but without the separating 'T'.\n\n---\n**Field Data Type Groupings**\n\nThis documentation may refer to multiple data types via a group name. The following table details the group names.\n\n|Group|Data Types|\n|--- |--- |\n|float|float, money, percent, ratio|\n|integer|integer, count, rank|\n|numeric|float and integer groups|\n|date|datetime|\n|string|string, interval|\n|id|id|\n|bool|bool, boolean|\n"
license:
url: http://www.apache.org/licenses/LICENSE-2.0.html
name: Apache 2.0
servers:
- url: https://api.mediamath.com/reporting/v1/std
tags:
- name: Reports
description: _
paths:
/app_transparency:
get:
operationId: GET_app_transparency
summary: App Transparency
tags:
- Reports
description: "{% admonition type=\"danger\" name=\"This API is deprecated and will be removed in July 2026\" %}\n The new API docs can be found here: [https://apidocs.mediamath.com/apis/reporting-api](https://apidocs.mediamath.com/apis/reporting-api)\n{% /admonition %}\n\nSee or query the Meta Endpoint for required fields and parameters.\n"
responses:
'200':
description: ''
content:
'*/*':
schema: {}
/app_transparency/meta:
get:
operationId: GET_app_transparency-meta
summary: App Transparency Meta
tags:
- Reports
responses:
'200':
description: ''
content:
'*/*':
schema:
type: object
properties:
Description:
type: string
description: Standard performance metrics in campaign currency and broken out by our widest array of dimensions. Available in custom date ranges or intervals with the option to aggregate by day, week, or month.
Name:
type: string
description: Performance Report in Campaign Currency
Type:
type: string
URI_Data:
type: string
default: https://api.mediamath.com/reporting/v1/std/performance
URI_Meta:
type: string
default: https://api.mediamath.com/reporting/v1/std/performance/meta
Version:
type: integer
currency:
type: string
description: campaign currency
data_retention:
type: string
default_metrics:
type: array
items:
type: string
structure:
type: object
properties:
dimensions:
type: object
properties:
advertiser_id:
type: object
properties:
access:
type: boolean
name:
type: string
type:
type: string
advertiser_name:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
agency_id:
type: object
properties:
access:
type: boolean
name:
type: string
type:
type: string
agency_name:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
app_id:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
attribution_group:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
values:
type: array
items:
type: string
campaign_budget:
type: object
properties:
name:
type: string
type:
type: string
campaign_currency_code:
type: object
properties:
name:
type: string
type:
type: string
campaign_end_date:
type: object
properties:
name:
type: string
type:
type: string
campaign_goal_type:
type: object
properties:
name:
type: string
type:
type: string
values:
type: array
items:
type: string
campaign_goal_value:
type: object
properties:
name:
type: string
type:
type: string
campaign_id:
type: object
properties:
access:
type: boolean
name:
type: string
type:
type: string
campaign_initial_start_date:
type: object
properties:
name:
type: string
type:
type: string
campaign_name:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
campaign_start_date:
type: object
properties:
name:
type: string
type:
type: string
campaign_timezone:
type: object
properties:
name:
type: string
type:
type: string
campaign_timezone_code:
type: object
properties:
name:
type: string
type:
type: string
exchange_id:
type: object
properties:
name:
type: string
type:
type: string
exchange_name:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
organization_id:
type: object
properties:
access:
type: boolean
name:
type: string
type:
type: string
organization_name:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
strategy_budget:
type: object
properties:
name:
type: string
type:
type: string
strategy_channel:
type: object
properties:
name:
type: string
type:
type: string
values:
type: array
items:
type: string
strategy_end_date:
type: object
properties:
name:
type: string
type:
type: string
strategy_goal_type:
type: object
properties:
name:
type: string
type:
type: string
values:
type: array
items:
type: string
strategy_goal_value:
type: object
properties:
name:
type: string
type:
type: string
strategy_id:
type: object
properties:
access:
type: boolean
name:
type: string
type:
type: string
strategy_name:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
strategy_start_date:
type: object
properties:
name:
type: string
type:
type: string
strategy_supply_type:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
values:
type: array
items:
type: string
strategy_type:
type: object
properties:
maxLength:
type: integer
name:
type: string
type:
type: string
metrics:
type: object
properties:
clicks:
type: object
properties:
name:
type: string
type:
type: string
ctc:
type: object
properties:
name:
type: string
type:
type: string
ctr:
type: object
properties:
name:
type: string
type:
type: string
impressions:
type: object
properties:
name:
type: string
type:
type: string
media_cost:
type: object
properties:
name:
type: string
type:
type: string
media_cost_cpa:
type: object
properties:
name:
type: string
type:
type: string
media_cost_cpc:
type: object
properties:
name:
type: string
type:
type: string
media_cost_cpm:
type: object
properties:
name:
type: string
type:
type: string
media_cost_pc_cpa:
type: object
properties:
name:
type: string
type:
type: string
media_cost_pv_cpa:
type: object
properties:
name:
type: string
type:
type: string
post_click_conversions:
type: object
properties:
name:
type: string
type:
type: string
post_view_conversions:
type: object
properties:
name:
type: string
type:
type: string
rr_per_1k_imps:
type: object
properties:
name:
type: string
type:
type: string
total_ad_cost:
type: object
properties:
name:
type: string
type:
type: string
total_ad_cost_cpa:
type: object
properties:
name:
type: string
type:
type: string
total_ad_cost_cpc:
type: object
properties:
name:
type: string
type:
type: string
total_ad_cost_cpm:
type: object
properties:
name:
type: string
type:
type: string
total_ad_cost_pc_cpa:
type: object
properties:
name:
type: string
type:
type: string
total_ad_cost_pv_cpa:
type: object
properties:
name:
type: string
type:
type: string
total_conversions:
type: object
properties:
name:
type: string
type:
type: string
total_spend:
type: object
properties:
name:
type: string
type:
type: string
total_spend_cpa:
type: object
properties:
name:
type: string
type:
type: string
total_spend_cpc:
type: object
properties:
name:
type: string
type:
type: string
total_spend_cpm:
type: object
properties:
name:
type: string
type:
type: string
total_spend_pc_cpa:
type: object
properties:
name:
type: string
type:
type: string
total_spend_pv_cpa:
type: object
properties:
name:
type: string
type:
type: string
video_close:
type: object
properties:
name:
type: string
type:
type: string
video_collapse:
type: object
properties:
name:
type: string
type:
type: string
video_companion_clicks:
type: object
pro
# --- truncated at 32 KB (118 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mediamath/refs/heads/main/openapi/mediamath-reports-api-openapi.yml