Meta Ads API

Connect Meta (Facebook and Instagram) ads and insights

Base URL: https://api.wemasy.nl/api
ⓘ The token stays in this browser tab only (sessionStorage) and is sent to the WEMASY API only. Don't use production tokens on shared computers.

Meta Ads

POST /services/meta-ads/v1/connection/status Auth
POST /services/meta-ads/v1/connection/redirect Auth
POST /services/meta-ads/v1/connection/ad-accounts Auth
POST /services/meta-ads/v1/connection/select-account Auth
POST /services/meta-ads/v1/connection/disconnect Auth

Sanity check — returns the active ad account's basic info via Graph API. First call after seeding/OAuth to confirm the token works end-to-end

POST /services/meta-ads/v1/account/self Auth
POST /services/meta-ads/v1/targeting/interest-search Auth

Sync campaigns for the active ad account. Writes a dated JSON dump to meta_ads_dumps disk + upserts meta_ads_campaigns rows

POST /services/meta-ads/v1/sync/campaigns Auth
POST /services/meta-ads/v1/sync/ad-sets Auth
POST /services/meta-ads/v1/sync/ads Auth

Sync insights at one or more levels. By default pulls all three: campaign + adset + ad — each at daily breakdown for the last 30 days. Dumps each level into a separate file so the SPA can render them independently

POST /services/meta-ads/v1/sync/insights Auth

Lists every YYYY-MM-DD dump folder the project has on disk, newest first. Drives the dashboard's date picker

POST /services/meta-ads/v1/insights/available-dates Auth
POST /services/meta-ads/v1/connection/assets Auth
POST /services/meta-ads/v1/connection/select-assets Auth
POST /services/meta-ads/v1/apply/rollback Auth
POST /services/meta-ads/v1/apply/campaign-status Auth
POST /services/meta-ads/v1/apply/create-ad Auth
POST /services/meta-ads/v1/apply/ad-set-status Auth
POST /services/meta-ads/v1/apply/create-campaign Auth
POST /services/meta-ads/v1/apply/create-ad-set Auth

Meta Ads Orchestrator that runs every Meta sync resource sequentially and writes a `_summary.json` at the end. Mirrors Google's `SyncFullDumpController` so the marketing-state folder layout is symmetric across platforms. Runs MetaFullDumpService

POST /services/meta-ads/v1/sync/full-dump Auth

Meta Ads POST /api/services/meta-ads/v1/apply/create-creative type (default image): image image_hash placement images.square (1:1) and/or images.portrait (4:5) for feeds

POST /services/meta-ads/v1/apply/create-creative Auth

Meta Ads POST /api/services/meta-ads/v1/apply/launch-ad One-shot orchestrator: takes a complete ad spec

POST /services/meta-ads/v1/apply/launch-ad Auth

Meta Ads POST /api/services/meta-ads/v1/apply/launch-niche-ad-sets (budget gate) One campaign (existing campaign_id

POST /services/meta-ads/v1/apply/launch-niche-ad-sets Auth

Meta Ads POST /api/services/meta-ads/v1/apply/upload-images Batch of up to 10 images

POST /services/meta-ads/v1/apply/upload-images Auth

Meta Ads POST /api/services/meta-ads/v1/apply/upload-video {name

POST /services/meta-ads/v1/video/status Auth
POST /services/meta-ads/v1/apply/upload-video Auth

Meta Ads POST /api/services/meta-ads/v1/connection/inventory Lists every asset our OAuth token can see right now: - ad_accounts — owned by user OR shared with them - businesses — Business Manager portfolios the user has any role in - pixels — every pixel under those businesses (the data source you need to install for conversion tracking) - pages — Facebook Pages the user manages (optional for Pixel setup but useful diagnostic) Use this when "I can't add a new data source" — usually means the user is looking at the wrong Business Manager. The output tells them WHICH business to switch to in Meta's UI.

POST /services/meta-ads/v1/connection/inventory Auth

Meta Ads POST /api/services/meta-ads/v1/insights/rows (read) Totals per campaign

POST /services/meta-ads/v1/insights/rows Auth

Meta Ads Paginated list of every Meta apply audit row

POST /services/meta-ads/v1/apply/audit-log Auth

Meta Ads Same response contract as wemasy-google-ads-api's InsightsDashboardController so the SPA dashboard can render either platform with identical Vue components. Pulls from the JSON dumps in s3_private — fast

POST /services/meta-ads/v1/insights/dashboard Auth

Meta Ads Upload an image and get back an image_hash that creatives can reference. Accepts either a URL (we download) or base64 (raw bytes).

POST /services/meta-ads/v1/apply/upload-image Auth