Skip to content
Docs

API reference / Operations by tag

advertisers

Advertisers (the brands or networks that pay for conversions), their billing and portal settings.

66 operations. Base URL https://api.metrixed.com/v1; see authentication, errors and pagination.

Operations

MethodPathSummary
POST/advertiser/assistant/chatAdvertiser portal: ask the AI assistant about own offers, conversions, caps, disputes and invoices (no partner payouts); streams Server-Sent Events conversation, text, tool_call, tool_result, done, error
GET/advertiser/billing/summaryAdvertiser portal: balance, amount owed, credit limit and available credit, outstanding and overdue per currency, spend this and last month
GET/advertiser/capsAdvertiser portal: live usage of the caps on own offers (payout caps hidden; revenue caps shown as spend)
POST/advertiser/clicks/searchAdvertiser portal: raw click log of own offers (partner fields only when exposed, ip/user agent only when the tenant allows)
POST/advertiser/conversions/{id}/statusAdvertiser portal: approve, reject, cancel or re-open a conversion (applied at once or opened as a dispute per the tenant policy)
POST/advertiser/conversions/bulk-statusAdvertiser portal: status change for up to 500 conversions
GET/advertiser/disputesAdvertiser portal: own conversion disputes (filter status, conversion_id) with counts per status
POST/advertiser/disputes/{id}/withdrawAdvertiser portal: withdraw an open dispute
GET/advertiser/invoices/{id}Advertiser portal: invoice detail (lines, payments, paid, outstanding, pay state, payment link)
GET/advertiser/invoices/{id}/pdfAdvertiser portal: invoice as PDF (application/pdf)
GET/advertiser/login-historyAdvertiser portal: recent sign-ins (all users for admins, own otherwise)
GET/advertiser/meAdvertiser profile
GET/advertiser/mmp-templatesAdvertiser portal: own postback, reversal and MMP setup
GET/advertiser/notification-prefsAdvertiser portal: own notification preferences per kind (in_app, email)
PUT/advertiser/notification-prefsAdvertiser portal: update own notification preferences
GET/advertiser/notificationsAdvertiser portal: notifications for the account and the user (filter=unread, kind, cursor)
POST/advertiser/notifications/readAdvertiser portal: mark notifications read (ids[] or all; unread=true marks unread)
GET/advertiser/notifications/summaryAdvertiser portal: unread notification count
GET/advertiser/offersAdvertiser offers
GET/advertiser/offers/{id}Advertiser portal: offer detail with goals and what each costs, caps and remaining, creatives, landing pages and tracking setup
GET/advertiser/onboardingAdvertiser portal: first-login checklist (profile, prepaid top-up, first postback)
POST/advertiser/onboarding/dismissAdvertiser portal: hide the first-login checklist
GET/advertiser/paymentsAdvertiser portal: payment history (invoice payments and other ledger credits)
GET/advertiser/permissionsAdvertiser portal: own role, permissions, role matrix and the tenant's conversion-action policy (dispute|direct|off)
POST/advertiser/postback-testAdvertiser portal: dry-run an inbound postback for an own offer (nothing is recorded)
POST/advertiser/postback-token/rotateAdvertiser portal: rotate the postback security token (old token stops working)
GET/advertiser/profileAdvertiser portal: company profile, contact, billing details and account manager
PATCH/advertiser/profileAdvertiser portal: update company, reporting time zone, contact and billing details (account permission)
GET/advertiser/reconciliation/jobsAdvertiser portal: reconciliation upload history with result counts
GET/advertiser/reconciliation/jobs/{id}Advertiser portal: one reconciliation upload with per-row results
GET/advertiser/reports/catalogAdvertiser portal: report catalogue (only what the advertiser may see)
POST/advertiser/reports/exportAdvertiser portal: async report export (CSV/XLSX of the whole result)
GET/advertiser/reports/export/{id}Advertiser portal: export job status (own exports only)
GET/advertiser/reports/savedAdvertiser portal: saved reports (own and team)
POST/advertiser/reports/savedAdvertiser portal: save a report
GET/advertiser/reports/saved/{id}Advertiser portal: get a saved report
PATCH/advertiser/reports/saved/{id}Advertiser portal: update a saved report
DELETE/advertiser/reports/saved/{id}Advertiser portal: delete a saved report
GET/advertiser/reports/schedulesAdvertiser portal: scheduled reports
POST/advertiser/reports/schedulesAdvertiser portal: schedule a saved report (or the default performance report) by email
PATCH/advertiser/reports/schedules/{id}Advertiser portal: update or pause a scheduled report
DELETE/advertiser/reports/schedules/{id}Advertiser portal: delete a scheduled report
POST/advertiser/reports/schedules/{id}/runAdvertiser portal: run a scheduled report now (within a minute)
GET/advertiser/securityAdvertiser portal: portal IP allowlist, caller IP and MFA coverage
PUT/advertiser/securityAdvertiser portal: set the portal IP allowlist (IPs/CIDRs; must include the caller's IP; empty = everyone)
GET/advertiser/statementAdvertiser portal: statement of account (from, to, currency): opening balance, daily charges and payments with running balance
GET/advertiser/statement/exportAdvertiser portal: statement of account as CSV or PDF (format=csv|pdf)
GET/advertiser/topupsAdvertiser portal: top-up requests and credited top-ups
GET/advertiser/usersAdvertiser portal: own team members and pending invitations
POST/advertiser/usersAdvertiser portal: invite a team member
PATCH/advertiser/users/{id}Advertiser portal: change a team member's role or disable / re-enable them
DELETE/advertiser/users/invitations/{id}Advertiser portal: revoke a pending invitation
POST/advertiser/users/invitations/{id}/resendAdvertiser portal: resend a pending invitation (new link, 7 more days)
GET/advertisersList Advertisers
POST/advertisersCreate Advertiser
GET/advertisers/{id}Get Advertiser
PATCH/advertisers/{id}Update Advertiser
DELETE/advertisers/{id}Delete Advertiser
GET/advertisers/{id}/postback-setupPostback setup of one advertiser: tracking origin, postback and reversal URL templates with its token, MMP templates
GET/advertisers/{id}/usersAdvertiser users
POST/advertisers/{id}/usersCreate advertiser user
POST/advertisers/bulk/applyBulk edit apply
POST/advertisers/bulk/deleteDelete up to 500 advertisers in one transaction (dry_run: true previews without saving)
POST/advertisers/bulk/previewBulk edit preview
POST/advertisers/searchSearch Advertisers (advanced)
GET/mmp-templatesMMP postback templates (AppsFlyer, Adjust, Branch, Singular, Kochava): inbound postback URL for the MMP's partner setup and the outbound mmp: S2S preset; advertiser_id renders the URL with that advertiser's token

POST /advertiser/assistant/chat

Advertiser portal: ask the AI assistant about own offers, conversions, caps, disputes and invoices (no partner payouts); streams Server-Sent Events conversation, text, tool_call, tool_result, done, error

Operation postAdvertiserAssistantChat. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): PortalDoc

