Ads

Get an ad by id

Returns a single public ad detail object by ad id. The current backing identifier is the internal composite ad id, but the public contract exposes it as id.

get/v1/ads/{adId}

Request

  • Base URL: https://api.trendtrack.io (the document declares no server; this is the origin it was published from)
  • URL: https://api.trendtrack.io/v1/ads/{adId}
  • Auth: HTTP bearer

Path parameters

adIdstring required
Example:facebook_123456789

Trendtrack ad identifier returned as adId by the Public API.

Response

Public ad detail response. The response also includes the X-Request-Id header.

requestIdstring required

Request identifier mirrored in the X-Request-Id response header.

Example response

{
  "requestId": "5d93d8de-0f6d-46a4-bd10-2e519b7e96bc",
  "data": {
    "id": "facebook_123456789",
    "collationId": "3810635369204881",
    "platform": "facebook",
    "status": "active",
    "createdAt": "2026-04-18T12:30:00.000Z",
    "firstSeenAt": "2026-04-10T00:00:00.000Z",
    "lastSeenAt": "2026-04-19T00:00:00.000Z",
    "daysRunning": 9,
    "media": {
      "type": "video",
      "thumbnailUrl": "https://cdn.example.com/ads/ad-1-thumb.jpg",
      "mediaUrl": "https://cdn.example.com/ads/ad-1.mp4"
    },
    "advertiser": {
      "id": "1234567890",
      "name": "Example Brand",
      "logoUrl": "https://cdn.example.com/pages/example-brand.png",
      "facebookPageId": "1234567890",
      "liveAdsCount": 42,
      "reach30d": 152340,
      "totalReach": 842100,
      "countriesCount": 8,
      "facebookLikes": 125000,
      "instagramFollowers": 89000
    },
    "content": {
      "title": "Summer Sale",
      "body": "Up to 30% off selected products.",
      "transcript": "Save 30% on every order.",
      "callToAction": "Shop now",
      "landingPageUrl": "https://example.com/products/summer-sale",
      "landingPageDomain": "example.com",
      "ctaDescription": "Free shipping on orders over $50.",
      "ctaLinkDescription": "Shop the full collection"
    },
    "metrics": {
      "reach": 152340,
      "aggregatedReach": 284100,
      "estimatedSpend": 4262,
      "duplicates": 4,
      "reachDelta1d": 1200,
      "reachDelta7d": 8200,
      "reachDelta30d": 38400
    },
    "audience": {
      "targetedCountries": [
        "US",
        "FR"
      ],
      "mainCountry": "FR",
      "gender": "all",
      "ageMin": 18,
      "ageMax": 65
    },
    "rank": {
      "positionInPage": 3,
      "currentRank": 12,
      "rankDelta": -4,
      "improvementPct": 0.25
    },
    "flags": {
      "isEuAd": true,
      "hasPartnerBadge": true
    },
    "transcript": {
      "language": "en",
      "languageConfidence": 0.97,
      "segments": [
        {
          "start": 0.4,
          "end": 3.2,
          "text": "Save 30% on every order."
        }
      ],
      "fullText": "Save 30% on every order."
    },
    "creativeAnalysis": {
      "hook": {
        "text": "Yes, it is pricey. Also, worth it.",
        "source": "ad_transcripts_hook",
        "sourceDescription": "Existing completed ad transcript hook."
      }
    },
    "links": {
      "adLibraryUrl": "https://www.facebook.com/ads/library/?view_all_page_id=1234567890&id=9876543210",
      "landingPageUrl": "https://example.com/products/summer-sale"
    },
    "shops": [
      {
        "shopId": "3f8aa146-6f96-46e8-9781-64db5166f9a8",
        "domain": "example.com",
        "name": "Example Shop",
        "isPrimary": true,
        "traffic": 45231,
        "categories": [
          "Fashion",
          "Accessories"
        ]
      }
    ],
    "pageAnalytics": {
      "impressionsHistory": [
        {
          "date": "2026-04-18",
          "totalImpressions": 12340
        }
      ],
      "facebookLikesHistory": [
        {
          "date": "2026-04-18",
          "value": 84000
        }
      ],
      "instagramFollowersHistory": [
        {
          "date": "2026-04-18",
          "value": 84000
        }
      ]
    },
    "resolvedFrom": {
      "requestedId": "facebook_2938968053111742"
    }
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.