TikTok Ad Library

2 endpoints.

GET /v1/tiktok/ads_ad

Ad Library Ad

Fetches one TikTok ad by ID or URL. It first checks Creative Center Top Ads (ads.tiktok.com), then TikTok's public transparency Ads Library (library.tiktok.com) when the ID is not a Top Ads material. Both sources return the same response shape. Fields TikTok does not expose for a public Ads Library ad are null, empty, or false as appropriate.

Parameters

NameInTypeDescription
ad_id requiredquerystringCreative Center Top Ads material ID or URL, or a public Ads Library ad ID or library.tiktok.com detail URL.

Request

curl "https://api.scrapall.bipsport.com/scapi/v1/tiktok/ads_ad?ad_id=1869335220395266" \
  -H "X-Scapi-Key: YOUR_API_KEY"
const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/tiktok/ads_ad?ad_id=1869335220395266", {
  headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();
import requests

r = requests.get(
    "https://api.scrapall.bipsport.com/scapi/v1/tiktok/ads_ad?ad_id=1869335220395266",
    headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())

Response 200 (sample)

{
  "ad_title": "I thought this was a gimmick until I tried it! A wrinkled shirt, one button, and a few minutes later... ready to wear. Tap the link in bio and see why everyo...",
  "brand_name": "",
  "comment": 1,
  "cost": 1,
  "country_code": [
    "TR"
  ],
  "ctr": 0.5,
  "favorite": false,
  "has_summary": false,
  "highlight_text": "",
  "id": "7646829987799334920",
  "industry_key": "label_22108000000",
  "is_search": false,
  "keyword_list": null,
  "landing_page": "https://www.amazon.com/dp/B0DRTC8XBW?ref=cm_sw_r_cso_wa_apin_dp_71W8F02XC4M4QZRQ5RQN&ref_=cm_sw_r_cso_wa_apin_dp_71W8F02XC4M4QZRQ5RQN&social_share=cm_sw_r_cs...",
  "like": 92,
  "objective_key": "campaign_objective_reach",
  "objectives": [
    {
      "label": "campaign_objective_reach",
      "value": 5
    }
  ],
  "pattern_label": [],
  "share": 1,
  "source_key": 73,
  "video_info": {
    "vid": "v12044gd0000d8erq07og65h1cq991gg",
    "duration": 89.767,
    "cover": "https://p16-common-sign.tiktokcdn.com/tos-maliva-p-0068c799-us/oIbqBdvfEAiFpgvAOgrQHCF5R0mkDDLiEfvQDS~tplv-noop.image?dr=18692&refresh_token=2cdb79e2&x-expir...",
    "video_url": {
      "540p": "https://v16m-default.tiktokcdn.com/3e7ec770348dbc627fc02ea1e8417c25/6a2b7108/video/tos/maliva/tos-maliva-ve-0068c799-us/oIN2GPIRgHAUBHOeNfLk2HBSERoJeIALGC3jA...",
      "720p": "https://v16m-default.tiktokcdn.com/9f16ea869602069b9fdad27dc113cb48/6a2b7108/video/tos/maliva/tos-maliva-ve-0068c799-us/ooEipQa9HbhJ4ChzASIngUPhBAdXiABIvxU2E..."
    },
    "width": 720,
    "height": 1280
  },
  "voice_over": false,
  "creative_center_url": "https://ads.tiktok.com/business/creativecenter/topads/7646829987799334920/pc/en",
  "detail_analysis": null,
  "interactive_time_analysis": {
    "ctr": {
      "metric": "retain_ctr",
      "analysis": [
        {
          "second": 0,
          "value": 0.048321828136158054
        }
      ],
      "duration": 91,
      "highlight": [
        1
      ],
      "percentile": 0.99
    },
    "cvr": {
      "metric": "retain_cvr",
      "analysis": [
        {
          "second": 0,
          "value": 0
        }
      ],
      "duration": 91,
      "highlight": [],
      "percentile": 0.99
    },
    "clicks": {
      "metric": "click_cnt",
      "analysis": [
        {
          "second": 0,
          "value": 0.2631578947368421
        }
      ],
      "duration": 91,
      "highlight": [
        1
      ],
      "percentile": 0.99
    },
    "conversion": {
      "metric": "convert_cnt",
      "analysis": [
        {
          "second": 0,
          "value": 0
        }
      ],
      "duration": 91,
      "highlight": [],
      "percentile": 0.99
    },
    "remain": {
      "metric": "play_retain_cnt",
      "analysis": [
        {
          "second": 0,
          "value": 1
        }
      ],
      "duration": 91,
      "highlight": [],
      "percentile": 0.99
    }
  },
  "...": "1 more fields"
}