StatusDescriptionBody
200okapplication/json PortalDoc
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/assistant/chat' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

GET /advertiser/billing/summary

Advertiser portal: balance, amount owed, credit limit and available credit, outstanding and overdue per currency, spend this and last month

Operation getAdvertiserBillingSummary. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserBillingSummary
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/billing/summary' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/caps

Advertiser portal: live usage of the caps on own offers (payout caps hidden; revenue caps shown as spend)

Operation getAdvertiserCaps. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserCaps
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/caps' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

POST /advertiser/clicks/search

Advertiser portal: raw click log of own offers (partner fields only when exposed, ip/user agent only when the tenant allows)

Operation postAdvertiserClicksSearch. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): LogSearchRequest

FieldTypeFlagsDescription
fromstring (date-time)
tostring (date-time)
timezonestring
filtersarray of object (free-form)
searchobject (free-form)type, value
fieldsarray of string
limitinteger
cursorstring
sortobject (free-form)
StatusDescriptionBody
200okapplication/json AdvertiserClickPage
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/clicks/search' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"from":"1970-01-01T00:00:00.000Z","to":"1970-01-01T00:00:00.000Z","timezone":"","filters":[{}]}'

Example 200 response:

json
{}

POST /advertiser/conversions/{id}/status

Advertiser portal: approve, reject, cancel or re-open a conversion (applied at once or opened as a dispute per the tenant policy)

