Docs
Ctrl+K Rechercher Alt+[Alt+] Guides
Obtenir une clé API

API · Marques

Marques et suivi des marques

This supplements the Référence API. GET /api/v1/brands is the API-key tracked-brands list (metered credits). Detail tabs and deep brand analytics use /api/brands/* in the browser while you are logged in.

Path note: Tracked brands over an API key: only GET /api/v1/brands. GET /api/brands is the tableau de bord list for the logged-in session (same underlying data, not the metered JSON route for keys). Meta ad library (GET /api/v1/adlibrary) is documented in Meta ad library.


MCP tool (Brand tracker)

  • list_tracked_brands — same data as GET /api/v1/brands (optional rechercher, trier, board_id).

Setup: MCP. Parameters: MCP · tools reference. For search_facebook_ads, see Meta ad library.


Shared auth and metering (/api/v1/adlibrary, /api/v1/marques)

GET /api/v1/brands uses the same auth and metering path as /api/v1/adlibrary. Full parameter context for the ad library route lives in Meta ad library.

  • API key: Clé X-API, Autorisation : au porteur, or ?api_key= (see Référence API).
  • Session: If the visitor is already logged in, the same routes can run without a key; the active user must still meet the API access check below.
  • Plan: Account must include API access. Otherwise 403.
  • Credits / rate limit: Monthly API credits and 60 requests per minute per user. On exhaustion, 429 with a JSON error and optional générique object.

When you use an API key without an existing browser session, the server still resolves the key to your account for that request so behavior matches the dashboard.


GET /api/v1/brands — Tracked brands list (API key)

Returns the same tracked-brands list you see in the app’s Brand tracker, scoped to the API key owner.

Query parameters

Paramètre Par défaut Description
trier date_added date_added, nom, new_ads, growth
rechercher '' Case-insensitive match on brand name or page id
board_id If set, only brands on that saved board (must belong to the user)

Response

JSON array of brand rows (not wrapped in { success, data }). Each item includes fields such as id (Facebook page id), nom, logo_url, added_at, page_url, status, total_ads, active_ads_on_page, formats, new_ads_count, new_ads_change, and related summary fields (same shape as the in-app list).


Brand details (GET /api/brands/*) — session / logged-in

These routes require a logged-in browser session (except GET /api/brands/shared-board, which uses a token). They are pas the metered API-key list — that is GET /api/v1/brands only. Automating detail tabs means driving the app with session cookies, not the API key alone.

Brand identifier: Almost all detail endpoints take id = Facebook page_id (same as id in the brands list).


Track / untrack brands (session)

Yes — you can both track and remove brands in the Brand tracker, using session-authenticated routes:

Track a brand

POST /api/brands/follow

JSON body:

{ "url": "https://www.facebook.com/ads/library/?view_all_page_id=108897621643793" }

Remarques :

  • Requires a logged-in session and plan capacity.
  • Returns success, plus brand, has_data, et details_url when accepted.

Remove a tracked brand

POST /api/brands/unfollow

JSON body:

{ "page_id": "108897621643793" }

Remarques :

  • Removes the brand from your tracker.
  • Also removes that brand from your boards for the current user.
  • Returns success, amount, et max_allowed.

Count tracked brands

GET /api/brands/amount-tracked returns:

  • amount - number of brands currently tracked by the logged-in user.
  • max_allowed - plan cap for Brand tracker.

Date range filter (many detail tabs)

Query parameters map as follows:

date_range Meaning
(absent) ou all No date filter
live Last seen in the last 3 days (updated_at field)
7d, 30d, 3m, 6m Ads with start date on or after the rolling cutoff (started field)
custom Requires date_de_début et date_to as Y-m-d

Used directly by GET /api/brands/ads. The same filter applies to other brand insight tabs (ad copies, headlines, hooks, personas, themes, …): pass the same date_range / date_de_début / date_to query params on those endpoints.

Example: paginated ads for one brand

GET /api/brands/ads?id={page_id}&page={n}

  • page: 0-based page index (12 ads per page).
  • Optional date filter: date_range, date_de_début, date_to as above.
  • Response: JSON array of processed ad objects.

Other detail endpoints — common query parameters

Paramètre Where it applies
id Marque page_id on ads, ad-hooks, ad-copies, ad-headlines, personas, themes, angles, desires, emotions, awareness-stages, funnel-stages, usps, landing-pages, and similar get* methods.
page Ads list: 0-based, 12 ads/page. Many other tabs use 1-based pagination (typically 20 rows per page).
trier, rechercher Text / insight tabs; default Utilisation or method-specific (see each handler).
date_range, date_de_début, date_to Any tab that supports the date filter (same semantics as the table above).
view=eu When view is eu, EU-specific field variants and search behavior apply.
GET /api/brands/ads-by-ids ids — comma-separated ad ids.
GET /api/brands/search q — search string.
GET /api/brands/ads-launched min, max (date strings), metric: ads_launched (default), spend, reach (spend/reach EU-oriented per code comments).
GET /api/brands/shared-board token, rechercher, trier — public share link; no login cookie required.
GET /api/brands/download-landing-screenshot url — target page URL to capture.

Brand-related routes are also summarized in the API reference.