Ads · Ad Insights

Per-creative performance inside TikTok Smart+ ads

Returns the per-creative performance inside TikTok Smart+ ads, one page at a time. Works with TikTok Ads.

GEThttps://api.pozy.ai/v1/ads/tiktok-smart-plus-materials
TikTokgetTikTokSmartPlusMaterialReport

Guides: TikTok Ads, Ads reporting

Request

Send your API key as Authorization: Bearer pz_live_.... Read-only keys can call it. Keys with the ads resource group disabled get 403 resource_group_disabled. Authentication

Query parameters

NameTypeNotes
accountIdrequiredstring
adAccountIdrequiredstring
startDaterequiredstring (date)
endDaterequiredstring (date)
levelstringOne of ad, adGroupDefault ad
smartPlusAdIdsstring
adGroupIdsstring
pageintegerDefault 1At least 1
pageSizeintegerDefault 1001 to 1000

Example

curl -X GET "https://api.pozy.ai/v1/ads/tiktok-smart-plus-materials?accountId=696e0b682d0a31188e7a2ba9&adAccountId=666219aad7bab67ace411e4f&startDate=2026-10-01&endDate=2026-10-01" \
  -H "Authorization: Bearer $POZY_API_KEY"

Response

200 on success

  • adAccountIdstring
  • levelstring

    One of ad, adGroup.

  • startDatestring
  • endDatestring
  • pageinteger
  • pageSizeinteger
  • totalRowsinteger
  • totalPagesinteger
  • missingRowsinteger
  • rowsarray of object
    7 child fields
    • materialIdstring
    • materialTypestring

      Can be null.

    • tiktokItemIdstring

      Can be null.

    • namestring

      Can be null.

    • smartPlusAdIdstring

      Can be null.

    • adGroupIdstring

      Can be null.

    • metricsobject
      10 child fields
      • spendnumber

        Can be null.

      • impressionsnumber

        Can be null.

      • clicksnumber

        Can be null.

      • cpcnumber

        Can be null.

      • addToCartnumber

        Can be null.

      • initiateCheckoutnumber

        Can be null.

      • addPaymentInfonumber

        Can be null.

      • purchasesnumber

        Can be null.

      • purchaseValuenumber

        Can be null.

      • roasnumber

        Can be null.

200 response
{
  "adAccountId": "666219aad7bab67ace411e4f",
  "level": "ad",
  "startDate": "string",
  "endDate": "string",
  "page": 1,
  "pageSize": 1,
  "totalRows": 42,
  "totalPages": 42,
  "missingRows": 1,
  "rows": [
    {
      "materialId": "651e8a21ab6f7db5c340a60e",
      "materialType": "string",
      "tiktokItemId": "6194c6395799073f3c47a197",
      "name": "Acme",
      "smartPlusAdId": "6e8904b1093cf559921b85fe",
      "adGroupId": "6ad180be375f36f2c328e52b",
      "metrics": {
        "spend": 12.5,
        "impressions": 12.5,
        "clicks": 12.5,
        "cpc": 12.5,
        "addToCart": 12.5,
        "initiateCheckout": 12.5,
        "addPaymentInfo": 12.5,
        "purchases": 12.5,
        "purchaseValue": 12.5,
        "roas": 12.5
      }
    }
  ]
}

Errors

Errors use one shape: { error, type, code, param?, details? }. The ones you are most likely to see here:

400invalid_request_errorA parameter or body field is missing or invalid. param names it.
401authentication_errorThe API key is missing, revoked or expired.
403permission_errorThe key is scoped to other profiles or has this resource group disabled.
429rate_limit_errorToo many requests this minute. Wait for Retry-After seconds.

Every code is listed in Errors.

More in Ad Insights