Operation postAdvertiserConversionsIdStatus. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes

Request body (application/json, required): AdvertiserStatusChange

FieldTypeFlagsDescription
statusenum: approved, rejected, cancelled, pendingrequired
reasonenum: valid, duplicate, fraud, returned, cancelled_order, test, not_qualified, invalid_data, chargeback, advertiser_reconciliation, other
notestring
idsarray of string
StatusDescriptionBody
200okapplication/json AdvertiserStatusResult
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/conversions/<id>/status' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"status":"approved"}'

Example 200 response:

json
{}

POST /advertiser/conversions/bulk-status

Advertiser portal: status change for up to 500 conversions

Operation postAdvertiserConversionsBulkStatus. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AdvertiserBulkStatusChange

StatusDescriptionBody
200okapplication/json AdvertiserStatusResult
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/conversions/bulk-status' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

GET /advertiser/disputes

Advertiser portal: own conversion disputes (filter status, conversion_id) with counts per status Advertiser portal: own conversion disputes (filter status, conversion_id) with counts per status. WP-67: paged; q matches conversion / txn id or offer; counts per status.

Operation getAdvertiserDisputes. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
qquerystringno
pagequerystringno
page_sizequerystringno
statusquerystringno
conversion_idquerystringno
StatusDescriptionBody
200okapplication/json AdvertiserDisputeList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/disputes?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

POST /advertiser/disputes/{id}/withdraw

Advertiser portal: withdraw an open dispute

Operation postAdvertiserDisputesIdWithdraw. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/disputes/<id>/withdraw' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "ok": false
}

GET /advertiser/invoices/{id}

Advertiser portal: invoice detail (lines, payments, paid, outstanding, pay state, payment link)

Operation getAdvertiserInvoicesId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json AdvertiserInvoiceDetail
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/invoices/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/invoices/{id}/pdf

Advertiser portal: invoice as PDF (application/pdf)

Operation getAdvertiserInvoicesIdPdf. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json PdfFile
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/invoices/<id>/pdf' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/login-history

Advertiser portal: recent sign-ins (all users for admins, own otherwise) Advertiser portal: recent sign-ins (all users for admins, own otherwise). WP-71: paged with page/page_size (page.total over the whole match); unpaged returns the previous bound with total and capped/cap.

Operation getAdvertiserLoginHistory. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequerystringno
page_sizequerystringno
StatusDescriptionBody
200okapplication/json LoginHistory
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/login-history?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/me

Advertiser profile

Operation getAdvertiserMe. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json Advertiser
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/me' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "external_ref": ""
}

GET /advertiser/mmp-templates

Advertiser portal: own postback, reversal and MMP setup

Operation getAdvertiserMmpTemplates. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json PostbackSetup
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/mmp-templates' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "tracking_base": "",
  "token_secured": false,
  "postback_url": "",
  "reversal_url": ""
}

GET /advertiser/notification-prefs

Advertiser portal: own notification preferences per kind (in_app, email)

Operation getAdvertiserNotificationPrefs. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json NotificationPrefs
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/notification-prefs' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

PUT /advertiser/notification-prefs

Advertiser portal: update own notification preferences

Operation putAdvertiserNotificationPrefs. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): NotificationPrefs

StatusDescriptionBody
200okapplication/json NotificationPrefs
defaulterrorapplication/json Error
bash
curl -X PUT 'https://api.metrixed.com/v1/advertiser/notification-prefs' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

