API reference / Operations by tag
partners
Partners (affiliates, publishers, sub-networks): applications, tiers, approvals, per-offer settings, referrals and portal access.
99 operations. Base URL https://api.metrixed.com/v1; see authentication, errors and pagination.
Operations
| Method | Path | Summary |
|---|---|---|
| POST | /account-managers/assign | Bulk assign a manager: set account_manager_id (or account_executive_id / sales_manager_id) on many partners or advertisers, by ids or by moving a whole book from one employee (employee_id null clears). Audited per row; a restricted manager can only move rows it sees |
| GET | /partner-applications | List PartnerApplications |
| POST | /partner-applications | Create PartnerApplication |
| GET | /partner-applications/{id} | Get PartnerApplication |
| PATCH | /partner-applications/{id} | Update PartnerApplication |
| DELETE | /partner-applications/{id} | Delete PartnerApplication |
| POST | /partner-applications/{id}/decide | Approve or reject application |
| POST | /partner-applications/bulk/apply | Bulk edit apply |
| POST | /partner-applications/bulk/preview | Bulk edit preview |
| POST | /partner-applications/search | Search PartnerApplications (advanced) |
| GET | /partner-tier-rules | List PartnerTierRules |
| POST | /partner-tier-rules | Create PartnerTierRule |
| GET | /partner-tier-rules/{id} | Get PartnerTierRule |
| PATCH | /partner-tier-rules/{id} | Update PartnerTierRule |
| DELETE | /partner-tier-rules/{id} | Delete PartnerTierRule |
| POST | /partner-tier-rules/bulk/apply | Bulk edit apply |
| POST | /partner-tier-rules/bulk/preview | Bulk edit preview |
| POST | /partner-tier-rules/search | Search PartnerTierRules (advanced) |
| GET | /partner-tiers | List PartnerTiers |
| POST | /partner-tiers | Create PartnerTier |
| GET | /partner-tiers/{id} | Get PartnerTier |
| PATCH | /partner-tiers/{id} | Update PartnerTier |
| DELETE | /partner-tiers/{id} | Delete PartnerTier |
| GET | /partner-tiers/{id}/rules | Auto-tier rules of a tier |
| POST | /partner-tiers/{id}/rules | Add auto-tier rule |
| POST | /partner-tiers/bulk/apply | Bulk edit apply |
| POST | /partner-tiers/bulk/preview | Bulk edit preview |
| POST | /partner-tiers/evaluate | Evaluate auto-tier rules now (dry_run supported) |
| GET | /partner-tiers/history | Tier assignment history |
| POST | /partner-tiers/search | Search PartnerTiers (advanced) |
| GET | /partner/apps | Apps the partner can promote |
| POST | /partner/assistant/chat | Partner portal: ask the AI assistant about own offers, clicks, conversions and payouts (no revenue); streams Server-Sent Events |
| POST | /partner/clicks/search | Partner portal: raw click log of own clicks (no revenue, IP, user agent, destination URL, device ids or fraud rule ids; hidden columns cannot be filtered or searched) |
| GET | /partner/deals | Active deals visible to the partner |
| GET | /partner/me | Partner profile |
| PATCH | /partner/me | Update own profile |
| GET | /partner/offers | Offers visible to partner |
| GET | /partner/offers/{id} | Offer detail for partner |
| POST | /partner/offers/{id}/apply | Apply for offer |
| GET | /partner/offers/{id}/coupons | Coupons the partner may promote |
| GET | /partner/offers/{id}/creatives | Creative gallery (+ creative sets) visible to the partner |
| GET | /partner/offers/{id}/details | Partner portal: offer details (payouts per goal and geo, caps with used and left, traffic rules, landing pages when approved, application and questions, similar offers) |
| GET | /partner/offers/{id}/landing-pages | Landing pages visible to the partner |
| POST | /partner/offers/{id}/tracking-link | Generate own tracking link |
| POST | /partner/offers/search | Partner portal: offer marketplace (filters, facets that ignore their own filter, sort by payout/EPC/newest, paging); payouts per goal and geo |
| GET | /partner/onboarding | Partner portal: first-login checklist (profile, payment method, first click) |
| POST | /partner/onboarding/dismiss | Partner portal: hide the first-login checklist |
| GET | /partner/preferences | Partner portal: own time zone and the team's email notification preferences |
| PUT | /partner/preferences | Partner portal: save time zone and notification preferences (admins change team emails) |
| GET | /partner/product-feeds | Partner portal: product feeds available to the partner (open to all, or for offers the partner may run) |
| GET | /partner/product-feeds/{id}/download | Partner portal: download a product feed as CSV; with tracking links a tracking_url column holds the partner's link deep-linking to each product |
| GET | /partner/programmes | Partner portal: which programmes (calls, leads, iGaming, apps) this partner takes part in, for the navigation |
| GET | /partner/referrals | Partner portal: referral link and referred partners |
| GET | /partner/reports/catalog | Partner portal: report catalogue (only what the partner may see) |
| POST | /partner/reports/export | Partner portal: async report export (CSV/XLSX of the whole result) |
| GET | /partner/reports/export/{id} | Partner portal: export job status (own exports only) |
| POST | /partner/reports/mobile | Partner portal: own install / event stats of app offers |
| POST | /partner/reports/mobile/cohorts | Partner portal: own cohort grid |
| GET | /partner/reports/saved | Partner portal: saved reports (own and team) |
| POST | /partner/reports/saved | Partner portal: save a report |
| GET | /partner/reports/saved/{id} | Partner portal: get a saved report |
| PATCH | /partner/reports/saved/{id} | Partner portal: update a saved report |
| DELETE | /partner/reports/saved/{id} | Partner portal: delete a saved report |
| POST | /partner/reports/skan | Partner portal: own SKAN stats (no revenue) |
| POST | /partner/signup | Public: partner self-signup (creates a pending partner; the network approves and invites) |
| POST | /partner/signup/verify-email | Public: confirm a signup email with the mailed token |
| POST | /partner/signup/verify-email/send | Public: email a confirmation link to a pending signup (always 202, rate limited) |
| GET | /partner/smartlinks | Partner portal: smartlinks this partner may run |
| GET | /partner/smartlinks/{id} | Partner portal: one visible smartlink (id, display id or hash) |
| POST | /partner/smartlinks/{id}/tracking-link | Partner portal: own link for a visible smartlink (sub ids, source, native or query style, optional QR PNG) |
| GET | /partner/tier | Current tier, ladder and progress for the partner portal |
| GET | /partner/users | Partner portal: own team members and pending invitations |
| POST | /partner/users | Partner portal: invite a team member |
| PATCH | /partner/users/{id} | Partner portal: change a team member's role or disable / re-enable them |
| DELETE | /partner/users/invitations/{id} | Partner portal: revoke a pending invitation |
| POST | /partner/users/invitations/{id}/resend | Partner portal: resend a pending invitation (new link, 7 more days) |
| GET | /partners | List Partners |
| POST | /partners | Create Partner |
| GET | /partners/{id} | Get Partner |
| PATCH | /partners/{id} | Update Partner |
| DELETE | /partners/{id} | Delete Partner |
| POST | /partners/{id}/impersonate | Log in as this partner: one-time link (2 min) that opens the partner portal as the partner's first active user for 1 h. Signed-in staff with the impersonate action only; audited |
| GET | /partners/{id}/offers | Partner x offer settings (access, overrides) |
| PUT | /partners/{id}/offers/{offerId} | Set partner x offer settings |
| PUT | /partners/{id}/tier | Assign (lock) or clear a partner tier |
| GET | /partners/{id}/users | Partner users |
| POST | /partners/{id}/users | Create partner user |
| POST | /partners/bulk/apply | Bulk edit apply |
| POST | /partners/bulk/delete | Delete up to 500 partners in one transaction (dry_run: true previews without saving) |
| POST | /partners/bulk/preview | Bulk edit preview |
| POST | /partners/search | Search Partners (advanced) |
| GET | /traffic-sources | List TrafficSources |
| POST | /traffic-sources | Create TrafficSource |
| GET | /traffic-sources/{id} | Get TrafficSource |
| PATCH | /traffic-sources/{id} | Update TrafficSource |
| DELETE | /traffic-sources/{id} | Delete TrafficSource |
| POST | /traffic-sources/bulk/apply | Bulk edit apply |
| POST | /traffic-sources/bulk/preview | Bulk edit preview |
| POST | /traffic-sources/search | Search TrafficSources (advanced) |
POST /account-managers/assign
Bulk assign a manager: set account_manager_id (or account_executive_id / sales_manager_id) on many partners or advertisers, by ids or by moving a whole book from one employee (employee_id null clears). Audited per row; a restricted manager can only move rows it sees
Operation postAccountManagersAssign. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): AccountManagerAssign
| Field | Type | Flags | Description |
|---|---|---|---|
kind | enum: partner, advertiser | required | |
field | enum: account_manager_id, account_executive_id, sales_manager_id | ||
ids | array of string | ||
from_employee_id | string | ||
employee_id | string | nullable |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json AccountManagerAssigned |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/account-managers/assign' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"kind":"partner"}'
Example 200 response:
{
"updated": 0,
"ids": [
""
]
}
GET /partner-applications
List PartnerApplications
Operation getPartnerApplications. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerApplicationList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner-applications?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
POST /partner-applications
Create PartnerApplication
Operation postPartnerApplications. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PartnerApplicationCreate
| Field | Type | Flags | Description |
|---|---|---|---|
partner_id | string | ||
offer_id | string | ||
questionnaire_answers | object (free-form) | ||
status | enum: pending, approved, rejected | ||
reason | string |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json PartnerApplication |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-applications' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"partner_id":"","offer_id":"","questionnaire_answers":{},"status":"pending"}'
Example 201 response:
{
"external_ref": ""
}
GET /partner-applications/{id}
Get PartnerApplication
Operation getPartnerApplicationsId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerApplication |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner-applications/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
PATCH /partner-applications/{id}
Update PartnerApplication
Operation patchPartnerApplicationsId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerApplicationUpdate
| Field | Type | Flags | Description |
|---|---|---|---|
partner_id | string | ||
offer_id | string | ||
questionnaire_answers | object (free-form) | ||
status | enum: pending, approved, rejected | ||
reason | string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerApplication |
| default | error | application/json Error |
curl -X PATCH 'https://api.metrixed.com/v1/partner-applications/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"partner_id":"","offer_id":"","questionnaire_answers":{},"status":"pending"}'
Example 200 response:
{
"external_ref": ""
}
DELETE /partner-applications/{id}
Delete PartnerApplication
Operation deletePartnerApplicationsId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl -X DELETE 'https://api.metrixed.com/v1/partner-applications/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 204 response:
{
"ok": false
}
POST /partner-applications/{id}/decide
Approve or reject application
Operation postPartnerApplicationsIdDecide. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerApplicationDecision
| Field | Type | Flags | Description |
|---|---|---|---|
decision | enum: approved, rejected | ||
status | enum: approved, rejected | alias of decision | |
reason | string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerApplication |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-applications/<id>/decide' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"decision":"approved","status":"approved","reason":""}'
Example 200 response:
{
"external_ref": ""
}
POST /partner-applications/bulk/apply
Bulk edit apply
Operation postPartnerApplicationsBulkApply. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-applications/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partner-applications/bulk/preview
Bulk edit preview
Operation postPartnerApplicationsBulkPreview. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-applications/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partner-applications/search
Search PartnerApplications (advanced)
Operation postPartnerApplicationsSearch. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SearchRequest
| Field | Type | Flags | Description |
|---|---|---|---|
filters | array of object | ||
search | string | ||
sort | array of object (free-form) | ||
page | integer | ||
page_size | integer | ||
include | array of string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerApplicationList |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-applications/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:
{
"data": [
{}
],
"page": {}
}
GET /partner-tier-rules
List PartnerTierRules
Operation getPartnerTierRules. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTierRuleList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner-tier-rules?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
POST /partner-tier-rules
Create PartnerTierRule
Operation postPartnerTierRules. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PartnerTierRuleCreate
| Field | Type | Flags | Description |
|---|---|---|---|
tier_id | string | required | |
metric | enum: conversions, approved_conversions, revenue, payout, sale_amount, cr, clicks | required | |
window_days | integer | ||
min_value | string | decimal string | |
status | string |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json PartnerTierRule |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tier-rules' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"tier_id":"","metric":"conversions"}'
Example 201 response:
{
"external_ref": ""
}
GET /partner-tier-rules/{id}
Get PartnerTierRule
Operation getPartnerTierRulesId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTierRule |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner-tier-rules/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
PATCH /partner-tier-rules/{id}
Update PartnerTierRule
Operation patchPartnerTierRulesId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerTierRuleUpdate
| Field | Type | Flags | Description |
|---|---|---|---|
tier_id | string | ||
metric | enum: conversions, approved_conversions, revenue, payout, sale_amount, cr, clicks | ||
window_days | integer | ||
min_value | string | decimal string | |
status | string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTierRule |
| default | error | application/json Error |
curl -X PATCH 'https://api.metrixed.com/v1/partner-tier-rules/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"tier_id":"","metric":"conversions","window_days":0,"min_value":""}'
Example 200 response:
{
"external_ref": ""
}
DELETE /partner-tier-rules/{id}
Delete PartnerTierRule
Operation deletePartnerTierRulesId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl -X DELETE 'https://api.metrixed.com/v1/partner-tier-rules/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 204 response:
{
"ok": false
}
POST /partner-tier-rules/bulk/apply
Bulk edit apply
Operation postPartnerTierRulesBulkApply. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tier-rules/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partner-tier-rules/bulk/preview
Bulk edit preview
Operation postPartnerTierRulesBulkPreview. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tier-rules/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partner-tier-rules/search
Search PartnerTierRules (advanced)
Operation postPartnerTierRulesSearch. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SearchRequest
| Field | Type | Flags | Description |
|---|---|---|---|
filters | array of object | ||
search | string | ||
sort | array of object (free-form) | ||
page | integer | ||
page_size | integer | ||
include | array of string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTierRuleList |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tier-rules/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:
{
"data": [
{}
],
"page": {}
}
GET /partner-tiers
List PartnerTiers
Operation getPartnerTiers. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTierList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner-tiers?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
POST /partner-tiers
Create PartnerTier
Operation postPartnerTiers. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PartnerTierCreate
| Field | Type | Flags | Description |
|---|---|---|---|
name | string | required | |
description | string | ||
payout_multiplier | string | decimal string | |
auto_tier_rules | array of object (free-form) | ||
rank | integer | ||
commission_mode | enum: multiplier, absolute | ||
commission_amount | string | decimal string | |
hysteresis_percent | string | decimal string | |
min_days_in_tier | integer | ||
referral_percent | string | decimal string | |
benefits | string | ||
status | string |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json PartnerTier |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tiers' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"name":""}'
Example 201 response:
{
"external_ref": ""
}
GET /partner-tiers/{id}
Get PartnerTier
Operation getPartnerTiersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTier |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner-tiers/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
PATCH /partner-tiers/{id}
Update PartnerTier
Operation patchPartnerTiersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerTierUpdate
| Field | Type | Flags | Description |
|---|---|---|---|
name | string | ||
description | string | ||
payout_multiplier | string | decimal string | |
auto_tier_rules | array of object (free-form) | ||
rank | integer | ||
commission_mode | enum: multiplier, absolute | ||
commission_amount | string | decimal string | |
hysteresis_percent | string | decimal string | |
min_days_in_tier | integer | ||
referral_percent | string | decimal string | |
benefits | string | ||
status | string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTier |
| default | error | application/json Error |
curl -X PATCH 'https://api.metrixed.com/v1/partner-tiers/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"name":"","description":"","payout_multiplier":"","auto_tier_rules":[{}]}'
Example 200 response:
{
"external_ref": ""
}
DELETE /partner-tiers/{id}
Delete PartnerTier
Operation deletePartnerTiersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl -X DELETE 'https://api.metrixed.com/v1/partner-tiers/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 204 response:
{
"ok": false
}
GET /partner-tiers/{id}/rules
Auto-tier rules of a tier
Operation getPartnerTiersIdRules. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTierRuleList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner-tiers/<id>/rules' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
POST /partner-tiers/{id}/rules
Add auto-tier rule
Operation postPartnerTiersIdRules. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerTierRuleCreate
| Field | Type | Flags | Description |
|---|---|---|---|
tier_id | string | required | |
metric | enum: conversions, approved_conversions, revenue, payout, sale_amount, cr, clicks | required | |
window_days | integer | ||
min_value | string | decimal string | |
status | string |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json PartnerTierRule |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tiers/<id>/rules' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"tier_id":"","metric":"conversions"}'
Example 201 response:
{
"external_ref": ""
}
POST /partner-tiers/bulk/apply
Bulk edit apply
Operation postPartnerTiersBulkApply. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tiers/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partner-tiers/bulk/preview
Bulk edit preview
Operation postPartnerTiersBulkPreview. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tiers/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partner-tiers/evaluate
Evaluate auto-tier rules now (dry_run supported)
Operation postPartnerTiersEvaluate. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): Ok
| Field | Type | Flags | Description |
|---|---|---|---|
ok | boolean |
curl -X POST 'https://api.metrixed.com/v1/partner-tiers/evaluate' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"ok":false}'
Example 200 response:
{
"ok": false
}
GET /partner-tiers/history
Tier assignment history
Operation getPartnerTiersHistory. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
curl 'https://api.metrixed.com/v1/partner-tiers/history?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"ok": false
}
POST /partner-tiers/search
Search PartnerTiers (advanced)
Operation postPartnerTiersSearch. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SearchRequest
| Field | Type | Flags | Description |
|---|---|---|---|
filters | array of object | ||
search | string | ||
sort | array of object (free-form) | ||
page | integer | ||
page_size | integer | ||
include | array of string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerTierList |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner-tiers/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:
{
"data": [
{}
],
"page": {}
}
GET /partner/apps
Apps the partner can promote
Operation getPartnerApps. Auth: API key (Bearer) or session cookie.
curl 'https://api.metrixed.com/v1/partner/apps' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"ok": false
}
POST /partner/assistant/chat
Partner portal: ask the AI assistant about own offers, clicks, conversions and payouts (no revenue); streams Server-Sent Events
Operation postPartnerAssistantChat. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PortalDoc
curl -X POST 'https://api.metrixed.com/v1/partner/assistant/chat' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 200 response:
{}
POST /partner/clicks/search
Partner portal: raw click log of own clicks (no revenue, IP, user agent, destination URL, device ids or fraud rule ids; hidden columns cannot be filtered or searched)
Operation postPartnerClicksSearch. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): LogSearchRequest
| Field | Type | Flags | Description |
|---|---|---|---|
from | string (date-time) | ||
to | string (date-time) | ||
timezone | string | ||
filters | array of object (free-form) | ||
search | object (free-form) | type, value | |
fields | array of string | ||
limit | integer | ||
cursor | string | ||
sort | object (free-form) |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerClickPage |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/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:
{}
GET /partner/deals
Active deals visible to the partner
Operation getPartnerDeals. Auth: API key (Bearer) or session cookie.
curl 'https://api.metrixed.com/v1/partner/deals' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"ok": false
}
GET /partner/me
Partner profile
Operation getPartnerMe. Auth: API key (Bearer) or session cookie.
curl 'https://api.metrixed.com/v1/partner/me' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
PATCH /partner/me
Update own profile
Operation patchPartnerMe. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PartnerUpdate
| Field | Type | Flags | Description |
|---|---|---|---|
name | string | ||
company | string | ||
username | string | ||
status | enum: active, pending, paused, inactive, suspended, rejected, disabled | ||
tags | array of string | ||
account_manager_id | string | ||
account_executive_id | string | ||
tier_id | string | ||
referrer_partner_id | string | ||
traffic_source_id | string | ||
business_unit_id | string | ||
internal_notes | string | ||
is_demo | boolean | ||
contact | object (free-form) | email, phone, website, instant_messaging{type,id}, address{...}, region{currency,lang,country} | |
tracking | object (free-form) | default_tracking_domain_id, macro_defaults{sub1..sub10,source,app_name,app_id,gaid}, enable_media_cost_tracking_links, blocked_sources[], whitelisted_advertiser_ids[], allowed_tracking_link_format, postback_whitelist_ips[], can_see_advertiser_names | |
conversions_pending_default | boolean | ||
visibility_overrides | object (free-form) | adv1..adv10, sale_amount -> bool | |
billing | object (free-form) | currency, billing_frequency, billing_details{day_of_week,day_of_month_one,day_of_month_two,day_of_month,starting_month}, payment_method, payment_details{...}, tax_id, tax_form{type,status,file_ref}, is_invoice_creation_auto, auto_invoice_start_date, default_invoice_is_hidden, invoice_generation_days_delay, invoice_amount_threshold, default_payment_terms, payment_hold{on,reason}, vat_rate, reverse_charge | |
compliance | object (free-form) | accepted_terms_version, accepted_terms_at, kyc_status, risk_score | |
signup_answers | object (free-form) |
curl -X PATCH 'https://api.metrixed.com/v1/partner/me' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"name":"","company":"","username":"","status":"active"}'
Example 200 response:
{
"external_ref": ""
}
GET /partner/offers
Offers visible to partner
Operation getPartnerOffers. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
curl 'https://api.metrixed.com/v1/partner/offers?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
GET /partner/offers/{id}
Offer detail for partner
Operation getPartnerOffersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl 'https://api.metrixed.com/v1/partner/offers/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
POST /partner/offers/{id}/apply
Apply for offer
Operation postPartnerOffersIdApply. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerApplicationCreate
| Field | Type | Flags | Description |
|---|---|---|---|
partner_id | string | ||
offer_id | string | ||
questionnaire_answers | object (free-form) | ||
status | enum: pending, approved, rejected | ||
reason | string |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json PartnerApplication |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/offers/<id>/apply' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"partner_id":"","offer_id":"","questionnaire_answers":{},"status":"pending"}'
Example 201 response:
{
"external_ref": ""
}
GET /partner/offers/{id}/coupons
Coupons the partner may promote
Operation getPartnerOffersIdCoupons. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl 'https://api.metrixed.com/v1/partner/offers/<id>/coupons' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"ok": false
}
GET /partner/offers/{id}/creatives
Creative gallery (+ creative sets) visible to the partner
Operation getPartnerOffersIdCreatives. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl 'https://api.metrixed.com/v1/partner/offers/<id>/creatives' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"ok": false
}
GET /partner/offers/{id}/details
Partner portal: offer details (payouts per goal and geo, caps with used and left, traffic rules, landing pages when approved, application and questions, similar offers)
Operation getPartnerOffersIdDetails. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerOfferDetails |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/offers/<id>/details' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
GET /partner/offers/{id}/landing-pages
Landing pages visible to the partner
Operation getPartnerOffersIdLandingPages. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl 'https://api.metrixed.com/v1/partner/offers/<id>/landing-pages' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"ok": false
}
POST /partner/offers/{id}/tracking-link
Generate own tracking link
Operation postPartnerOffersIdTrackingLink. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): TrackingLinkRequest
| Field | Type | Flags | Description |
|---|---|---|---|
partner_id | string | required | |
tracking_domain_id | string | ||
landing_page_id | string | ||
creative_id | string | ||
style | enum: native, numeric, trackier, everflow, tune, affise, cake, app | ||
params | object (free-form) | sub1.. source etc. | |
deep_link | string | ||
encode_deep_link | boolean | ||
with_qr | boolean | ||
with_pixels | boolean | ||
google_ads_format | boolean | ||
force_transparent | boolean |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json TrackingLinkResult |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/offers/<id>/tracking-link' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"partner_id":""}'
Example 200 response:
{
"url": "",
"impression_url": "",
"click_pixel_html": "",
"impression_pixel_html": ""
}
POST /partner/offers/search
Partner portal: offer marketplace (filters, facets that ignore their own filter, sort by payout/EPC/newest, paging); payouts per goal and geo
Operation postPartnerOffersSearch. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PartnerOfferSearch
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerOfferSearchResult |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/offers/search' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 200 response:
{}
GET /partner/onboarding
Partner portal: first-login checklist (profile, payment method, first click)
Operation getPartnerOnboarding. Auth: API key (Bearer) or session cookie.
curl 'https://api.metrixed.com/v1/partner/onboarding' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
POST /partner/onboarding/dismiss
Partner portal: hide the first-login checklist
Operation postPartnerOnboardingDismiss. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PortalDoc
curl -X POST 'https://api.metrixed.com/v1/partner/onboarding/dismiss' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 200 response:
{}
GET /partner/preferences
Partner portal: own time zone and the team's email notification preferences
Operation getPartnerPreferences. Auth: API key (Bearer) or session cookie.
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerPreferences |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/preferences' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
PUT /partner/preferences
Partner portal: save time zone and notification preferences (admins change team emails)
Operation putPartnerPreferences. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PartnerPreferences
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerPreferences |
| default | error | application/json Error |
curl -X PUT 'https://api.metrixed.com/v1/partner/preferences' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 200 response:
{}
GET /partner/product-feeds
Partner portal: product feeds available to the partner (open to all, or for offers the partner may run) Partner portal: product feeds available to the partner (open to all, or for offers the partner may run). WP-67: naturally small; returns at most 500 rows and capped: true when that cap is hit.
Operation getPartnerProductFeeds. Auth: API key (Bearer) or session cookie.
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerProductFeedList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/product-feeds' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
]
}
GET /partner/product-feeds/{id}/download
Partner portal: download a product feed as CSV; with tracking links a tracking_url column holds the partner's link deep-linking to each product
Operation getPartnerProductFeedsIdDownload. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl 'https://api.metrixed.com/v1/partner/product-feeds/<id>/download' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
GET /partner/programmes
Partner portal: which programmes (calls, leads, iGaming, apps) this partner takes part in, for the navigation
Operation getPartnerProgrammes. Auth: API key (Bearer) or session cookie.
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerProgrammes |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/programmes' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
GET /partner/referrals
Partner portal: referral link and referred partners Partner portal: referral link and referred partners. WP-67: referred partners are paged; count and active are totals.
Operation getPartnerReferrals. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
q | query | string | no | |
page | query | string | no | |
page_size | query | string | no |
curl 'https://api.metrixed.com/v1/partner/referrals?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
GET /partner/reports/catalog
Partner portal: report catalogue (only what the partner may see)
Operation getPartnerReportsCatalog. Auth: API key (Bearer) or session cookie.
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json ReportCatalog |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/reports/catalog' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"principal": "network",
"endpoint": "",
"dimensions": [
{}
],
"metrics": [
{}
]
}
POST /partner/reports/export
Partner portal: async report export (CSV/XLSX of the whole result)
Operation postPartnerReportsExport. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): ExportRequest
| Field | Type | Flags | Description |
|---|---|---|---|
query | ReportQuery | ||
log | LogSearchRequest | ||
format | enum: csv, tsv, xlsx, json, parquet | ||
notify_email | string | ||
labels | boolean |
curl -X POST 'https://api.metrixed.com/v1/partner/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:
{
"external_ref": ""
}
GET /partner/reports/export/{id}
Partner portal: export job status (own exports only)
Operation getPartnerReportsExportId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json ExportStatus |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/reports/export/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"job_id": "",
"status": "queued",
"progress": 0,
"kind": ""
}
POST /partner/reports/mobile
Partner portal: own install / event stats of app offers
Operation postPartnerReportsMobile. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): MobileQuery
| Field | Type | Flags | Description |
|---|---|---|---|
from | string (date) | required | |
to | string (date) | required | |
dimensions | array of enum: app, app_id, platform, partner, partner_id, offer, country, install_date, match_type, install_kind | ||
metrics | array of string | ||
filters | array of object (free-form) | ||
sort | array of object (free-form) | ||
limit | integer | ||
days | array of integer | ||
cohort_by | string | ||
cohort_kind | enum: retention, ltv, active |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json ReportResult |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/reports/mobile' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"from":"","to":""}'
Example 200 response:
{
"columns": [
{}
],
"rows": [
[
{}
]
],
"totals": {},
"next_cursor": ""
}
POST /partner/reports/mobile/cohorts
Partner portal: own cohort grid
Operation postPartnerReportsMobileCohorts. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): MobileQuery
| Field | Type | Flags | Description |
|---|---|---|---|
from | string (date) | required | |
to | string (date) | required | |
dimensions | array of enum: app, app_id, platform, partner, partner_id, offer, country, install_date, match_type, install_kind | ||
metrics | array of string | ||
filters | array of object (free-form) | ||
sort | array of object (free-form) | ||
limit | integer | ||
days | array of integer | ||
cohort_by | string | ||
cohort_kind | enum: retention, ltv, active |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json CohortResult |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/reports/mobile/cohorts' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"from":"","to":""}'
Example 200 response:
{
"kind": "",
"days": [
0
],
"columns": [
{}
],
"rows": [
[
{}
]
]
}
GET /partner/reports/saved
Partner portal: saved reports (own and team)
Operation getPartnerReportsSaved. Auth: API key (Bearer) or session cookie.
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json SavedReportList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/reports/saved' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"rows": [
{}
],
"has_more": false
}
POST /partner/reports/saved
Partner portal: save a report
Operation postPartnerReportsSaved. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SavedReport
| Field | Type | Flags | Description |
|---|---|---|---|
id | string | read-only | |
display_id | integer | read-only | |
hash_id | string | read-only | |
external_ref | string | ||
custom_fields | object (free-form) | tenant-defined fields | |
version | integer | read-only | |
created_at | string (date-time) | read-only | |
updated_at | string (date-time) | read-only | |
deleted_at | string (date-time) | read-only | |
name | string | ||
query | ReportQuery | ||
is_shared | boolean | ||
description | string | ||
visibility | enum: private, team | ||
pinned | boolean | ||
owner_user_id | string | read-only | |
principal_type | enum: network, partner, advertiser | read-only |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json SavedReport |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/reports/saved' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"external_ref":""}'
Example 201 response:
{
"external_ref": ""
}
GET /partner/reports/saved/{id}
Partner portal: get a saved report
Operation getPartnerReportsSavedId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json SavedReport |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/reports/saved/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
PATCH /partner/reports/saved/{id}
Partner portal: update a saved report
Operation patchPartnerReportsSavedId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): SavedReport
| Field | Type | Flags | Description |
|---|---|---|---|
id | string | read-only | |
display_id | integer | read-only | |
hash_id | string | read-only | |
external_ref | string | ||
custom_fields | object (free-form) | tenant-defined fields | |
version | integer | read-only | |
created_at | string (date-time) | read-only | |
updated_at | string (date-time) | read-only | |
deleted_at | string (date-time) | read-only | |
name | string | ||
query | ReportQuery | ||
is_shared | boolean | ||
description | string | ||
visibility | enum: private, team | ||
pinned | boolean | ||
owner_user_id | string | read-only | |
principal_type | enum: network, partner, advertiser | read-only |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json SavedReport |
| default | error | application/json Error |
curl -X PATCH 'https://api.metrixed.com/v1/partner/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:
{
"external_ref": ""
}
DELETE /partner/reports/saved/{id}
Partner portal: delete a saved report
Operation deletePartnerReportsSavedId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl -X DELETE 'https://api.metrixed.com/v1/partner/reports/saved/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 204 response:
{
"ok": false
}
POST /partner/reports/skan
Partner portal: own SKAN stats (no revenue)
Operation postPartnerReportsSkan. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): MobileQuery
| Field | Type | Flags | Description |
|---|---|---|---|
from | string (date) | required | |
to | string (date) | required | |
dimensions | array of enum: app, app_id, platform, partner, partner_id, offer, country, install_date, match_type, install_kind | ||
metrics | array of string | ||
filters | array of object (free-form) | ||
sort | array of object (free-form) | ||
limit | integer | ||
days | array of integer | ||
cohort_by | string | ||
cohort_kind | enum: retention, ltv, active |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json ReportResult |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/reports/skan' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"from":"","to":""}'
Example 200 response:
{
"columns": [
{}
],
"rows": [
[
{}
]
],
"totals": {},
"next_cursor": ""
}
POST /partner/signup
Public: partner self-signup (creates a pending partner; the network approves and invites)
Operation postPartnerSignup. Auth: none (public endpoint).
Request body (application/json, required): PortalDoc
curl -X POST 'https://api.metrixed.com/v1/partner/signup' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 201 response:
{}
POST /partner/signup/verify-email
Public: confirm a signup email with the mailed token
Operation postPartnerSignupVerifyEmail. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SignupVerify
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json SignupVerifyResult |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/signup/verify-email' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 200 response:
{}
POST /partner/signup/verify-email/send
Public: email a confirmation link to a pending signup (always 202, rate limited)
Operation postPartnerSignupVerifyEmailSend. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SignupVerifySend
curl -X POST 'https://api.metrixed.com/v1/partner/signup/verify-email/send' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 202 response:
{
"ok": false
}
GET /partner/smartlinks
Partner portal: smartlinks this partner may run
Operation getPartnerSmartlinks. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
search | query | string | no | |
limit | query | integer | no |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerSmartlinkList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/smartlinks' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"has_more": false
}
GET /partner/smartlinks/{id}
Partner portal: one visible smartlink (id, display id or hash)
Operation getPartnerSmartlinksId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerSmartlink |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partner/smartlinks/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"id": "",
"display_id": 0,
"name": "",
"description": ""
}
POST /partner/smartlinks/{id}/tracking-link
Partner portal: own link for a visible smartlink (sub ids, source, native or query style, optional QR PNG)
Operation postPartnerSmartlinksIdTrackingLink. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerSmartlinkLinkRequest
| Field | Type | Flags | Description |
|---|---|---|---|
params | object (free-form) | sub1..sub10, source, sub_source, gaid, idfa, aff_click_id, deep_link, creative_id | |
style | enum: native, query | ||
with_qr | boolean |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerSmartlinkLink |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/smartlinks/<id>/tracking-link' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"params":{},"style":"native","with_qr":false}'
Example 200 response:
{
"url": "",
"smartlink_id": "",
"name": "",
"qr_png_base64": ""
}
GET /partner/tier
Current tier, ladder and progress for the partner portal
Operation getPartnerTier. Auth: API key (Bearer) or session cookie.
curl 'https://api.metrixed.com/v1/partner/tier' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"ok": false
}
GET /partner/users
Partner portal: own team members and pending invitations
Operation getPartnerUsers. Auth: API key (Bearer) or session cookie.
curl 'https://api.metrixed.com/v1/partner/users' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
POST /partner/users
Partner portal: invite a team member
Operation postPartnerUsers. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PortalDoc
curl -X POST 'https://api.metrixed.com/v1/partner/users' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 201 response:
{}
PATCH /partner/users/{id}
Partner portal: change a team member's role or disable / re-enable them
Operation patchPartnerUsersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): TeamMemberPatch
curl -X PATCH 'https://api.metrixed.com/v1/partner/users/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 200 response:
{
"ok": false
}
DELETE /partner/users/invitations/{id}
Partner portal: revoke a pending invitation
Operation deletePartnerUsersInvitationsId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl -X DELETE 'https://api.metrixed.com/v1/partner/users/invitations/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 204 response:
{
"ok": false
}
POST /partner/users/invitations/{id}/resend
Partner portal: resend a pending invitation (new link, 7 more days)
Operation postPartnerUsersInvitationsIdResend. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json TeamInvitation |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partner/users/invitations/<id>/resend' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{}
GET /partners
List Partners
Operation getPartners. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partners?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
POST /partners
Create Partner
Operation postPartners. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): PartnerCreate
| Field | Type | Flags | Description |
|---|---|---|---|
name | string | required | |
company | string | ||
username | string | ||
status | enum: active, pending, paused, inactive, suspended, rejected, disabled | ||
tags | array of string | ||
account_manager_id | string | ||
account_executive_id | string | ||
tier_id | string | ||
referrer_partner_id | string | ||
traffic_source_id | string | ||
business_unit_id | string | ||
internal_notes | string | ||
is_demo | boolean | ||
contact | object (free-form) | email, phone, website, instant_messaging{type,id}, address{...}, region{currency,lang,country} | |
tracking | object (free-form) | default_tracking_domain_id, macro_defaults{sub1..sub10,source,app_name,app_id,gaid}, enable_media_cost_tracking_links, blocked_sources[], whitelisted_advertiser_ids[], allowed_tracking_link_format, postback_whitelist_ips[], can_see_advertiser_names | |
conversions_pending_default | boolean | ||
visibility_overrides | object (free-form) | adv1..adv10, sale_amount -> bool | |
billing | object (free-form) | currency, billing_frequency, billing_details{day_of_week,day_of_month_one,day_of_month_two,day_of_month,starting_month}, payment_method, payment_details{...}, tax_id, tax_form{type,status,file_ref}, is_invoice_creation_auto, auto_invoice_start_date, default_invoice_is_hidden, invoice_generation_days_delay, invoice_amount_threshold, default_payment_terms, payment_hold{on,reason}, vat_rate, reverse_charge | |
compliance | object (free-form) | accepted_terms_version, accepted_terms_at, kyc_status, risk_score | |
signup_answers | object (free-form) |
curl -X POST 'https://api.metrixed.com/v1/partners' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"name":""}'
Example 201 response:
{
"external_ref": ""
}
GET /partners/{id}
Get Partner
Operation getPartnersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl 'https://api.metrixed.com/v1/partners/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
PATCH /partners/{id}
Update Partner
Operation patchPartnersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): PartnerUpdate
| Field | Type | Flags | Description |
|---|---|---|---|
name | string | ||
company | string | ||
username | string | ||
status | enum: active, pending, paused, inactive, suspended, rejected, disabled | ||
tags | array of string | ||
account_manager_id | string | ||
account_executive_id | string | ||
tier_id | string | ||
referrer_partner_id | string | ||
traffic_source_id | string | ||
business_unit_id | string | ||
internal_notes | string | ||
is_demo | boolean | ||
contact | object (free-form) | email, phone, website, instant_messaging{type,id}, address{...}, region{currency,lang,country} | |
tracking | object (free-form) | default_tracking_domain_id, macro_defaults{sub1..sub10,source,app_name,app_id,gaid}, enable_media_cost_tracking_links, blocked_sources[], whitelisted_advertiser_ids[], allowed_tracking_link_format, postback_whitelist_ips[], can_see_advertiser_names | |
conversions_pending_default | boolean | ||
visibility_overrides | object (free-form) | adv1..adv10, sale_amount -> bool | |
billing | object (free-form) | currency, billing_frequency, billing_details{day_of_week,day_of_month_one,day_of_month_two,day_of_month,starting_month}, payment_method, payment_details{...}, tax_id, tax_form{type,status,file_ref}, is_invoice_creation_auto, auto_invoice_start_date, default_invoice_is_hidden, invoice_generation_days_delay, invoice_amount_threshold, default_payment_terms, payment_hold{on,reason}, vat_rate, reverse_charge | |
compliance | object (free-form) | accepted_terms_version, accepted_terms_at, kyc_status, risk_score | |
signup_answers | object (free-form) |
curl -X PATCH 'https://api.metrixed.com/v1/partners/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"name":"","company":"","username":"","status":"active"}'
Example 200 response:
{
"external_ref": ""
}
DELETE /partners/{id}
Delete Partner
Operation deletePartnersId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl -X DELETE 'https://api.metrixed.com/v1/partners/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 204 response:
{
"ok": false
}
POST /partners/{id}/impersonate
Log in as this partner: one-time link (2 min) that opens the partner portal as the partner's first active user for 1 h. Signed-in staff with the impersonate action only; audited
Operation postPartnersIdImpersonate. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json ImpersonateLink |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partners/<id>/impersonate' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 201 response:
{}
GET /partners/{id}/offers
Partner x offer settings (access, overrides)
Operation getPartnersIdOffers. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | |
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerOfferSettingList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/partners/<id>/offers?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
PUT /partners/{id}/offers/{offerId}
Set partner x offer settings
Operation putPartnersIdOffersOfferId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | |
offerId | path | string | yes |
Request body (application/json, required): PartnerOfferSettingUpdate
| Field | Type | Flags | Description |
|---|---|---|---|
access_status | enum: requested, approved, denied, blocked | ||
custom_scrub | object (free-form) | percentage, status | |
custom_tracking_domain_id | string | ||
visibility_override | string | ||
pixel_whitelist | array of string | ||
notes | string | ||
payout_entries | array of PayoutRevenueEntry | ||
caps | array of Cap |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerOfferSetting |
| default | error | application/json Error |
curl -X PUT 'https://api.metrixed.com/v1/partners/<id>/offers/<offerId>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"access_status":"requested","custom_scrub":{},"custom_tracking_domain_id":"","visibility_override":""}'
Example 200 response:
{
"external_ref": ""
}
PUT /partners/{id}/tier
Assign (lock) or clear a partner tier
Operation putPartnersIdTier. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): Ok
| Field | Type | Flags | Description |
|---|---|---|---|
ok | boolean |
curl -X PUT 'https://api.metrixed.com/v1/partners/<id>/tier' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"ok":false}'
Example 200 response:
{
"external_ref": ""
}
GET /partners/{id}/users
Partner users
Operation getPartnersIdUsers. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl 'https://api.metrixed.com/v1/partners/<id>/users' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
POST /partners/{id}/users
Create partner user
Operation postPartnersIdUsers. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): UserCreate
| Field | Type | Flags | Description |
|---|---|---|---|
email | string (email) | required | |
name | string | required | |
status | string | ||
locale | string | ||
timezone | string | ||
avatar_url | string |
curl -X POST 'https://api.metrixed.com/v1/partners/<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:
{
"external_ref": ""
}
POST /partners/bulk/apply
Bulk edit apply
Operation postPartnersBulkApply. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partners/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partners/bulk/delete
Delete up to 500 partners in one transaction (dry_run: true previews without saving)
Operation postPartnersBulkDelete. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkDeleteRequest
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkActionResult |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partners/bulk/delete' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{}'
Example 200 response:
{}
POST /partners/bulk/preview
Bulk edit preview
Operation postPartnersBulkPreview. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partners/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /partners/search
Search Partners (advanced)
Operation postPartnersSearch. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SearchRequest
| Field | Type | Flags | Description |
|---|---|---|---|
filters | array of object | ||
search | string | ||
sort | array of object (free-form) | ||
page | integer | ||
page_size | integer | ||
include | array of string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json PartnerList |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/partners/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:
{
"data": [
{}
],
"page": {}
}
GET /traffic-sources
List TrafficSources
Operation getTrafficSources. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | no | |
page_size | query | integer | no | |
sort | query | string | no | field or -field |
include | query | string | no | comma-separated relationships |
filter | query | object (free-form) | no | |
q | query | string | no | free-text search |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json TrafficSourceList |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/traffic-sources?page=1&page_size=50' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"data": [
{}
],
"page": {}
}
POST /traffic-sources
Create TrafficSource
Operation postTrafficSources. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): TrafficSourceCreate
| Field | Type | Flags | Description |
|---|---|---|---|
name | string | required | |
type | string | ||
cost_model | string | ||
postback_template | string | ||
cost_tokens | object (free-form) | ||
parameters | array of object (free-form) | ||
is_visible_to_partners | boolean | ||
status | string |
| Status | Description | Body |
|---|---|---|
| 201 | ok | application/json TrafficSource |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/traffic-sources' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"name":""}'
Example 201 response:
{
"external_ref": ""
}
GET /traffic-sources/{id}
Get TrafficSource
Operation getTrafficSourcesId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json TrafficSource |
| default | error | application/json Error |
curl 'https://api.metrixed.com/v1/traffic-sources/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 200 response:
{
"external_ref": ""
}
PATCH /traffic-sources/{id}
Update TrafficSource
Operation patchTrafficSourcesId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
Request body (application/json, required): TrafficSourceUpdate
| Field | Type | Flags | Description |
|---|---|---|---|
name | string | ||
type | string | ||
cost_model | string | ||
postback_template | string | ||
cost_tokens | object (free-form) | ||
parameters | array of object (free-form) | ||
is_visible_to_partners | boolean | ||
status | string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json TrafficSource |
| default | error | application/json Error |
curl -X PATCH 'https://api.metrixed.com/v1/traffic-sources/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data-raw '{"name":"","type":"","cost_model":"","postback_template":""}'
Example 200 response:
{
"external_ref": ""
}
DELETE /traffic-sources/{id}
Delete TrafficSource
Operation deleteTrafficSourcesId. Auth: API key (Bearer) or session cookie.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes |
curl -X DELETE 'https://api.metrixed.com/v1/traffic-sources/<id>' \
-H "Authorization: Bearer $DT_API_KEY" \
-H 'Accept: application/json'
Example 204 response:
{
"ok": false
}
POST /traffic-sources/bulk/apply
Bulk edit apply
Operation postTrafficSourcesBulkApply. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/traffic-sources/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /traffic-sources/bulk/preview
Bulk edit preview
Operation postTrafficSourcesBulkPreview. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): BulkPatch
| Field | Type | Flags | Description |
|---|---|---|---|
ids | array of string | required | |
patches | array of object | required |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json BulkPreview |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/traffic-sources/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:
{
"affected": 0,
"changes": [
{}
],
"warnings": [
""
],
"token": ""
}
POST /traffic-sources/search
Search TrafficSources (advanced)
Operation postTrafficSourcesSearch. Auth: API key (Bearer) or session cookie.
Request body (application/json, required): SearchRequest
| Field | Type | Flags | Description |
|---|---|---|---|
filters | array of object | ||
search | string | ||
sort | array of object (free-form) | ||
page | integer | ||
page_size | integer | ||
include | array of string |
| Status | Description | Body |
|---|---|---|
| 200 | ok | application/json TrafficSourceList |
| default | error | application/json Error |
curl -X POST 'https://api.metrixed.com/v1/traffic-sources/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:
{
"data": [
{}
],
"page": {}
}