# TikTok Ads audience report

Read TikTok AUDIENCE performance reports by age or gender at advertiser, campaign, ad group or ad level, including delivery from eligible Smart+ campaigns. Works on your own TikTok Ads account, connected through Get MCP Ads. Needs advertiser id, dimensions, metrics and more.

Read TikTok AUDIENCE performance reports by age or gender at advertiser, campaign, ad group or ad level, including delivery from eligible Smart+ campaigns. Multiple demographics return separate reports, not a joint distribution. Explicit pagination and native provider errors; no inference of configured targeting or Custom Audience membership. Agentik price: $0.005 per call.

- Tool ID: `tiktok-ads/get-audience-report`
- Name in the catalog: TikTok: Get audience report
- Provider: [TikTok Ads](/providers/tiktok-ads.md)
- Capability: [TikTok Ads audiences & targeting](/tools/tiktok-ads/audiences.md)
- Price: $0.005 per call
- Workspace access is automatic. Connect a platform using the link and notice returned to your AI assistant; an owner or admin completes platform consent and returns to the conversation; see the [guide](/docs/getmcpads.md).
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

The provider’s price, with no markup. Billed for measured usage.


```json
{
  "model": "per_call",
  "amountUsd": 0.005
}
```

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "advertiserId": {
      "type": "string",
      "pattern": "^\\d+$",
      "description": "Exact TikTok numeric ID, as a string."
    },
    "dataLevel": {
      "type": "string",
      "enum": [
        "AUCTION_ADVERTISER",
        "AUCTION_CAMPAIGN",
        "AUCTION_ADGROUP",
        "AUCTION_AD"
      ],
      "default": "AUCTION_CAMPAIGN",
      "description": "TikTok reporting aggregation level. Metrics and dimensions must be compatible with this level."
    },
    "dimensions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 4,
      "description": "age and/or gender, optionally with the ID matching dataLevel. Multiple demographics return separate reports, never a fabricated age × gender cross-tab."
    },
    "metrics": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Za-z][A-Za-z0-9_]*$"
      },
      "minItems": 1,
      "maxItems": 100,
      "description": "Native AUDIENCE metric keys, e.g. spend, impressions, clicks, ctr, cpc, conversion. Provider rejects unsupported metric combinations; BASIC metric availability does not imply AUDIENCE support."
    },
    "startDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "First date of the reporting period, in YYYY-MM-DD format."
    },
    "endDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Last date of the reporting period, in YYYY-MM-DD format, on or after startDate."
    },
    "campaignIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^\\d+$",
        "description": "Exact TikTok numeric ID, as a string."
      },
      "minItems": 1,
      "maxItems": 100,
      "description": "Restrict results to these campaign IDs."
    },
    "adgroupIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^\\d+$",
        "description": "Exact TikTok numeric ID, as a string."
      },
      "minItems": 1,
      "maxItems": 100,
      "description": "Restrict TikTok results to these ad group IDs."
    },
    "adIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^\\d+$",
        "description": "Exact TikTok numeric ID, as a string."
      },
      "minItems": 1,
      "maxItems": 100,
      "description": "Restrict results to these ad IDs."
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10000,
      "default": 1,
      "description": "Page number to request, starting at 1."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "default": 500,
      "description": "Maximum number of returned items or rows. The declared bounds and default apply; use pagination for additional results."
    },
    "orderField": {
      "type": "string",
      "enum": [
        "spend",
        "impressions",
        "clicks"
      ],
      "description": "Provider field used to order report rows."
    },
    "orderType": {
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ],
      "description": "Sort direction for the selected ordering field."
    },
    "workspace_id": {
      "type": "string",
      "description": "Authorized workspace ID from list_accounts/list_workspaces. Use the user's chosen workspace; never guess between clients. Optional when a unique account identifies it."
    }
  },
  "required": [
    "advertiserId",
    "dimensions",
    "metrics",
    "startDate",
    "endDate"
  ]
}
```

## Published example

No example input is published for this tool. Ask for the inputs required by its schema.

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

[REST inspection](https://api.agentik.cc/v1/tools/tiktok-ads/get-audience-report) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/tiktok-ads/get-audience-report) · [Agent index](/llms.txt)