GET /advertiser/notifications

Advertiser portal: notifications for the account and the user (filter=unread, kind, cursor)

Operation getAdvertiserNotifications. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserNotificationList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/notifications' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

POST /advertiser/notifications/read

Advertiser portal: mark notifications read (ids[] or all; unread=true marks unread)

Operation postAdvertiserNotificationsRead. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): NotificationRead

StatusDescriptionBody
200okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/notifications/read' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{
  "ok": false
}

GET /advertiser/notifications/summary

Advertiser portal: unread notification count

Operation getAdvertiserNotificationsSummary. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json NotificationSummary
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/notifications/summary' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/offers

Advertiser offers Advertiser offers. WP-71: paged with page/page_size (page.total over the whole match); unpaged returns the previous bound with total and capped/cap.

Operation getAdvertiserOffers. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
sortquerystringnofield or -field
includequerystringnocomma-separated relationships
filterqueryobject (free-form)no
qquerystringnofree-text search
StatusDescriptionBody
200okapplication/json OfferList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/offers?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

GET /advertiser/offers/{id}

Advertiser portal: offer detail with goals and what each costs, caps and remaining, creatives, landing pages and tracking setup

Operation getAdvertiserOffersId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json AdvertiserOfferDetail
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/offers/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/onboarding

Advertiser portal: first-login checklist (profile, prepaid top-up, first postback)

Operation getAdvertiserOnboarding. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json PortalDoc
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/onboarding' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

POST /advertiser/onboarding/dismiss

Advertiser portal: hide the first-login checklist

Operation postAdvertiserOnboardingDismiss. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): PortalDoc

StatusDescriptionBody
200okapplication/json PortalDoc
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/onboarding/dismiss' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

GET /advertiser/payments

Advertiser portal: payment history (invoice payments and other ledger credits) Advertiser portal: payment history (invoice payments and other ledger credits). WP-67: naturally small; returns at most 500 rows and capped: true when that cap is hit.

Operation getAdvertiserPayments. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserPaymentList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/payments' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/permissions

Advertiser portal: own role, permissions, role matrix and the tenant's conversion-action policy (dispute|direct|off)

Operation getAdvertiserPermissions. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserPermissions
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/permissions' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

POST /advertiser/postback-test

Advertiser portal: dry-run an inbound postback for an own offer (nothing is recorded)

Operation postAdvertiserPostbackTest. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): ConversionCreate

FieldTypeFlagsDescription
conversion_idstring
click_idstring
impression_idstring
txn_idstring
order_idstring
conversion_typeenum: base, goal, event, upsell, rebill, refund, chargeback, adjustment
goal_idstring
goal_keystring
offer_idstring
partner_idstring
advertiser_idstring
landing_page_idstring
creative_idstring
coupon_codestring
tsstring (date-time)
click_tsstring (date-time)
ctit_secondsinteger
statusenum: pending, approved, rejected, cancelled, extended, flagged, scrubbed
status_reasonstring
status_sourcestring
is_hidden_from_partnerboolean
payoutstringdecimal string
revenuestringdecimal string
sale_amountstringdecimal string
currencystring
fx_ratestringdecimal string
profitstringdecimal string
advobject (free-form)adv1..adv10
paramsobject (free-form)sub1..sub15, source, ...
methodenum: postback, pixel, iframe, js, sdk, s2s, coupon, manual, import
attributionobject (free-form)model, touch, confidence, is_organic
ipstring
click_ipstring
geoobject (free-form)
deviceobject (free-form)
user_idstring
fraudobject (free-form)score, reasons, rule_ids
is_testboolean
raw_requeststring
historyarray of object (free-form)
StatusDescriptionBody
200okapplication/json PortalDoc
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/postback-test' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"conversion_id":"","click_id":"","impression_id":"","txn_id":""}'

Example 200 response:

json
{}

POST /advertiser/postback-token/rotate

Advertiser portal: rotate the postback security token (old token stops working)

