This documentation aims to provide all the information you need to work with our API. The v2 (and above) API follows the Design Principles and Guidelines. If you find anything that doesn't comply, please complain to the dev team immediately 👮
To authenticate requests, include a Authorization
header with the value "{accessToken}"
.
All authenticated endpoints are marked with a requires authentication
badge in the documentation below.
For more information see Authentication in the P&E docs.
Manages the creator blocklist for an advertiser.
Creators added to the blocklist will not see the advertiser nor be able to convert links for that advertiser.
The ID of the advertiser.
Filters results to match user ID or username. Must not be greater than 128 characters.
curl --request GET \
--get "https://api.metapic.dev/v2/advertisers/16/blocklist?query=rzqsnuktuzqbyjti" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"data": [
{
"id": 73,
"created_at": "2025-04-02 14:51:41",
"created_by": {
"id": 3035,
"username": "kathleen78",
"email": "[email protected]",
"client_id": 3140
},
"user_tag": {
"id": 135,
"name": "Mr. Tremaine Abshire",
"slug": "sunt-repellendus",
"access_level": 1,
"store_id": null
}
},
{
"id": 74,
"created_at": "2025-04-02 14:51:41",
"created_by": {
"id": 3036,
"username": "alessandra.treutel",
"email": "[email protected]",
"client_id": 3141
},
"user_tag": {
"id": 136,
"name": "Jana Russel",
"slug": "provident-corrupti",
"access_level": 1,
"store_id": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 10,
"to": 2,
"total": 2
}
}
Adds the given entries to the blocklist, ignoring them if they previously existed.
The ID of the advertiser.
curl --request POST \
"https://api.metapic.dev/v2/advertisers/12/blocklist" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_ids\": [
23
],
\"user_tag_ids\": [
10
]
}"
The ID of the advertiser.
The ID of the target.
curl --request DELETE \
"https://api.metapic.dev/v2/advertisers/4/blocklist/16" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Endpoint for querying & sorting all advertiser groups.
Only return advertiser groups which have return ads enabled.
Page size. Defaults to 20. Must not be greater than 100.
Must follow the correct format: column_name:direction
,
where column_name
must be a valid property for given resource and direction
can be one of asc|desc
,
both of which are required if sort_by
is present.
curl --request GET \
--get "https://api.metapic.dev/v2/advertiser-groups?return_ad_enabled=&size=20&sort_by=created_at%3Adesc" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"data": [
{
"id": 3779,
"name": "Wehner, Streich and Hermiston",
"key": "te_IN",
"currency": "EUR"
},
{
"id": 3780,
"name": "Barrows, Kemmer and Kub",
"key": "aa_ET",
"currency": "PLN"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
The ID of the affiliate link.
curl --request GET \
--get "https://api.metapic.dev/v2/affiliate-links/provident" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 794,
"url": "http://www.okon.biz/et-excepturi-ea-esse-nesciunt-et-illo-odio.html",
"original_url": "http://www.rogahn.com/aut-occaecati-unde-dignissimos",
"mtpc_url": "https://c.mtpc.se/794",
"user_id": 3039,
"country": "KR",
"provider": "white",
"advertiser": {
"id": 1806,
"name": "Zboncak-Prosacco"
}
}
Returns advertisers if there are multiple advertisers to match the url with. Otherwise, returns the affiliate link.
curl --request POST \
"https://api.metapic.dev/v2/affiliate-links" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"url\": \"https:\\/\\/advertiser.com\",
\"advertiser_id\": 12,
\"advertiser_preview\": true,
\"advertiser_group_id\": 1,
\"dry\": true
}"
{
"status": "success",
"affiliate_link": {
"status": "success",
"id": 795,
"url": "http://www.jones.com/animi-quod-deleniti-fuga-ex",
"original_url": "http://halvorson.com/maiores-ut-commodi-quibusdam-eum-et-enim",
"mtpc_url": "https://c.mtpc.se/795",
"user_id": 3040,
"country": "DZ",
"provider": "maroon",
"advertiser": {
"id": 1807,
"name": "Reinger and Sons"
}
}
}
Endpoint for querying & sorting all clients.
Query by id or name. Returns all clients where id is equal to query
OR name contains query
OR any revenue tier name contains query
. Must not be greater than 128 characters.
Query by advertiser group. Returns all clients which belong to the given advertiser_group_ids
.
Page size. Defaults to 20. Must not be greater than 500.
Must follow the correct format: column_name:direction
,
where column_name
must be a valid property for given resource and direction
can be one of asc|desc
,
both of which are required if sort_by
is present.
curl --request GET \
--get "https://api.metapic.dev/v2/clients?query=internal+name&advertiser_group_ids[]=1&size=20&sort_by=created_at%3Adesc" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"data": [
{
"id": 3142,
"name": "Kim McDermott",
"client_id": "Get4fQqvKr",
"has_own_payment_system": false,
"revenue_share": 1
},
{
"id": 3143,
"name": "Nat Hansen",
"client_id": "Omq5iRRiJM",
"has_own_payment_system": false,
"revenue_share": 1
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Operations on Media posted by Creators
Filters media by username.
Filter user media by show store value.
all
0
1
2
Filters media by type.
all
instagram
tiktok
youtube
Filter user media by favorite value.
all
1
0
:shrug:.
Format to export.
csv
xlsx
json
curl --request GET \
--get "https://api.metapic.dev/v2/user-media?query=in&status=1&type=all&favorite=all&group=2&format=csv" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"current_page": 1,
"data": [
{
"id": 1,
"media_type": "youtube",
"media_id": "FLR0BB4qDt8",
"username": "hamida_most",
"tag_id": null,
"user_id": null,
"favorite": 1,
"show_store": 1,
"published_at": "2023-05-13",
"created_at": "2023-07-18T12:02:53.000000Z",
"updated_at": "2023-07-18T12:09:13.000000Z"
},
{
"id": 2,
"media_type": "tiktok",
"username": "juliaringblomm",
"tag_id": null,
"user_id": null,
"favorite": 1,
"show_store": 0,
"published_at": "2023-06-17",
"created_at": "2023-07-18T12:10:49.000000Z",
"updated_at": "2023-07-18T13:39:28.000000Z",
"media": {
"content_type": "video/mp4",
"href": "https://metapic-tiktok-media.example/juliaringblomm/7245692137566653722"
}
},
{
"id": 3,
"media_type": "instagram",
"username": "juliaringblomm",
"tag_id": null,
"user_id": null,
"favorite": 1,
"show_store": 0,
"published_at": "2023-06-17",
"created_at": "2023-07-18T12:10:49.000000Z",
"updated_at": "2023-07-18T13:39:28.000000Z",
"media": {
"content_type": "video/mp4",
"href": "https://metapic-instragram-media.example/juliaringblomm/7245692137566653722"
}
},
{
"id": 4,
"media_type": "instagram",
"username": "juliaringblomm",
"tag_id": null,
"user_id": null,
"favorite": 1,
"show_store": 0,
"published_at": "2023-06-17",
"created_at": "2023-07-18T12:10:49.000000Z",
"updated_at": "2023-07-18T13:39:28.000000Z",
"media": {
"content_type": "image/jpeg",
"href": "https://metapic-instragram-media.example/juliaringblomm/7245692137566653722"
}
}
],
"first_page_url": "http://metapic-api.my/user-media?page=1",
"from": 1,
"last_page": 3,
"last_page_url": "http://metapic-api.my/user-media?page=3",
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "http://metapic-api.my/user-media?page=1",
"label": "1",
"active": true
},
{
"url": "http://metapic-api.my/user-media?page=2",
"label": "2",
"active": false
},
{
"url": "http://metapic-api.my/user-media?page=3",
"label": "3",
"active": false
},
{
"url": "http://metapic-api.my/user-media?page=2",
"label": "Next »",
"active": false
}
],
"next_page_url": "http://metapic-api.my/user-media?page=2",
"path": "http://metapic-api.my/user-media",
"per_page": 5,
"prev_page_url": null,
"to": 5,
"total": 12
}
curl --request GET \
--get "https://api.metapic.dev/v2/store-categories" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
[
{
"id": 49,
"name": "Beauty"
},
{
"id": 50,
"name": "Books"
}
]
curl --request GET \
--get "https://api.metapic.dev/v2/payments/getPaymentInvoices" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"payment_period\": \"2025-04\"
}"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
The ID of the user.
curl --request GET \
--get "https://api.metapic.dev/v2/users/19/stores-by-categories" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
The ID of the user.
curl --request GET \
--get "https://api.metapic.dev/v2/users/20/stores-by-toplist" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
curl --request POST \
"https://api.metapic.dev/v2/payments/upload-ax-id-matching" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"file\": \"dz\"
}"
curl --request POST \
"https://api.metapic.dev/v2/payments/mark-invoices-as-paid" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"file\": \"enbqipxeqabulvghcuygzpm\"
}"
curl --request GET \
--get "https://api.metapic.dev/v2/entrypoint" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"app\": \"agency\",
\"store_id\": 10
}"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
Creates new campaign for a store.
The store ID.
curl --request POST \
"https://api.metapic.dev/v2/stores/15/offers" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"store_group_id\": 10,
\"type\": \"store_accept\",
\"name\": \"Summer campaign for VIP creators\",
\"campaign_title\": \"Summer campaign\",
\"campaign_text\": \"This is a summer campaign!\",
\"has_product_seeding\": true,
\"has_onetime_payment\": false,
\"per_user_limit\": true,
\"one_time_payment\": 3901140.2,
\"budget_limit\": 18,
\"max_clicks\": 12,
\"valid_from\": \"2025-04-02T16:51:40\",
\"valid_until\": \"2057-11-11\",
\"todo\": [
\"segcognlfigxydifyp\"
],
\"show_for_advertiser\": true,
\"priority_after\": 20,
\"shared_budget_id\": 1,
\"shared_budget\": {
\"title\": \"Summer budget\",
\"amount\": 10000
},
\"targets\": {
\"user_ids\": [
8
],
\"user_tag_ids\": [
7
],
\"store_group_ids\": [
7
],
\"emails\": [
\"[email protected]\"
],
\"social_media_identifiers\": [
\"itqeplhzyf\"
],
\"client_ids\": [
1
],
\"revenue_tier_ids\": [
1
]
},
\"traffic_sources_costs\": [
{
\"source\": 1,
\"cpc\": 230,
\"cpa\": 0.2,
\"invoice_cpc\": 250,
\"invoice_cpa\": 0.25,
\"user_revenue\": 1
}
]
}"
{
"data": {
"id": 602,
"campaign_title": "Mrs. Destiney Hills",
"campaign_text": "Corrupti saepe in vel sed porro officia quibusdam. Voluptatum sit dolorem omnis et. Enim fuga doloribus illum nihil quaerat pariatur dolorem.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA5OWZmP3RleHQ9dGVtcG9yaWJ1cw==",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA5OWZmP3RleHQ9dGVtcG9yaWJ1cw==",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA5OWZmP3RleHQ9dGVtcG9yaWJ1cw==",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA5OWZmP3RleHQ9dGVtcG9yaWJ1cw=="
},
"store_id": 1766,
"token": "9m6dsjgykmpsshfh",
"type": "standard",
"warnings": {
"skipped_targets": {
"user_ids": [
12,
15
]
}
}
},
"warnings": {
"skipped_targets": {
"user_ids": [
12,
15
]
}
}
}
Returns information about a specific campaign.
The offer ID
curl --request GET \
--get "https://api.metapic.dev/v2/offers/15556" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 603,
"campaign_title": "Lucas Block",
"campaign_text": "Voluptatem ut eligendi molestias et aut iure perferendis. Enim animi explicabo error natus. Sit praesentium quia amet odit et exercitationem.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTY2P3RleHQ9Y29uc2VxdXVudHVy",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTY2P3RleHQ9Y29uc2VxdXVudHVy",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTY2P3RleHQ9Y29uc2VxdXVudHVy",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTY2P3RleHQ9Y29uc2VxdXVudHVy"
},
"store_id": 1767,
"store_name": "McLaughlin-Ortiz",
"store_logo_url": null,
"store_logo": null,
"currency": "SEK",
"token": "u53dvdltt99udvbj",
"traffic_sources_costs": [
{
"id": 201,
"source": 0,
"source_name": "General",
"cpc": 1,
"cpc_v2": {
"amount": "0.01",
"currency": "SEK"
},
"cpa": 0.04,
"currency": "SEK"
}
],
"type": "standard"
}
Updates existing campaign.
The ID of the offer.
The offer ID
curl --request PUT \
"https://api.metapic.dev/v2/offers/7" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"store_group_id\": 12,
\"type\": \"standard\",
\"name\": \"Summer campaign for VIP creators\",
\"campaign_title\": \"Summer campaign\",
\"campaign_text\": \"This is a summer campaign!\",
\"has_product_seeding\": false,
\"has_onetime_payment\": true,
\"per_user_limit\": true,
\"one_time_payment\": 2913.1,
\"budget_limit\": 10,
\"max_clicks\": 19,
\"valid_from\": \"2025-04-02T16:51:40\",
\"valid_until\": \"2006-11-28\",
\"todo\": [
\"skpvzlggvww\"
],
\"show_for_advertiser\": true,
\"priority_after\": 18,
\"traffic_sources_costs\": [
{
\"source\": 1,
\"cpc\": 230,
\"cpa\": 0.2,
\"invoice_cpc\": 250,
\"invoice_cpa\": 0.25,
\"user_revenue\": 0
}
],
\"targets\": {
\"0\": [],
\"user_ids\": [
8
],
\"user_tag_ids\": [
14
],
\"store_group_ids\": [
19
],
\"emails\": [
\"[email protected]\"
],
\"social_media_identifiers\": [
\"roxydb\"
],
\"client_ids\": [
19
],
\"revenue_tier_ids\": [
5
]
},
\"shared_budget_id\": 1,
\"shared_budget\": {
\"title\": \"Summer budget\",
\"amount\": 10000
}
}"
{
"data": {
"id": 604,
"campaign_title": "Stanton Wuckert",
"campaign_text": "Itaque pariatur eaque cum dolor eligendi delectus. Saepe nisi vero aut. Sit numquam aut error tempora omnis. Eum pariatur velit iusto autem. Placeat ut quasi omnis.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmRkP3RleHQ9ZGVsZWN0dXM=",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmRkP3RleHQ9ZGVsZWN0dXM=",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmRkP3RleHQ9ZGVsZWN0dXM=",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmRkP3RleHQ9ZGVsZWN0dXM="
},
"store_id": 1768,
"token": "8hufm8632ltn45o2",
"type": "standard",
"warnings": {
"skipped_targets": {
"user_ids": [
12,
15
]
}
}
},
"warnings": {
"skipped_targets": {
"user_ids": [
12,
15
]
}
}
}
Soft deletes a campaign.
The ID of the offer.
The offer ID
curl --request DELETE \
"https://api.metapic.dev/v2/offers/8" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Endpoint for querying & sorting all campaigns.
Query by either of the following: ID, internal name, title.
Returns all offers with id equal to query
OR name contains query
OR campaign_title contains query
. Must not be greater than 64 characters.
deleted
ended
scheduled
paused
active
Query by offer's store. Returns all offers which belong to the given store_ids
.
Query by offer's store group. Returns all offers which belong to the given store_group_ids
.
Query by offer's author ID. Returns all offers created by the user making the request
Query by offer's ID. Performs an 'OR' search, compared to 'AND' search for other filters, so an offer with given ID is always included in the results, if matched.
Page size. Defaults to 20. Must not be greater than 100.
Must follow the correct format: column_name:direction
,
where column_name
must be a valid property for given resource and direction
can be one of asc|desc
,
both of which are required if sort_by
is present.
ends_soon
Include optional relationships in the response.
trafficSourcesCosts
store
targets
sharedBudget
csv
xlsx
curl --request GET \
--get "https://api.metapic.dev/v2/offers?query=black+friday&statuses[]=active&store_ids[]=1&store_group_ids[]=1&created_by=10&or_id=1234&target_user_id=1&size=20&sort_by=created_at%3Adesc&custom_sort_by=ends_soon&include[]=sharedBudget&format=csv" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"data": [
{
"id": 605,
"campaign_title": "Roger Morar",
"campaign_text": "Ut voluptatibus sint ad praesentium aut. Animi quia sit id odit. Omnis doloribus ipsa tenetur illum libero iure.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA1NWRkP3RleHQ9cXVv",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA1NWRkP3RleHQ9cXVv",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA1NWRkP3RleHQ9cXVv",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA1NWRkP3RleHQ9cXVv"
},
"store_id": 1769,
"token": "z8yeo64vshu8ccas",
"type": "standard"
},
{
"id": 606,
"campaign_title": "Dr. Clark Lowe V",
"campaign_text": "Sed ipsa quod omnis sunt. Sapiente rem labore incidunt est. Autem natus est sit.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTQ0P3RleHQ9cmVpY2llbmRpcw==",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTQ0P3RleHQ9cmVpY2llbmRpcw==",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTQ0P3RleHQ9cmVpY2llbmRpcw==",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYTQ0P3RleHQ9cmVpY2llbmRpcw=="
},
"store_id": 1770,
"token": "t59rvntqglrjnowu",
"type": "standard"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Uploads an image to a campaign.
The offer ID
curl --request POST \
"https://api.metapic.dev/v2/offers/15556/uploads" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"default\": \"culpa\"
}"
{
"id": 607,
"campaign_title": "Sibyl Herzog",
"campaign_text": "Asperiores esse illum fugiat eveniet quaerat soluta. Ipsa et et qui inventore soluta maiores. Eos quae est enim dolorum dolor quod blanditiis. Laboriosam fugiat sint minus cupiditate quis vero.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmFhP3RleHQ9ZG9sb3J1bQ==",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmFhP3RleHQ9ZG9sb3J1bQ==",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmFhP3RleHQ9ZG9sb3J1bQ==",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmFhP3RleHQ9ZG9sb3J1bQ=="
},
"store_id": 1771,
"token": "qaq3eubcomzna8n5",
"type": "standard"
}
The offer ID
curl --request POST \
"https://api.metapic.dev/v2/offers/15556/pause" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 608,
"campaign_title": "Colin Gusikowski",
"campaign_text": "Laborum officiis ut cum molestiae. Vel quidem non quia. Quo quasi enim iure ea ex aspernatur eius.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAxMTY2P3RleHQ9cXVv",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAxMTY2P3RleHQ9cXVv",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAxMTY2P3RleHQ9cXVv",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAxMTY2P3RleHQ9cXVv"
},
"store_id": 1772,
"token": "qrf6fzft1p5rx1v3",
"type": "standard"
}
The offer ID
curl --request POST \
"https://api.metapic.dev/v2/offers/15556/unpause" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 609,
"campaign_title": "Brendon Thiel",
"campaign_text": "Incidunt quidem vel animi fugit quia voluptatem qui. Accusantium occaecati commodi magni et.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBiYjg4P3RleHQ9ZmFjaWxpcw==",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBiYjg4P3RleHQ9ZmFjaWxpcw==",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBiYjg4P3RleHQ9ZmFjaWxpcw==",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBiYjg4P3RleHQ9ZmFjaWxpcw=="
},
"store_id": 1773,
"token": "xf14czb1oimya0yt",
"type": "standard"
}
Returns statistics about a specific campaign.
The offer ID
The start date for the stats period (YYYY-MM-DD)
The end date for the stats period (YYYY-MM-DD)
curl --request GET \
--get "https://api.metapic.dev/v2/offers/15556/stats?start_date=2023-01-01&end_date=2023-01-31" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"start_date\": \"2015-08-03\",
\"end_date\": \"2040-06-27\"
}"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
The ID of the user.
curl --request GET \
--get "https://api.metapic.dev/v2/users/2/offers" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"status\": \"have_posted\",
\"name\": \"iiwr\"
}"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
Returns information about a specific campaign.
The offer ID
curl --request GET \
--get "https://api.metapic.dev/v2/offer-by-token/voluptas" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 621,
"campaign_title": "Tyree Heaney",
"campaign_text": "Qui debitis voluptatem eum aliquid veritatis accusantium. Blanditiis similique odio ex ut ut. Nihil voluptatem esse aut rerum tempora autem. Est et temporibus labore aut error id eum.",
"has_product_seeding": false,
"has_onetime_payment": false,
"status": "active",
"image_url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAzM2JiP3RleHQ9ZXN0",
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAzM2JiP3RleHQ9ZXN0",
"url": "https://media.metapic.com/insecure/rs:fill:800:500/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAzM2JiP3RleHQ9ZXN0",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAzM2JiP3RleHQ9ZXN0"
},
"store_id": 1808,
"store_name": "Hessel Ltd",
"store_logo_url": null,
"store_logo": null,
"currency": "GBP",
"token": "ymzvg4yihyolviqe",
"traffic_sources_costs": [
{
"id": 202,
"source": 0,
"source_name": "General",
"cpc": 1,
"cpc_v2": {
"amount": "0.01",
"currency": "GBP"
},
"cpa": 0.04,
"currency": "GBP"
}
],
"type": "standard"
}
The offer ID
curl --request GET \
--get "https://api.metapic.dev/v2/offers/15556/targets" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
The offer ID
curl --request POST \
"https://api.metapic.dev/v2/offers/15556/targets" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_ids\": [
7
],
\"user_tag_ids\": [
9
],
\"store_group_ids\": [
5
],
\"emails\": [
\"[email protected]\"
],
\"social_media_identifiers\": [
\"wsqvkk\"
],
\"client_ids\": [
12
],
\"revenue_tier_ids\": [
16
]
}"
The ID of the offer.
The ID of the user.
curl --request GET \
--get "https://api.metapic.dev/v2/offers/13/users/16" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
The ID of the offer.
curl --request GET \
--get "https://api.metapic.dev/v2/offers/16/participants" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"query\": \"drwnrjoplypfm\",
\"status\": \"applied\"
}"
{
"data": [
{
"id": null,
"offer_id": 611,
"user_id": 3003,
"display_name": null,
"clicks": 929106,
"status": "open",
"todo": null,
"payment_amount": null
},
{
"id": null,
"offer_id": 613,
"user_id": 3006,
"display_name": null,
"clicks": 1252110,
"status": "have_received",
"todo": null,
"payment_amount": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 10,
"to": 2,
"total": 2
}
}
The ID of the offer.
The ID of the participant.
curl --request GET \
--get "https://api.metapic.dev/v2/offers/5/participants/7" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": null,
"offer_id": 614,
"user_id": 3009,
"display_name": null,
"clicks": 214976,
"status": "second_prio",
"todo": null,
"payment_amount": null,
"social_media": [],
"tags": [
{
"id": 134,
"name": "Mr. Montana Ebert",
"slug": "incidunt-totam-ut",
"access_level": 1,
"store_id": 1779
}
]
}
The ID of the offer.
curl --request GET \
--get "https://api.metapic.dev/v2/offers/10/participants-stats" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"query\": \"mbycmrfl\",
\"active\": true,
\"start_date\": \"2002-04-23\",
\"end_date\": \"2052-06-10\",
\"sort_by\": \"links_created:asc\"
}"
{
"data": [
{
"id": null,
"user_id": null,
"display_name": "[email protected]",
"clicks": 162678,
"status": "applied",
"links_created": null,
"estimated_gp": null,
"estimated_earning_to_cost_ratio": null
},
{
"id": null,
"user_id": null,
"display_name": "[email protected]",
"clicks": 9836008,
"status": "open",
"links_created": null,
"estimated_gp": null,
"estimated_earning_to_cost_ratio": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 10,
"to": 2,
"total": 2
}
}
The ID of the offer.
curl --request GET \
--get "https://api.metapic.dev/v2/offers/17/participants-count-by-click-activity" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"start_date\": \"2014-09-12\",
\"end_date\": \"2051-06-15\"
}"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
The ID of the offer.
The ID of the participant.
curl --request PATCH \
"https://api.metapic.dev/v2/offers/15/participants/7/update-status" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"status\": \"accepted\"
}"
{
"id": null,
"offer_id": 617,
"user_id": 3012,
"display_name": null,
"clicks": 4278,
"status": "denied",
"todo": null,
"payment_amount": null
}
The ID of the offer.
The ID of the participant.
curl --request PATCH \
"https://api.metapic.dev/v2/offers/15/participants/15/todo" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"todo\": [
{
\"key\": \"gxdxwdrpvesvjrkbsryj\",
\"value\": true
}
]
}"
{
"id": null,
"offer_id": 618,
"user_id": null,
"display_name": "gzemlak",
"clicks": 148465803,
"status": "have_posted",
"pre_registered_identifier": "gzemlak",
"todo": null,
"payment_amount": null
}
The ID of the offer.
The ID of the participant.
curl --request PATCH \
"https://api.metapic.dev/v2/offers/10/participants/15/overrides/clicks" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"click_limit\": 14
}"
{
"id": null,
"offer_id": 619,
"user_id": null,
"display_name": "wilson31",
"clicks": 318750920,
"status": "open",
"pre_registered_identifier": "wilson31",
"todo": null,
"payment_amount": null
}
The ID of the offer.
The ID of the participant.
curl --request PATCH \
"https://api.metapic.dev/v2/offers/15/participants/17/overrides/costs" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"traffic_sources_costs\": [
{
\"source\": 1,
\"cpc\": {
\"amount\": \"1.2\",
\"currency\": \"EUR\"
},
\"cpa\": 0.2
}
]
}"
{
"id": null,
"offer_id": 620,
"user_id": null,
"display_name": "[email protected]",
"clicks": 1,
"status": "open",
"pre_registered_email": "[email protected]",
"todo": null,
"payment_amount": null
}
The ID of the user.
curl --request GET \
--get "https://api.metapic.dev/v2/offer-by-token/rerum/users/10" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
cache-control
: no-cache, private
content-type
: application/json
access-control-allow-origin
: *
set-cookie
: metapic_session=eyJpdiI6ImtUbUVzZ1pmMkxQWkRnWHJUYTMvM2c9PSIsInZhbHVlIjoiR2lNcFM5eFdUM3poa3cxRG9HbU5VR3dzd2pEWGFzZW10TW96VldFV1kyREVTdkp6a2hUdUE2aS9vUi9hZCtmRk1mY09CVS9pQ2VSVmN4R2ZvK0NRbFVMRUxRSEF4dzNNTkxuZVNHTVRpV1Q1ODBLY1FEdmNVeGNhQTA1TlhMMk4iLCJtYWMiOiI1YTU0YmE2MjUyMjRlODI5YjljMWM3MzkyZjYzYWMwYjExODE1YzAxMjRkZDEzZTkxMTAwNzg5NzdhOTRmNTAwIiwidGFnIjoiIn0%3D; expires=Wed, 02 Apr 2025 16:51:41 GMT; Max-Age=7200; path=/; httponly
{
"message": "Unauthenticated."
}
This can only be performed by the user themselves.
The ID of the user.
curl --request POST \
"https://api.metapic.dev/v2/offer-by-token/rerum/users/14/join" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
The ID of the offerUser.
curl --request POST \
"https://api.metapic.dev/v2/offer-users/1/comments" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"comment\": \"n\"
}"
The ID of the offerUser.
The ID of the comment.
The ID of the comment.
curl --request PUT \
"https://api.metapic.dev/v2/offer-users/1/comments/14" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"comment\": \"xdunymrdlqoonkgzoynr\"
}"
The ID of the offerUser.
The ID of the comment.
The ID of the comment.
curl --request DELETE \
"https://api.metapic.dev/v2/offer-users/1/comments/7" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
curl --request GET \
--get "https://api.metapic.dev/v2/offer-users/libero/activities" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 300
x-ratelimit-remaining
: 300
access-control-allow-origin
: *
{
"message": "Unauthenticated."
}
Paginated list of Return Ads
Page size. Defaults to 20. Must not be greater than 100.
Query by either of the following: ID or name.
Returns all return ads with id equal to query
OR name contains query
. Must not be greater than 64 characters.
Query by return ad's advertiser group. Returns all return ads which belong to the given advertiser_group_ids
.
Query by return ad's advertiser. Returns all return ads which belong to the given advertiser_ids
.
deleted
ended
scheduled
paused
active
Query by return ad's ID. Performs an 'OR' search, compared to 'AND' search for other filters, so an return ad with given ID is always included in the results, if matched.
Query sorted by (name, created_at, starts_at, ends_at, current_clicks, current_views, order_count, order_value, earnings or click_through_rate). Must follow the correct format: column_name:direction
,
where column_name
must be a valid property for given resource and direction
can be one of asc|desc
,
both of which are required if sort_by
is present.
name:asc
name:desc
created_at:asc
created_at:desc
starts_at:asc
starts_at:desc
ends_at:asc
ends_at:desc
current_clicks:asc
current_clicks:desc
current_views:asc
current_views:desc
order_count:asc
order_count:desc
order_value:asc
order_value:desc
earnings:asc
earnings:desc
click_through_rate:asc
click_through_rate:desc
conversion_rate:asc
conversion_rate:desc
curl --request GET \
--get "https://api.metapic.dev/v2/return-ads?size=20&query=internal+name&advertiser_group_ids[]=1&advertiser_ids[]=1&statuses[]=active&created_by=&or_id=1234&sort_by=current_clicks%3Aasc" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"data": [
{
"id": 276,
"name": "Prof. Maxie Medhurst",
"advertiser_group_id": 3746,
"affiliate_link": {
"id": 785,
"url": "https://ward.com/laborum-est-dolores-aperiam-et-nam-iure-exercitationem.html",
"original_url": "http://weber.com/",
"mtpc_url": "https://c.mtpc.se/785",
"user_id": 3017,
"country": "CD",
"provider": "olive",
"advertiser": {
"id": 1790,
"name": "Murray PLC"
}
},
"author_id": 3018,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAzM2NjP3RleHQ9c2ludA==",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAzM2NjP3RleHQ9c2ludA==",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDAzM2NjP3RleHQ9c2ludA=="
},
"starts_at": "2025-03-02 16:51:40",
"ends_at": "2025-05-02 16:51:40",
"stats": []
},
{
"id": 277,
"name": "Ms. Ana Quigley",
"advertiser_group_id": 3749,
"affiliate_link": {
"id": 786,
"url": "https://www.ledner.com/at-magnam-vero-maxime-non-fuga-blanditiis-ab",
"original_url": "http://miller.com/",
"mtpc_url": "https://c.mtpc.se/786",
"user_id": 3019,
"country": "MY",
"provider": "olive",
"advertiser": {
"id": 1791,
"name": "O'Hara-Johnston"
}
},
"author_id": 3020,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA3N2RkP3RleHQ9YXV0",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA3N2RkP3RleHQ9YXV0",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA3N2RkP3RleHQ9YXV0"
},
"starts_at": "2025-03-02 16:51:40",
"ends_at": "2025-05-02 16:51:40",
"stats": []
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
curl --request POST \
"https://api.metapic.dev/v2/return-ads" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"ipnt\",
\"advertiser_group_id\": 5,
\"advertiser_id\": 2,
\"return_link\": \"https:\\/\\/advertiser.com\",
\"display_for_all_advertisers\": true,
\"advertiser_ids\": [
16
],
\"advertiser_category_ids\": [
10
],
\"styles\": {
\"color\": \"#ffffff\"
},
\"image_key\": \"dG1wL2ltYWdlLmpwZw==\",
\"starts_at\": \"2025-04-02T16:51:41\",
\"ends_at\": \"2052-08-11\",
\"click_limit\": 7,
\"view_limit\": 5
}"
{
"id": 278,
"name": "Burdette Simonis",
"advertiser_group_id": 3752,
"affiliate_link": {
"id": 787,
"url": "http://wilkinson.com/molestiae-debitis-iste-vero-totam-occaecati",
"original_url": "https://www.wiza.biz/non-illum-explicabo-illum-numquam-aliquid",
"mtpc_url": "https://c.mtpc.se/787",
"user_id": 3021,
"country": "IR",
"provider": "white",
"advertiser": {
"id": 1792,
"name": "Purdy, Langosh and Lindgren"
}
},
"author_id": 3022,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYWVlP3RleHQ9aW5jaWR1bnQ=",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYWVlP3RleHQ9aW5jaWR1bnQ=",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYWVlP3RleHQ9aW5jaWR1bnQ="
},
"starts_at": "2025-03-02 16:51:41",
"ends_at": "2025-05-02 16:51:41",
"stats": []
}
The ID of the return ad.
curl --request GET \
--get "https://api.metapic.dev/v2/return-ads/13" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 279,
"name": "Lempi Corkery",
"advertiser_group_id": 3755,
"affiliate_link": {
"id": 788,
"url": "http://nitzsche.com/consequatur-officiis-esse-asperiores-enim-consectetur",
"original_url": "http://www.gottlieb.net/tenetur-odit-dolor-voluptatum-ut-voluptas",
"mtpc_url": "https://c.mtpc.se/788",
"user_id": 3023,
"country": "KN",
"provider": "green",
"advertiser": {
"id": 1793,
"name": "Bode, Leuschke and Gutmann"
}
},
"author_id": 3024,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYWVlP3RleHQ9ZG9sb3I=",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYWVlP3RleHQ9ZG9sb3I=",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBhYWVlP3RleHQ9ZG9sb3I="
},
"starts_at": "2025-03-02 16:51:41",
"ends_at": "2025-05-02 16:51:41",
"stats": []
}
The ID of the return ad.
curl --request PUT \
"https://api.metapic.dev/v2/return-ads/18" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"zzibz\",
\"return_link\": \"https:\\/\\/advertiser.com\",
\"display_for_all_advertisers\": false,
\"advertiser_ids\": [
2
],
\"advertiser_category_ids\": [
4
],
\"styles\": {
\"color\": \"#ffffff\"
},
\"image_key\": \"dG1wL2ltYWdlLmpwZw==\",
\"starts_at\": \"2025-04-02T16:51:41\",
\"ends_at\": \"2121-12-15\",
\"click_limit\": 15,
\"view_limit\": 1
}"
{
"id": 280,
"name": "Dr. Mae Okuneva",
"advertiser_group_id": 3758,
"affiliate_link": {
"id": 789,
"url": "http://www.zemlak.com/magni-reiciendis-dolorem-odio-eligendi-voluptates-optio-qui",
"original_url": "http://www.satterfield.com/eaque-qui-fugiat-facere-nihil-voluptas",
"mtpc_url": "https://c.mtpc.se/789",
"user_id": 3025,
"country": "LY",
"provider": "blue",
"advertiser": {
"id": 1794,
"name": "Schneider-McLaughlin"
}
},
"author_id": 3026,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA5OTg4P3RleHQ9cXVpc3F1YW0=",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA5OTg4P3RleHQ9cXVpc3F1YW0=",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA5OTg4P3RleHQ9cXVpc3F1YW0="
},
"starts_at": "2025-03-02 16:51:41",
"ends_at": "2025-05-02 16:51:41",
"stats": []
}
The ID of the return ad.
curl --request DELETE \
"https://api.metapic.dev/v2/return-ads/16" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Deactivates Return Ad
The ID of the returnAd.
curl --request POST \
"https://api.metapic.dev/v2/return-ads/8/pause" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 281,
"name": "Marquis Heller",
"advertiser_group_id": 3761,
"affiliate_link": {
"id": 790,
"url": "http://upton.org/voluptate-unde-iste-tempora-et-temporibus",
"original_url": "http://kertzmann.com/suscipit-distinctio-voluptatibus-tenetur-non",
"mtpc_url": "https://c.mtpc.se/790",
"user_id": 3027,
"country": "TO",
"provider": "maroon",
"advertiser": {
"id": 1795,
"name": "Bins Inc"
}
},
"author_id": 3028,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBlZWVlP3RleHQ9cXVpcw==",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBlZWVlP3RleHQ9cXVpcw==",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBlZWVlP3RleHQ9cXVpcw=="
},
"starts_at": "2025-03-02 16:51:41",
"ends_at": "2025-05-02 16:51:41",
"stats": []
}
The ID of the returnAd.
curl --request POST \
"https://api.metapic.dev/v2/return-ads/3/unpause" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 282,
"name": "Miss Viva Kuhic",
"advertiser_group_id": 3764,
"affiliate_link": {
"id": 791,
"url": "http://www.hoeger.biz/minus-quis-est-vitae-reiciendis-aliquid-tempore-iusto.html",
"original_url": "http://www.schumm.com/ut-cupiditate-cupiditate-tempora-quidem-rerum-esse-ut.html",
"mtpc_url": "https://c.mtpc.se/791",
"user_id": 3029,
"country": "MH",
"provider": "yellow",
"advertiser": {
"id": 1796,
"name": "Hills-Mayer"
}
},
"author_id": 3030,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmRkP3RleHQ9dm9sdXB0YXRlbQ==",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmRkP3RleHQ9dm9sdXB0YXRlbQ==",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA2NmRkP3RleHQ9dm9sdXB0YXRlbQ=="
},
"starts_at": "2025-03-02 16:51:41",
"ends_at": "2025-05-02 16:51:41",
"stats": []
}
List of Return Ads displayed for Advertiser by ID
The ID of the store.
curl --request GET \
--get "https://api.metapic.dev/v2/advertisers/7/return-ads" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
[
{
"id": 283,
"name": "Nasir Hirthe DDS",
"advertiser_group_id": 3767,
"affiliate_link": {
"id": 792,
"url": "http://weissnat.com/quo-ut-consequatur-sunt-veritatis",
"original_url": "http://lynch.com/",
"mtpc_url": "https://c.mtpc.se/792",
"user_id": 3031,
"country": "GL",
"provider": "maroon",
"advertiser": {
"id": 1797,
"name": "Stroman Inc"
}
},
"author_id": 3032,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBiYjExP3RleHQ9bmVjZXNzaXRhdGlidXM=",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBiYjExP3RleHQ9bmVjZXNzaXRhdGlidXM=",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDBiYjExP3RleHQ9bmVjZXNzaXRhdGlidXM="
},
"starts_at": "2025-03-02 16:51:41",
"ends_at": "2025-05-02 16:51:41",
"stats": []
},
{
"id": 284,
"name": "Mr. Eldred Dooley IV",
"advertiser_group_id": 3770,
"affiliate_link": {
"id": 793,
"url": "https://conroy.com/nihil-voluptas-laudantium-fugit-quos-voluptas-rem.html",
"original_url": "http://dickens.com/consectetur-delectus-vitae-ea-porro-labore-molestiae",
"mtpc_url": "https://c.mtpc.se/793",
"user_id": 3033,
"country": "PW",
"provider": "lime",
"advertiser": {
"id": 1798,
"name": "Watsica-Schaefer"
}
},
"author_id": 3034,
"display_for_all_advertisers": false,
"status": "active",
"styles": null,
"image": {
"key": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA0NDc3P3RleHQ9b21uaXM=",
"url": "https://media.metapic.com/insecure/rs:fit:2000:2000/g:sm/dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA0NDc3P3RleHQ9b21uaXM=",
"base_url": "https://media.metapic.com",
"base64": "dXBsb2Fkcy9odHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjQweDQ4MC5wbmcvMDA0NDc3P3RleHQ9b21uaXM="
},
"starts_at": "2025-03-02 16:51:41",
"ends_at": "2025-05-02 16:51:41",
"stats": []
}
]
List Shared Budgets for Store
The ID of the store.
curl --request GET \
--get "https://api.metapic.dev/v2/stores/3/shared-budgets" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
[
{
"id": 41,
"title": "Marian Powlowski",
"amount": 6,
"consumed_budget": 0,
"currency": "PLN"
},
{
"id": 42,
"title": "Richie Bechtelar",
"amount": 6,
"consumed_budget": 0,
"currency": "SEK"
}
]
Returns information about a specific budget.
The ID of the store.
The ID of the shared budget.
curl --request GET \
--get "https://api.metapic.dev/v2/stores/13/shared-budgets/15" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"id": 43,
"title": "Dr. Jennings Jerde",
"amount": 4,
"consumed_budget": 0,
"currency": "SEK"
}
Updates existing budget.
The ID of the store.
The ID of the shared budget.
curl --request PUT \
"https://api.metapic.dev/v2/stores/8/shared-budgets/10" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"Summer budget\",
\"amount\": 10000
}"
{
"id": 44,
"title": "Anahi Hartmann",
"amount": 9,
"consumed_budget": 0,
"currency": "PLN"
}
The ID of the store.
The ID of the shared budget.
curl --request DELETE \
"https://api.metapic.dev/v2/stores/13/shared-budgets/12" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Endpoint for querying & sorting all stores.
Query by either of the following: ID, store name.
Returns all stores with id equal to query
OR name contains query
. Must not be greater than 255 characters.
Query by store's store group. Returns all stores which belong to the given store_group_id
.
Page size. Defaults to 20. Must not be greater than 100.
Must follow the correct format: column_name:direction
,
where column_name
must be a valid property for given resource and direction
can be one of asc|desc
,
both of which are required if sort_by
is present.
curl --request GET \
--get "https://api.metapic.dev/v2/stores?query=nike&store_group_id=15&size=20&sort_by=created_at%3Adesc" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"data": [
{
"id": 1801,
"name": "Beahan, Lebsack and Dare"
},
{
"id": 1802,
"name": "Dare-Swaniawski"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
curl --request POST \
"https://api.metapic.dev/v2/stores" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"My Store\",
\"domains\": [
[
\"dev.test-test.com\"
]
],
\"categories\": [
4
],
\"logo_url\": \"http:\\/\\/www.jenkins.com\\/reiciendis-ratione-sed-sit-numquam-id-provident.html\",
\"country\": \" Example: SE\",
\"currency\": \"Example: EUR\",
\"language\": \"sv\",
\"billing\": {
\"company_name\": \"quia\",
\"street\": \"earum\",
\"postal_code\": \"minima\",
\"city\": \"et\",
\"vat_number\": \"omnis\"
}
}"
{
"id": 1803,
"name": "Gerhold Ltd"
}
The ID of the store.
curl --request PUT \
"https://api.metapic.dev/v2/stores/19/payment" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Uploads an image to tmp folder.
curl --request POST \
"https://api.metapic.dev/v2/image-uploads" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"image\": \"aperiam\"
}"
Endpoint for querying & sorting all users.
Query by either of the following: ID, username, email.
Returns all users with id equal to query
OR username contains query
OR email contains query
. Must not be greater than 64 characters.
Query by user's client. Returns all users which belong to the given client_id
.
Query by user's store group. Returns all users which belong to the given store_group_id
.
Page size. Defaults to 20. Must not be greater than 100.
Must follow the correct format: column_name:direction
,
where column_name
must be a valid property for given resource and direction
can be one of asc|desc
,
both of which are required if sort_by
is present.
curl --request GET \
--get "https://api.metapic.dev/v2/users?query=testcreator123&client_id=2&store_group_id=15&size=20&sort_by=created_at%3Adesc" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"data": [
{
"id": 3037,
"username": "dudley.bosco",
"email": "[email protected]",
"client_id": 3144
},
{
"id": 3038,
"username": "chaim.jaskolski",
"email": "[email protected]",
"client_id": 3145
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Query by user's advertiser group. Returns all users which belong to the given advertiser_group_id
.
a mix array of user emails and ids. Must not have more than 1000 items.
curl --request POST \
"https://api.metapic.dev/v2/match-users?advertiser_group_id=15&user_emails_or_ids[]=12345&user_emails_or_ids[]=email%40metapic.com" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Endpoint for querying & sorting all user tags.
Query by user tag's name. Returns all user tags whose name contains the given name
. Must not be greater than 255 characters.
Query by user tag's store. Returns all user tags which belong to the given store_id
.
Query by user tag's access levels. Returns all user tags which have the given access_levels
:
0
1
2
Page size. Defaults to 20. Must not be greater than 100.
Must follow the correct format: column_name:direction
,
where column_name
must be a valid property for given resource and direction
can be one of asc|desc
,
both of which are required if sort_by
is present.
curl --request GET \
--get "https://api.metapic.dev/v2/user-tags?name=favourites&store_id=15&access_levels[]=0&access_levels[]=1&size=20&sort_by=created_at%3Adesc" \
--header "Authorization: {accessToken}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"