Operation postAdvertiserPostbackTokenRotate. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json PostbackToken
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/postback-token/rotate' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/profile

Advertiser portal: company profile, contact, billing details and account manager

Operation getAdvertiserProfile. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserProfile
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/profile' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

PATCH /advertiser/profile

Advertiser portal: update company, reporting time zone, contact and billing details (account permission)

Operation patchAdvertiserProfile. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AdvertiserProfile

StatusDescriptionBody
200okapplication/json AdvertiserProfile
defaulterrorapplication/json Error
bash
curl -X PATCH 'https://api.metrixed.com/v1/advertiser/profile' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

GET /advertiser/reconciliation/jobs

Advertiser portal: reconciliation upload history with result counts Advertiser portal: reconciliation upload history with result counts. WP-71: paged with page/page_size (page.total over the whole match); unpaged returns the previous bound with total and capped/cap.

Operation getAdvertiserReconciliationJobs. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequerystringno
page_sizequerystringno
StatusDescriptionBody
200okapplication/json ReconJobList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/reconciliation/jobs?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/reconciliation/jobs/{id}

Advertiser portal: one reconciliation upload with per-row results

Operation getAdvertiserReconciliationJobsId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json ReconJob
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/reconciliation/jobs/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/reports/catalog

Advertiser portal: report catalogue (only what the advertiser may see)

Operation getAdvertiserReportsCatalog. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json ReportCatalog
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/reports/catalog' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "principal": "network",
  "endpoint": "",
  "dimensions": [
    {}
  ],
  "metrics": [
    {}
  ]
}

POST /advertiser/reports/export

Advertiser portal: async report export (CSV/XLSX of the whole result)

Operation postAdvertiserReportsExport. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): ExportRequest

FieldTypeFlagsDescription
queryReportQuery
logLogSearchRequest
formatenum: csv, tsv, xlsx, json, parquet
notify_emailstring
labelsboolean
StatusDescriptionBody
202okapplication/json Job
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/reports/export' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"query":{"from":"","to":""},"log":{},"format":"csv","notify_email":""}'

Example 202 response:

json
{
  "external_ref": ""
}

GET /advertiser/reports/export/{id}

Advertiser portal: export job status (own exports only)

Operation getAdvertiserReportsExportId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json ExportStatus
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/reports/export/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "job_id": "",
  "status": "queued",
  "progress": 0,
  "kind": ""
}

GET /advertiser/reports/saved

Advertiser portal: saved reports (own and team)

Operation getAdvertiserReportsSaved. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json SavedReportList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/reports/saved' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "rows": [
    {}
  ],
  "has_more": false
}

POST /advertiser/reports/saved

Advertiser portal: save a report

Operation postAdvertiserReportsSaved. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): SavedReport

FieldTypeFlagsDescription
idstringread-only
display_idintegerread-only
hash_idstringread-only
external_refstring
custom_fieldsobject (free-form)tenant-defined fields
versionintegerread-only
created_atstring (date-time)read-only
updated_atstring (date-time)read-only
deleted_atstring (date-time)read-only
namestring
queryReportQuery
is_sharedboolean
descriptionstring
visibilityenum: private, team
pinnedboolean
owner_user_idstringread-only
principal_typeenum: network, partner, advertiserread-only
StatusDescriptionBody
201okapplication/json SavedReport
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/reports/saved' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"external_ref":""}'

Example 201 response:

json
{
  "external_ref": ""
}

GET /advertiser/reports/saved/{id}

Advertiser portal: get a saved report

Operation getAdvertiserReportsSavedId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json SavedReport
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/reports/saved/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "external_ref": ""
}

PATCH /advertiser/reports/saved/{id}

Advertiser portal: update a saved report

Operation patchAdvertiserReportsSavedId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes

Request body (application/json, required): SavedReport

FieldTypeFlagsDescription
idstringread-only
display_idintegerread-only
hash_idstringread-only
external_refstring
custom_fieldsobject (free-form)tenant-defined fields
versionintegerread-only
created_atstring (date-time)read-only
updated_atstring (date-time)read-only
deleted_atstring (date-time)read-only
namestring
queryReportQuery
is_sharedboolean
descriptionstring
visibilityenum: private, team
pinnedboolean
owner_user_idstringread-only
principal_typeenum: network, partner, advertiserread-only
StatusDescriptionBody
200okapplication/json SavedReport
defaulterrorapplication/json Error
bash
curl -X PATCH 'https://api.metrixed.com/v1/advertiser/reports/saved/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"external_ref":""}'

Example 200 response:

json
{
  "external_ref": ""
}

DELETE /advertiser/reports/saved/{id}

Advertiser portal: delete a saved report

Operation deleteAdvertiserReportsSavedId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
204okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X DELETE 'https://api.metrixed.com/v1/advertiser/reports/saved/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 204 response:

json
{
  "ok": false
}

GET /advertiser/reports/schedules

Advertiser portal: scheduled reports

Operation getAdvertiserReportsSchedules. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserScheduleList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/reports/schedules' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

POST /advertiser/reports/schedules

Advertiser portal: schedule a saved report (or the default performance report) by email

Operation postAdvertiserReportsSchedules. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AdvertiserSchedule

StatusDescriptionBody
201okapplication/json AdvertiserSchedule
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/reports/schedules' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 201 response:

json
{}

PATCH /advertiser/reports/schedules/{id}

Advertiser portal: update or pause a scheduled report

Operation patchAdvertiserReportsSchedulesId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes

Request body (application/json, required): AdvertiserSchedule

StatusDescriptionBody
200okapplication/json AdvertiserSchedule
defaulterrorapplication/json Error
bash
curl -X PATCH 'https://api.metrixed.com/v1/advertiser/reports/schedules/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

DELETE /advertiser/reports/schedules/{id}

Advertiser portal: delete a scheduled report

Operation deleteAdvertiserReportsSchedulesId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
204okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X DELETE 'https://api.metrixed.com/v1/advertiser/reports/schedules/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 204 response:

json
{
  "ok": false
}

POST /advertiser/reports/schedules/{id}/run

Advertiser portal: run a scheduled report now (within a minute)

Operation postAdvertiserReportsSchedulesIdRun. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
202okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/reports/schedules/<id>/run' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 202 response:

json
{
  "ok": false
}

GET /advertiser/security

Advertiser portal: portal IP allowlist, caller IP and MFA coverage

Operation getAdvertiserSecurity. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserSecurity
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/security' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

PUT /advertiser/security

Advertiser portal: set the portal IP allowlist (IPs/CIDRs; must include the caller's IP; empty = everyone)

Operation putAdvertiserSecurity. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AdvertiserSecurity

StatusDescriptionBody
200okapplication/json AdvertiserSecurity
defaulterrorapplication/json Error
bash
curl -X PUT 'https://api.metrixed.com/v1/advertiser/security' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

GET /advertiser/statement

Advertiser portal: statement of account (from, to, currency): opening balance, daily charges and payments with running balance

Operation getAdvertiserStatement. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json AdvertiserStatement
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/statement' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/statement/export

Advertiser portal: statement of account as CSV or PDF (format=csv|pdf)

Operation getAdvertiserStatementExport. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json PdfFile
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/statement/export' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/topups

Advertiser portal: top-up requests and credited top-ups

Operation getAdvertiserTopups. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json TopupList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/topups' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertiser/users

Advertiser portal: own team members and pending invitations

Operation getAdvertiserUsers. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json PortalDoc
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertiser/users' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

POST /advertiser/users

Advertiser portal: invite a team member

Operation postAdvertiserUsers. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): PortalDoc

StatusDescriptionBody
201okapplication/json PortalDoc
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/users' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 201 response:

json
{}

PATCH /advertiser/users/{id}

Advertiser portal: change a team member's role or disable / re-enable them

Operation patchAdvertiserUsersId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes

Request body (application/json, required): TeamMemberPatch

StatusDescriptionBody
200okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X PATCH 'https://api.metrixed.com/v1/advertiser/users/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{
  "ok": false
}

DELETE /advertiser/users/invitations/{id}

Advertiser portal: revoke a pending invitation

Operation deleteAdvertiserUsersInvitationsId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
204okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X DELETE 'https://api.metrixed.com/v1/advertiser/users/invitations/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 204 response:

json
{
  "ok": false
}

POST /advertiser/users/invitations/{id}/resend

Advertiser portal: resend a pending invitation (new link, 7 more days)

Operation postAdvertiserUsersInvitationsIdResend. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json TeamInvitation
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertiser/users/invitations/<id>/resend' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{}

GET /advertisers

List Advertisers

Operation getAdvertisers. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
sortquerystringnofield or -field
includequerystringnocomma-separated relationships
filterqueryobject (free-form)no
qquerystringnofree-text search
StatusDescriptionBody
200okapplication/json AdvertiserList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertisers?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

POST /advertisers

Create Advertiser

Operation postAdvertisers. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AdvertiserCreate

FieldTypeFlagsDescription
namestringrequired
companystring
statusenum: active, pending, paused, disabled, rejected
business_unit_idstring
account_manager_idstring
sales_manager_idstring
internal_notesstring
tagsarray of string
contactobject (free-form)email, phone, website, address{address1,address2,city,region_code,country_code,zip}, accounting_contact_email, tax_id, vat_number
default_currencystring
reporting_timezonestring
redirect_modeenum: http302, http302_hide_referrer, http200_js, http200_js_hide_referrer, meta_refresh_single, meta_refresh_double, seo_friendly_301, direct_link, interstitial, app_store_smart
fallback_urlstring
blocked_partner_idsarray of string
platformobject (free-form)platform_name, platform_url, platform_username, offer_id_macro, affiliate_id_macro
postback_whitelist_ipsarray of string
postback_security_modeenum: none, token, ip, hmac
attribution_methodenum: last_touch, first_touch, linear, position_based, time_decay
email_attribution_methodstring
attribution_priorityenum: click, coupon
is_expose_partner_reporting_databoolean
billingobject (free-form)mode prepaid|postpaid, frequency, details, invoice_generation_days_delay, invoice_amount_threshold, default_payment_terms, credit_limit, auto_pause_on_zero_balance, is_invoice_creation_auto
signup_answersobject (free-form)
StatusDescriptionBody
201okapplication/json Advertiser
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertisers' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"name":""}'

Example 201 response:

json
{
  "external_ref": ""
}

GET /advertisers/{id}

Get Advertiser

Operation getAdvertisersId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json Advertiser
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertisers/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "external_ref": ""
}

PATCH /advertisers/{id}

Update Advertiser

Operation patchAdvertisersId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes

Request body (application/json, required): AdvertiserUpdate

FieldTypeFlagsDescription
namestring
companystring
statusenum: active, pending, paused, disabled, rejected
business_unit_idstring
account_manager_idstring
sales_manager_idstring
internal_notesstring
tagsarray of string
contactobject (free-form)email, phone, website, address{address1,address2,city,region_code,country_code,zip}, accounting_contact_email, tax_id, vat_number
default_currencystring
reporting_timezonestring
redirect_modeenum: http302, http302_hide_referrer, http200_js, http200_js_hide_referrer, meta_refresh_single, meta_refresh_double, seo_friendly_301, direct_link, interstitial, app_store_smart
fallback_urlstring
blocked_partner_idsarray of string
platformobject (free-form)platform_name, platform_url, platform_username, offer_id_macro, affiliate_id_macro
postback_whitelist_ipsarray of string
postback_security_modeenum: none, token, ip, hmac
attribution_methodenum: last_touch, first_touch, linear, position_based, time_decay
email_attribution_methodstring
attribution_priorityenum: click, coupon
is_expose_partner_reporting_databoolean
billingobject (free-form)mode prepaid|postpaid, frequency, details, invoice_generation_days_delay, invoice_amount_threshold, default_payment_terms, credit_limit, auto_pause_on_zero_balance, is_invoice_creation_auto
signup_answersobject (free-form)
StatusDescriptionBody
200okapplication/json Advertiser
defaulterrorapplication/json Error
bash
curl -X PATCH 'https://api.metrixed.com/v1/advertisers/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"name":"","company":"","status":"active","business_unit_id":""}'

Example 200 response:

json
{
  "external_ref": ""
}

DELETE /advertisers/{id}

Delete Advertiser

Operation deleteAdvertisersId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
204okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X DELETE 'https://api.metrixed.com/v1/advertisers/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 204 response:

json
{
  "ok": false
}

GET /advertisers/{id}/postback-setup

Postback setup of one advertiser: tracking origin, postback and reversal URL templates with its token, MMP templates

Operation getAdvertisersIdPostbackSetup. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json PostbackSetup
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertisers/<id>/postback-setup' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "tracking_base": "",
  "token_secured": false,
  "postback_url": "",
  "reversal_url": ""
}

GET /advertisers/{id}/users

Advertiser users

Operation getAdvertisersIdUsers. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json UserList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/advertisers/<id>/users' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

POST /advertisers/{id}/users

Create advertiser user

Operation postAdvertisersIdUsers. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes

Request body (application/json, required): UserCreate

FieldTypeFlagsDescription
emailstring (email)required
namestringrequired
statusstring
localestring
timezonestring
avatar_urlstring
StatusDescriptionBody
201okapplication/json User
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertisers/<id>/users' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"email":"user@example.com","name":""}'

Example 201 response:

json
{
  "external_ref": ""
}

POST /advertisers/bulk/apply

Bulk edit apply

Operation postAdvertisersBulkApply. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): BulkPatch

FieldTypeFlagsDescription
idsarray of stringrequired
patchesarray of objectrequired
StatusDescriptionBody
200okapplication/json BulkPreview
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertisers/bulk/apply' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"ids":[""],"patches":[{"field":"","value":{}}]}'

Example 200 response:

json
{
  "affected": 0,
  "changes": [
    {}
  ],
  "warnings": [
    ""
  ],
  "token": ""
}

POST /advertisers/bulk/delete

Delete up to 500 advertisers in one transaction (dry_run: true previews without saving)

Operation postAdvertisersBulkDelete. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): BulkDeleteRequest

StatusDescriptionBody
200okapplication/json BulkActionResult
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertisers/bulk/delete' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{}'

Example 200 response:

json
{}

POST /advertisers/bulk/preview

Bulk edit preview

Operation postAdvertisersBulkPreview. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): BulkPatch

FieldTypeFlagsDescription
idsarray of stringrequired
patchesarray of objectrequired
StatusDescriptionBody
200okapplication/json BulkPreview
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertisers/bulk/preview' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"ids":[""],"patches":[{"field":"","value":{}}]}'

Example 200 response:

json
{
  "affected": 0,
  "changes": [
    {}
  ],
  "warnings": [
    ""
  ],
  "token": ""
}

POST /advertisers/search

Search Advertisers (advanced)

Operation postAdvertisersSearch. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): SearchRequest

FieldTypeFlagsDescription
filtersarray of object
searchstring
sortarray of object (free-form)
pageinteger
page_sizeinteger
includearray of string
StatusDescriptionBody
200okapplication/json AdvertiserList
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/advertisers/search' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"filters":[{}],"search":"","sort":[{}],"page":0}'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

GET /mmp-templates

MMP postback templates (AppsFlyer, Adjust, Branch, Singular, Kochava): inbound postback URL for the MMP's partner setup and the outbound mmp: S2S preset; advertiser_id renders the URL with that advertiser's token

Operation getMmpTemplates. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
advertiser_idquerystringno
StatusDescriptionBody
200okapplication/json MMPTemplateList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/mmp-templates' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "data": [
    {}
  ]
}