PushizoDocs
API referansı

Reklamlar (kitleler, kampanyalar, atribüsyon)

Reklamlar (kitleler, kampanyalar, atribüsyon) — 23 işlem (GET /v1/apps/{appId}/ads/accounts, GET /v1/apps/{appId}/ads/audiences, POST /v1/apps/{appId}/ads/audiences, …). OpenAPI 3.1.0 sözleşmesinden üretilir.

Meta, Google Ads, TikTok ve LinkedIn reklam hesapları: segmentten reklam kitlesi senkronu (yalnızca reklam kişiselleştirme rızası olan kullanıcılar, SHA-256 ile), lookalike, kampanya/reklam seti listesi, durum ve günlük bütçe, harcama, atribüsyon ve LTV raporları, Conversions API ve bütçe uyarıları. Hesap bağlama (OAuth) panelden yapılır.

Taban adres: https://api.pushizo.com · Etiket: ads · Etkileşimli belge (Scalar)

İşlemler

YöntemYolİşlem
GET/v1/apps/{appId}/ads/accountsBağlı reklam hesapları
GET/v1/apps/{appId}/ads/audiencesReklam kitleleri
POST/v1/apps/{appId}/ads/audiencesReklam kitlesi oluştur
GET/v1/apps/{appId}/ads/audiences/{audienceId}Reklam kitlesi ayrıntısı
PATCH/v1/apps/{appId}/ads/audiences/{audienceId}Reklam kitlesini güncelle
DELETE/v1/apps/{appId}/ads/audiences/{audienceId}Reklam kitlesini sil
POST/v1/apps/{appId}/ads/audiences/{audienceId}/syncSenkronu şimdi çalıştır
GET/v1/apps/{appId}/ads/audiences/{audienceId}/syncsSenkron geçmişi
POST/v1/apps/{appId}/ads/audiences/{audienceId}/lookalikesBenzer kitle (lookalike) oluştur
GET/v1/apps/{appId}/ads/campaignsKampanya / reklam seti / reklam listesi ve metrikler
GET/v1/apps/{appId}/ads/campaigns/{entityId}Kampanya / reklam seti / reklam ayrıntısı
PATCH/v1/apps/{appId}/ads/campaigns/{entityId}Durum ve günlük bütçe değişikliği
POST/v1/apps/{appId}/ads/accounts/{accountId}/refreshKampanyaları ve metrikleri şimdi yenile
GET/v1/apps/{appId}/ads/reports/spendHarcama ve performans raporu
GET/v1/apps/{appId}/ads/reports/attributionBirleşik atribüsyon raporu (ROAS, CAC)
GET/v1/apps/{appId}/ads/reports/ltvKohort LTV raporu
GET/v1/apps/{appId}/ads/conversions-api/configsConversions API yapılandırmaları
GET/v1/apps/{appId}/ads/conversions-api/deliveriesConversions API teslim geçmişi
GET/v1/apps/{appId}/ads/alert-rulesBütçe uyarı kuralları
POST/v1/apps/{appId}/ads/alert-rulesBütçe uyarı kuralı oluştur
PATCH/v1/apps/{appId}/ads/alert-rules/{ruleId}Bütçe uyarı kuralını güncelle
DELETE/v1/apps/{appId}/ads/alert-rules/{ruleId}Bütçe uyarı kuralını sil
GET/v1/apps/{appId}/ads/alertsTetiklenen bütçe uyarıları

Ayrıntılar

Bağlı reklam hesapları

GET/v1/apps/{appId}/ads/accountsDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam segments:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdAccountList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].app_idstringEvet
data[].platformenumEvetDeğerler: "meta", "google", "tiktok", "linkedin"
data[].external_idstringEvet
data[].namestringEvet
data[].currencystring | nullEvet
data[].timezonestring | nullEvet
data[].statusenumEvetDeğerler: "active", "error", "revoked"
data[].scopesarray<string>Evet
data[].login_customer_idstring | nullEvet
data[].token_expires_atstring | nullEvet
data[].last_refreshed_atstring | nullEvet
data[].last_errorstring | nullEvet
data[].last_error_atstring | nullEvet
data[].terms_accepted_atstring | nullEvet
data[].terms_versionstring | nullEvet
data[].audiencesintegerEvet
data[].created_atstringEvet
data[].updated_atstringEvet

Örnek yanıt:

{
  "data": [
    {
      "name": "Sipariş bildirimleri",
      "status": "active",
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "platform": "meta",
      "external_id": "user_42",
      "currency": "TRY",
      "timezone": "Europe/Istanbul",
      "scopes": [
        "notifications:write"
      ],
      "login_customer_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "token_expires_at": "örnek",
      "last_refreshed_at": "örnek",
      "last_error": "örnek",
      "last_error_at": "örnek",
      "terms_accepted_at": "örnek",
      "terms_version": "örnek",
      "audiences": 1,
      "created_at": "örnek",
      "updated_at": "örnek"
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/accounts" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Reklam kitleleri

GET/v1/apps/{appId}/ads/audiencesDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam segments:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
ad_account_idsorgustringHayırUzunluk: 1–64"ada_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdAudienceList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].app_idstringEvet
data[].ad_account_idstringEvet
data[].platformenumEvetDeğerler: "meta", "google", "tiktok", "linkedin"
data[].sourceenumEvetDeğerler: "segment", "journey", "lookalike"
data[].segment_idstring | nullEvet
data[].segment_namestring | nullEvet
data[].namestringEvet
data[].descriptionstring | nullEvet
data[].external_idstring | nullEvet
data[].statusenumEvetDeğerler: "pending", "active", "paused", "error"
data[].identifiersarray<enum>Evet
data[].sync_interval_minutesintegerEvet
data[].next_sync_atstring | nullEvet
data[].last_synced_atstring | nullEvet
data[].last_sync_statusenum | nullEvet
data[].full_reload_requestedbooleanEvet
data[].member_countintegerEvet
data[].estimated_sizeinteger | nullEvet
data[].match_ratenumber | nullEvet
data[].size_updated_atstring | nullEvet
data[].lookalike_source_idstring | nullEvet
data[].lookalike_specobject | nullEvet
data[].consecutive_failuresintegerEvet
data[].last_errorstring | nullEvet
data[].last_error_atstring | nullEvet
data[].created_atstringEvet
data[].updated_atstringEvet

Örnek yanıt:

{
  "data": [
    {
      "name": "Sipariş bildirimleri",
      "status": "pending",
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "platform": "meta",
      "source": "segment",
      "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "segment_name": "örnek",
      "description": "Sipariş durumu güncellemeleri",
      "external_id": "user_42",
      "identifiers": [
        "email"
      ],
      "sync_interval_minutes": 1,
      "next_sync_at": "örnek",
      "last_synced_at": "örnek",
      "last_sync_status": "succeeded",
      "full_reload_requested": true,
      "member_count": 1,
      "estimated_size": 1,
      "match_rate": 1.5,
      "size_updated_at": "örnek",
      "lookalike_source_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "lookalike_spec": {
        "country": "TR",
        "ratio": 1.5
      },
      "consecutive_failures": 1,
      "last_error": "örnek",
      "last_error_at": "örnek",
      "created_at": "örnek",
      "updated_at": "örnek"
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Reklam kitlesi oluştur

POST/v1/apps/{appId}/ads/audiencesDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

İstek gövdesi (zorunlu)

Şema: CreateAdAudienceDto

AlanTürZorunluAçıklama
ad_account_idstringEvetUzunluk: 1–64
sourceenumEvetDeğerler: "segment", "journey"
segment_idstringHayırUzunluk: 1–64
namestringEvetUzunluk: 1–120
descriptionstringHayırUzunluk: 0–500
identifiersarray<enum>HayırÖğe: 1–3
sync_interval_minutesintegerHayırAralık: 60–360

Örnek:

{
  "name": "Sipariş bildirimleri",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "source": "segment",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "description": "Sipariş durumu güncellemeleri",
  "identifiers": [
    "email"
  ],
  "sync_interval_minutes": 60
}

Yanıtlar

201 — Başarılı.

Şema: AdAudience

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
ad_account_idstringEvet
platformenumEvetDeğerler: "meta", "google", "tiktok", "linkedin"
sourceenumEvetDeğerler: "segment", "journey", "lookalike"
segment_idstring | nullEvet
segment_namestring | nullEvet
namestringEvet
descriptionstring | nullEvet
external_idstring | nullEvet
statusenumEvetDeğerler: "pending", "active", "paused", "error"
identifiersarray<enum>Evet
sync_interval_minutesintegerEvet
next_sync_atstring | nullEvet
last_synced_atstring | nullEvet
last_sync_statusenum | nullEvet
full_reload_requestedbooleanEvet
member_countintegerEvet
estimated_sizeinteger | nullEvet
match_ratenumber | nullEvet
size_updated_atstring | nullEvet
lookalike_source_idstring | nullEvet
lookalike_specobject | nullEvet
consecutive_failuresintegerEvet
last_errorstring | nullEvet
last_error_atstring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "status": "pending",
  "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform": "meta",
  "source": "segment",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "segment_name": "örnek",
  "description": "Sipariş durumu güncellemeleri",
  "external_id": "user_42",
  "identifiers": [
    "email"
  ],
  "sync_interval_minutes": 1,
  "next_sync_at": "örnek",
  "last_synced_at": "örnek",
  "last_sync_status": "succeeded",
  "full_reload_requested": true,
  "member_count": 1,
  "estimated_size": 1,
  "match_rate": 1.5,
  "size_updated_at": "örnek",
  "lookalike_source_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "lookalike_spec": {
    "country": "TR",
    "ratio": 1.5
  },
  "consecutive_failures": 1,
  "last_error": "örnek",
  "last_error_at": "örnek",
  "created_at": "örnek",
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Sipariş bildirimleri",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "source": "segment",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "description": "Sipariş durumu güncellemeleri",
  "identifiers": [
    "email"
  ],
  "sync_interval_minutes": 60
}'

Reklam kitlesi ayrıntısı

GET/v1/apps/{appId}/ads/audiences/{audienceId}Dene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam segments:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
audienceIdyolstringEvet"adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdAudience

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
ad_account_idstringEvet
platformenumEvetDeğerler: "meta", "google", "tiktok", "linkedin"
sourceenumEvetDeğerler: "segment", "journey", "lookalike"
segment_idstring | nullEvet
segment_namestring | nullEvet
namestringEvet
descriptionstring | nullEvet
external_idstring | nullEvet
statusenumEvetDeğerler: "pending", "active", "paused", "error"
identifiersarray<enum>Evet
sync_interval_minutesintegerEvet
next_sync_atstring | nullEvet
last_synced_atstring | nullEvet
last_sync_statusenum | nullEvet
full_reload_requestedbooleanEvet
member_countintegerEvet
estimated_sizeinteger | nullEvet
match_ratenumber | nullEvet
size_updated_atstring | nullEvet
lookalike_source_idstring | nullEvet
lookalike_specobject | nullEvet
consecutive_failuresintegerEvet
last_errorstring | nullEvet
last_error_atstring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "status": "pending",
  "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform": "meta",
  "source": "segment",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "segment_name": "örnek",
  "description": "Sipariş durumu güncellemeleri",
  "external_id": "user_42",
  "identifiers": [
    "email"
  ],
  "sync_interval_minutes": 1,
  "next_sync_at": "örnek",
  "last_synced_at": "örnek",
  "last_sync_status": "succeeded",
  "full_reload_requested": true,
  "member_count": 1,
  "estimated_size": 1,
  "match_rate": 1.5,
  "size_updated_at": "örnek",
  "lookalike_source_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "lookalike_spec": {
    "country": "TR",
    "ratio": 1.5
  },
  "consecutive_failures": 1,
  "last_error": "örnek",
  "last_error_at": "örnek",
  "created_at": "örnek",
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences/adu_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Reklam kitlesini güncelle

PATCH/v1/apps/{appId}/ads/audiences/{audienceId}Dene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
audienceIdyolstringEvet"adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

İstek gövdesi (zorunlu)

Şema: UpdateAdAudienceDto

AlanTürZorunluAçıklama
namestringHayırUzunluk: 1–120
descriptionstring | nullHayır
segment_idstringHayırUzunluk: 1–64
identifiersarray<enum>HayırÖğe: 1–3
sync_interval_minutesintegerHayırAralık: 60–360
statusenumHayırDeğerler: "active", "paused"

Örnek:

{
  "name": "Sipariş bildirimleri",
  "status": "active",
  "description": "Sipariş durumu güncellemeleri",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "identifiers": [
    "email"
  ]
}

Yanıtlar

200 — Başarılı.

Şema: AdAudience

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
ad_account_idstringEvet
platformenumEvetDeğerler: "meta", "google", "tiktok", "linkedin"
sourceenumEvetDeğerler: "segment", "journey", "lookalike"
segment_idstring | nullEvet
segment_namestring | nullEvet
namestringEvet
descriptionstring | nullEvet
external_idstring | nullEvet
statusenumEvetDeğerler: "pending", "active", "paused", "error"
identifiersarray<enum>Evet
sync_interval_minutesintegerEvet
next_sync_atstring | nullEvet
last_synced_atstring | nullEvet
last_sync_statusenum | nullEvet
full_reload_requestedbooleanEvet
member_countintegerEvet
estimated_sizeinteger | nullEvet
match_ratenumber | nullEvet
size_updated_atstring | nullEvet
lookalike_source_idstring | nullEvet
lookalike_specobject | nullEvet
consecutive_failuresintegerEvet
last_errorstring | nullEvet
last_error_atstring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "status": "pending",
  "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform": "meta",
  "source": "segment",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "segment_name": "örnek",
  "description": "Sipariş durumu güncellemeleri",
  "external_id": "user_42",
  "identifiers": [
    "email"
  ],
  "sync_interval_minutes": 1,
  "next_sync_at": "örnek",
  "last_synced_at": "örnek",
  "last_sync_status": "succeeded",
  "full_reload_requested": true,
  "member_count": 1,
  "estimated_size": 1,
  "match_rate": 1.5,
  "size_updated_at": "örnek",
  "lookalike_source_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "lookalike_spec": {
    "country": "TR",
    "ratio": 1.5
  },
  "consecutive_failures": 1,
  "last_error": "örnek",
  "last_error_at": "örnek",
  "created_at": "örnek",
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X PATCH "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences/adu_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Sipariş bildirimleri",
  "status": "active",
  "description": "Sipariş durumu güncellemeleri",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "identifiers": [
    "email"
  ]
}'

Reklam kitlesini sil

DELETE/v1/apps/{appId}/ads/audiences/{audienceId}Dene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
audienceIdyolstringEvet"adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
delete_on_platformsorguenumHayırDeğerler: "true", "false""true"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdOk

AlanTürZorunluAçıklama
oktrueEvet

Örnek yanıt:

{
  "ok": true
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X DELETE "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences/adu_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Senkronu şimdi çalıştır

POST/v1/apps/{appId}/ads/audiences/{audienceId}/syncDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
audienceIdyolstringEvet"adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

İstek gövdesi (zorunlu)

Şema: SyncAdAudienceDto

AlanTürZorunluAçıklama
fullbooleanHayır

Örnek:

{
  "full": true
}

Yanıtlar

202 — Başarılı.

Şema: AdAudienceSyncQueued

AlanTürZorunluAçıklama
queuedtrueEvet
next_sync_atstringEvet
modeenumEvetDeğerler: "incremental", "full"

Örnek yanıt:

{
  "queued": true,
  "next_sync_at": "örnek",
  "mode": "incremental"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences/adu_01JD3W5Q7X9K2M4N6P8R0T1V3W/sync" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "full": true
}'

Senkron geçmişi

GET/v1/apps/{appId}/ads/audiences/{audienceId}/syncsDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam segments:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
audienceIdyolstringEvet"adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
limitsorguintegerHayırAralık: 1–10050
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdAudienceSyncList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].audience_idstringEvet
data[].triggerenumEvetDeğerler: "schedule", "manual", "journey"
data[].modeenumEvetDeğerler: "incremental", "full"
data[].statusenumEvetDeğerler: "running", "succeeded", "partial", "failed"
data[].addedintegerEvet
data[].removedintegerEvet
data[].failedintegerEvet
data[].skipped_no_consentintegerEvet
data[].skipped_no_identifierintegerEvet
data[].batchesintegerEvet
data[].retriesintegerEvet
data[].errorstring | nullEvet
data[].started_atstringEvet
data[].finished_atstring | nullEvet
data[].duration_msinteger | nullEvet

Örnek yanıt:

{
  "data": [
    {
      "status": "running",
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "audience_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "trigger": "schedule",
      "mode": "incremental",
      "added": 1,
      "removed": 1,
      "failed": 1,
      "skipped_no_consent": 1,
      "skipped_no_identifier": 1,
      "batches": 1,
      "retries": 1,
      "error": "örnek",
      "started_at": "örnek",
      "finished_at": "örnek",
      "duration_ms": 1
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences/adu_01JD3W5Q7X9K2M4N6P8R0T1V3W/syncs?limit=50" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Benzer kitle (lookalike) oluştur

POST/v1/apps/{appId}/ads/audiences/{audienceId}/lookalikesDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
audienceIdyolstringEvet"adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

İstek gövdesi (zorunlu)

Şema: CreateLookalikeDto

AlanTürZorunluAçıklama
namestringHayırUzunluk: 1–120
countrystringEvet
rationumberEvetAralık: 0.01–0.2

Örnek:

{
  "country": "TR",
  "ratio": 0.2,
  "name": "Sipariş bildirimleri"
}

Yanıtlar

201 — Başarılı.

Şema: AdAudience

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
ad_account_idstringEvet
platformenumEvetDeğerler: "meta", "google", "tiktok", "linkedin"
sourceenumEvetDeğerler: "segment", "journey", "lookalike"
segment_idstring | nullEvet
segment_namestring | nullEvet
namestringEvet
descriptionstring | nullEvet
external_idstring | nullEvet
statusenumEvetDeğerler: "pending", "active", "paused", "error"
identifiersarray<enum>Evet
sync_interval_minutesintegerEvet
next_sync_atstring | nullEvet
last_synced_atstring | nullEvet
last_sync_statusenum | nullEvet
full_reload_requestedbooleanEvet
member_countintegerEvet
estimated_sizeinteger | nullEvet
match_ratenumber | nullEvet
size_updated_atstring | nullEvet
lookalike_source_idstring | nullEvet
lookalike_specobject | nullEvet
consecutive_failuresintegerEvet
last_errorstring | nullEvet
last_error_atstring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "status": "pending",
  "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform": "meta",
  "source": "segment",
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "segment_name": "örnek",
  "description": "Sipariş durumu güncellemeleri",
  "external_id": "user_42",
  "identifiers": [
    "email"
  ],
  "sync_interval_minutes": 1,
  "next_sync_at": "örnek",
  "last_synced_at": "örnek",
  "last_sync_status": "succeeded",
  "full_reload_requested": true,
  "member_count": 1,
  "estimated_size": 1,
  "match_rate": 1.5,
  "size_updated_at": "örnek",
  "lookalike_source_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "lookalike_spec": {
    "country": "TR",
    "ratio": 1.5
  },
  "consecutive_failures": 1,
  "last_error": "örnek",
  "last_error_at": "örnek",
  "created_at": "örnek",
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/audiences/adu_01JD3W5Q7X9K2M4N6P8R0T1V3W/lookalikes" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "country": "TR",
  "ratio": 0.2,
  "name": "Sipariş bildirimleri"
}'

Kampanya / reklam seti / reklam listesi ve metrikler

GET/v1/apps/{appId}/ads/campaignsDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
ad_account_idsorgustringHayırUzunluk: 1–64"ada_01JD3W5Q7X9K2M4N6P8R0T1V3W"
levelsorguenumHayırDeğerler: "campaign", "ad_set", "ad""campaign"
parent_idsorgustringHayırUzunluk: 1–100"adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
statussorguenumHayırDeğerler: "active", "paused", "pending", "rejected", "archived", "deleted", "unknown""active"
qsorgustringHayırUzunluk: 0–100"ayse"
fromsorgustringHayır"2026-10-01T00:00:00Z"
tosorgustringHayır"2026-10-17T00:00:00Z"
limitsorguintegerHayırAralık: 1–50050
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdEntityList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].app_idstringEvet
data[].ad_account_idstringEvet
data[].platformenumEvetDeğerler: "meta", "google", "tiktok"
data[].levelenumEvetDeğerler: "campaign", "ad_set", "ad"
data[].external_idstringEvet
data[].campaign_external_idstringEvet
data[].ad_set_external_idstring | nullEvet
data[].namestringEvet
data[].statusenumEvetDeğerler: "active", "paused", "pending", "rejected", "archived", "deleted", "unknown"
data[].platform_statusstring | nullEvet
data[].objectivestring | nullEvet
data[].optimization_goalstring | nullEvet
data[].currencystring | nullEvet
data[].daily_budgetstring | nullEvet
data[].lifetime_budgetstring | nullEvet
data[].start_atstring | nullEvet
data[].end_atstring | nullEvet
data[].audience_external_idsarray<string>Evet
data[].creativeobject | nullEvet
data[].budget_editablebooleanEvet
data[].created_by_pushizobooleanEvet
data[].last_seen_atstring | nullEvet
data[].platform_urlstringEvet
data[].metricsobject | nullEvet
data[].updated_atstringEvet
fromstringEvet
tostringEvet
accountsarray<object>Evet
accounts[].idstringEvet
accounts[].campaigns_synced_atstring | nullEvet
accounts[].insights_synced_atstring | nullEvet
accounts[].campaigns_sync_errorstring | nullEvet
accounts[].insights_sync_errorstring | nullEvet

Örnek yanıt:

{
  "data": [
    {
      "name": "Sipariş bildirimleri",
      "status": "active",
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "platform": "meta",
      "level": "campaign",
      "external_id": "user_42",
      "campaign_external_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "ad_set_external_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "platform_status": "örnek",
      "objective": "örnek",
      "optimization_goal": "örnek",
      "currency": "TRY",
      "daily_budget": "örnek",
      "lifetime_budget": "örnek",
      "start_at": "örnek",
      "end_at": "örnek",
      "audience_external_ids": [
        "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
      ],
      "creative": {
        "title": "Siparişiniz yola çıktı",
        "body": "Takip bağlantısı içeride",
        "description": "Sipariş durumu güncellemeleri",
        "link_url": "https://example.com/orders/1001",
        "image_url": "https://example.com/orders/1001",
        "call_to_action": "örnek"
      },
      "budget_editable": true,
      "created_by_pushizo": true,
      "last_seen_at": "örnek",
      "platform_url": "https://example.com/orders/1001",
      "metrics": {
        "impressions": 1.5,
        "clicks": 1.5,
        "spend": 1.5,
        "conversions": 1.5,
        "conversion_value": 149.9,
        "ctr": 1.5,
        "cpc": 1.5,
        "roas": 1.5
      },
      "updated_at": "örnek"
    }
  ],
  "from": "2026-10-01T00:00:00Z",
  "to": "2026-10-17T00:00:00Z",
  "accounts": [
    {
      "id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "campaigns_synced_at": "örnek",
      "insights_synced_at": "örnek",
      "campaigns_sync_error": "örnek",
      "insights_sync_error": "örnek"
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/campaigns?limit=50" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Kampanya / reklam seti / reklam ayrıntısı

GET/v1/apps/{appId}/ads/campaigns/{entityId}Dene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
entityIdyolstringEvet"ade_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdEntity

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
ad_account_idstringEvet
platformenumEvetDeğerler: "meta", "google", "tiktok"
levelenumEvetDeğerler: "campaign", "ad_set", "ad"
external_idstringEvet
campaign_external_idstringEvet
ad_set_external_idstring | nullEvet
namestringEvet
statusenumEvetDeğerler: "active", "paused", "pending", "rejected", "archived", "deleted", "unknown"
platform_statusstring | nullEvet
objectivestring | nullEvet
optimization_goalstring | nullEvet
currencystring | nullEvet
daily_budgetstring | nullEvet
lifetime_budgetstring | nullEvet
start_atstring | nullEvet
end_atstring | nullEvet
audience_external_idsarray<string>Evet
creativeobject | nullEvet
budget_editablebooleanEvet
created_by_pushizobooleanEvet
last_seen_atstring | nullEvet
platform_urlstringEvet
metricsobject | nullEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "status": "active",
  "id": "ade_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform": "meta",
  "level": "campaign",
  "external_id": "user_42",
  "campaign_external_id": "ade_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_set_external_id": "ade_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform_status": "örnek",
  "objective": "örnek",
  "optimization_goal": "örnek",
  "currency": "TRY",
  "daily_budget": "örnek",
  "lifetime_budget": "örnek",
  "start_at": "örnek",
  "end_at": "örnek",
  "audience_external_ids": [
    "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
  ],
  "creative": {
    "title": "Siparişiniz yola çıktı",
    "body": "Takip bağlantısı içeride",
    "description": "Sipariş durumu güncellemeleri",
    "link_url": "https://example.com/orders/1001",
    "image_url": "https://example.com/orders/1001",
    "call_to_action": "örnek"
  },
  "budget_editable": true,
  "created_by_pushizo": true,
  "last_seen_at": "örnek",
  "platform_url": "https://example.com/orders/1001",
  "metrics": {
    "impressions": 1.5,
    "clicks": 1.5,
    "spend": 1.5,
    "conversions": 1.5,
    "conversion_value": 149.9,
    "ctr": 1.5,
    "cpc": 1.5,
    "roas": 1.5
  },
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/campaigns/ade_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Durum ve günlük bütçe değişikliği

PATCH/v1/apps/{appId}/ads/campaigns/{entityId}Dene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
entityIdyolstringEvet"ade_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

İstek gövdesi (zorunlu)

Şema: UpdateAdCampaignDto

AlanTürZorunluAçıklama
statusenumHayırDeğerler: "active", "paused"
daily_budgetstring | numberHayır

Örnek:

{
  "status": "active",
  "daily_budget": "değer"
}

Yanıtlar

200 — Başarılı.

Şema: AdEntity

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
ad_account_idstringEvet
platformenumEvetDeğerler: "meta", "google", "tiktok"
levelenumEvetDeğerler: "campaign", "ad_set", "ad"
external_idstringEvet
campaign_external_idstringEvet
ad_set_external_idstring | nullEvet
namestringEvet
statusenumEvetDeğerler: "active", "paused", "pending", "rejected", "archived", "deleted", "unknown"
platform_statusstring | nullEvet
objectivestring | nullEvet
optimization_goalstring | nullEvet
currencystring | nullEvet
daily_budgetstring | nullEvet
lifetime_budgetstring | nullEvet
start_atstring | nullEvet
end_atstring | nullEvet
audience_external_idsarray<string>Evet
creativeobject | nullEvet
budget_editablebooleanEvet
created_by_pushizobooleanEvet
last_seen_atstring | nullEvet
platform_urlstringEvet
metricsobject | nullEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "status": "active",
  "id": "ade_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform": "meta",
  "level": "campaign",
  "external_id": "user_42",
  "campaign_external_id": "ade_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "ad_set_external_id": "ade_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "platform_status": "örnek",
  "objective": "örnek",
  "optimization_goal": "örnek",
  "currency": "TRY",
  "daily_budget": "örnek",
  "lifetime_budget": "örnek",
  "start_at": "örnek",
  "end_at": "örnek",
  "audience_external_ids": [
    "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W"
  ],
  "creative": {
    "title": "Siparişiniz yola çıktı",
    "body": "Takip bağlantısı içeride",
    "description": "Sipariş durumu güncellemeleri",
    "link_url": "https://example.com/orders/1001",
    "image_url": "https://example.com/orders/1001",
    "call_to_action": "örnek"
  },
  "budget_editable": true,
  "created_by_pushizo": true,
  "last_seen_at": "örnek",
  "platform_url": "https://example.com/orders/1001",
  "metrics": {
    "impressions": 1.5,
    "clicks": 1.5,
    "spend": 1.5,
    "conversions": 1.5,
    "conversion_value": 149.9,
    "ctr": 1.5,
    "cpc": 1.5,
    "roas": 1.5
  },
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X PATCH "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/campaigns/ade_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "status": "active",
  "daily_budget": "değer"
}'

Kampanyaları ve metrikleri şimdi yenile

POST/v1/apps/{appId}/ads/accounts/{accountId}/refreshDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
accountIdyolstringEvet"ada_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

202 — Başarılı.

Şema: AdRefreshQueued

AlanTürZorunluAçıklama
queuedtrueEvet
next_sync_atstringEvet

Örnek yanıt:

{
  "queued": true,
  "next_sync_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/accounts/ada_01JD3W5Q7X9K2M4N6P8R0T1V3W/refresh" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Harcama ve performans raporu

GET/v1/apps/{appId}/ads/reports/spendDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
fromsorgustringEvet"2026-10-01T00:00:00Z"
tosorgustringEvet"2026-10-17T00:00:00Z"
currencysorgustringHayır"TRY"
group_bysorguenumHayırDeğerler: "day", "platform", "account", "campaign", "ad_set""day"
ad_account_idsorgustringHayırUzunluk: 1–64"ada_01JD3W5Q7X9K2M4N6P8R0T1V3W"
campaign_idsorgustringHayırUzunluk: 1–100"ade_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdSpendReport

AlanTürZorunluAçıklama
fromstringEvet
tostringEvet
currencystringEvet
group_bystringEvet
rowsarray<object>Evet
rows[].keystringEvet
rows[].labelstringEvet
rows[].platformstring | nullEvet
rows[].impressionsnumberEvet
rows[].clicksnumberEvet
rows[].spendnumberEvet
rows[].conversionsnumberEvet
rows[].conversion_valuenumberEvet
rows[].ctrnumber | nullEvet
rows[].cpcnumber | nullEvet
rows[].cpanumber | nullEvet
rows[].roasnumber | nullEvet
totalsobjectEvet
totals.impressionsnumberEvet
totals.clicksnumberEvet
totals.spendnumberEvet
totals.conversionsnumberEvet
totals.conversion_valuenumberEvet
totals.ctrnumber | nullEvet
totals.cpcnumber | nullEvet
totals.cpanumber | nullEvet
totals.roasnumber | nullEvet
fx_missingarray<string>Evet
storeenumEvetDeğerler: "postgres", "clickhouse"

Örnek yanıt:

{
  "from": "2026-10-01T00:00:00Z",
  "to": "2026-10-17T00:00:00Z",
  "currency": "TRY",
  "group_by": "örnek",
  "rows": [
    {
      "key": "key-2026-10",
      "label": "external_id",
      "platform": "örnek",
      "impressions": 1.5,
      "clicks": 1.5,
      "spend": 1.5,
      "conversions": 1.5,
      "conversion_value": 149.9,
      "ctr": 1.5,
      "cpc": 1.5,
      "cpa": 1.5,
      "roas": 1.5
    }
  ],
  "totals": {
    "impressions": 1.5,
    "clicks": 1.5,
    "spend": 1.5,
    "conversions": 1.5,
    "conversion_value": 149.9,
    "ctr": 1.5,
    "cpc": 1.5,
    "cpa": 1.5,
    "roas": 1.5
  },
  "fx_missing": [
    "örnek"
  ],
  "store": "postgres"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/reports/spend?from=2026-10-01T00%3A00%3A00Z&to=2026-10-17T00%3A00%3A00Z" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Birleşik atribüsyon raporu (ROAS, CAC)

GET/v1/apps/{appId}/ads/reports/attributionDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
fromsorgustringEvet"2026-10-01T00:00:00Z"
tosorgustringEvet"2026-10-17T00:00:00Z"
modelsorguenumHayırDeğerler: "last_click", "first_click", "linear", "time_decay""last_click"
window_dayssorguintegerHayırAralık: 1–901
half_life_dayssorguintegerHayırAralık: 1–301
currencysorgustringHayır"TRY"
group_bysorguenumHayırDeğerler: "channel", "campaign", "ad_set""channel"
conversion_eventssorgustringHayırUzunluk: 0–1000"örnek"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdAttributionReport

AlanTürZorunluAçıklama
fromstringEvet
tostringEvet
modelenumEvetDeğerler: "last_click", "first_click", "linear", "time_decay"
window_daysintegerEvet
half_life_daysintegerEvet
currencystringEvet
group_bystringEvet
conversion_eventsarray<string>Evet
rowsarray<object>Evet
rows[].keystringEvet
rows[].channelenumEvetDeğerler: "meta", "google", "tiktok", "linkedin", "microsoft", "other_paid", "utm", "push", "email", "sms", "whatsapp", "rcs", "direct"
rows[].labelstringEvet
rows[].paidbooleanEvet
rows[].conversionsnumberEvet
rows[].revenuenumberEvet
rows[].new_customersnumberEvet
rows[].spendnumber | nullEvet
rows[].roasnumber | nullEvet
rows[].cacnumber | nullEvet
totalsobjectEvet
totals.conversionsnumberEvet
totals.revenuenumberEvet
totals.spendnumberEvet
totals.new_customersnumberEvet
totals.roasnumber | nullEvet
totals.platform_roasnumber | nullEvet
totals.cacnumber | nullEvet
totals.paid_cacnumber | nullEvet
truncatedbooleanEvet
fx_missingarray<string>Evet

Örnek yanıt:

{
  "from": "2026-10-01T00:00:00Z",
  "to": "2026-10-17T00:00:00Z",
  "model": "last_click",
  "window_days": 1,
  "half_life_days": 1,
  "currency": "TRY",
  "group_by": "örnek",
  "conversion_events": [
    "örnek"
  ],
  "rows": [
    {
      "channel": "meta",
      "key": "key-2026-10",
      "label": "external_id",
      "paid": true,
      "conversions": 1.5,
      "revenue": 149.9,
      "new_customers": 1.5,
      "spend": 1.5,
      "roas": 1.5,
      "cac": 1.5
    }
  ],
  "totals": {
    "conversions": 1.5,
    "revenue": 149.9,
    "spend": 1.5,
    "new_customers": 1.5,
    "roas": 1.5,
    "platform_roas": 1.5,
    "cac": 1.5,
    "paid_cac": 1.5
  },
  "truncated": true,
  "fx_missing": [
    "örnek"
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/reports/attribution?from=2026-10-01T00%3A00%3A00Z&to=2026-10-17T00%3A00%3A00Z" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Kohort LTV raporu

GET/v1/apps/{appId}/ads/reports/ltvDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
monthssorguintegerHayırAralık: 1–241
cohortssorguintegerHayırAralık: 1–121
currencysorgustringHayır"TRY"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdLtvReport

AlanTürZorunluAçıklama
currencystringEvet
monthsintegerEvet
conversion_eventsarray<string>Evet
cohortsarray<object>Evet
cohorts[].cohortstringEvet
cohorts[].sizeintegerEvet
cohorts[].revenuearray<number>Evet
cohorts[].ltvarray<number>Evet
averagearray<number | null>Evet
fx_missingarray<string>Evet

Örnek yanıt:

{
  "currency": "TRY",
  "months": 1,
  "conversion_events": [
    "örnek"
  ],
  "cohorts": [
    {
      "cohort": "örnek",
      "size": 1,
      "revenue": [
        149.9
      ],
      "ltv": [
        1.5
      ]
    }
  ],
  "average": [
    1.5
  ],
  "fx_missing": [
    "örnek"
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/reports/ltv" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Conversions API yapılandırmaları

GET/v1/apps/{appId}/ads/conversions-api/configsDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdCapiConfigList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].app_idstringEvet
data[].platformenumEvetDeğerler: "meta", "google", "tiktok"
data[].namestringEvet
data[].ad_account_idstring | nullEvet
data[].enabledbooleanEvet
data[].settingsobjectEvet
data[].settings.pixel_idstring | nullEvet
data[].settings.customer_idstring | nullEvet
data[].settings.login_customer_idstring | nullEvet
data[].settings.pixel_codestring | nullEvet
data[].event_mappingsarray<object>Evet
data[].event_mappings[].event_namestringEvet
data[].event_mappings[].platform_eventstringEvet
data[].event_mappings[].value_propertystring | nullEvet
data[].event_mappings[].currency_propertystring | nullEvet
data[].test_event_codestring | nullEvet
data[].test_modebooleanEvet
data[].action_sourceenumEvetDeğerler: "website", "app"
data[].default_currencystringEvet
data[].has_access_tokenbooleanEvet
data[].last_sent_atstring | nullEvet
data[].last_errorstring | nullEvet
data[].last_error_atstring | nullEvet
data[].statsobjectEvet
data[].stats.pendingintegerEvet
data[].stats.sentintegerEvet
data[].stats.failedintegerEvet
data[].stats.skippedintegerEvet
data[].created_atstringEvet
data[].updated_atstringEvet

Örnek yanıt:

{
  "data": [
    {
      "name": "Sipariş bildirimleri",
      "enabled": true,
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "platform": "meta",
      "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "settings": {
        "pixel_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
        "customer_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
        "login_customer_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
        "pixel_code": "örnek"
      },
      "event_mappings": [
        {
          "event_name": "purchase",
          "platform_event": "örnek",
          "value_property": "örnek",
          "currency_property": "örnek"
        }
      ],
      "test_event_code": "örnek",
      "test_mode": true,
      "action_source": "website",
      "default_currency": "örnek",
      "has_access_token": true,
      "last_sent_at": "örnek",
      "last_error": "örnek",
      "last_error_at": "örnek",
      "stats": {
        "pending": 1,
        "sent": 1,
        "failed": 1,
        "skipped": 1
      },
      "created_at": "örnek",
      "updated_at": "örnek"
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/conversions-api/configs" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Conversions API teslim geçmişi

GET/v1/apps/{appId}/ads/conversions-api/deliveriesDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
config_idsorgustringHayırUzunluk: 1–64"cac_01JD3W5Q7X9K2M4N6P8R0T1V3W"
statussorguenumHayırDeğerler: "pending", "sent", "failed", "skipped""pending"
limitsorguintegerHayırAralık: 1–20050
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdCapiDeliveryList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].config_idstringEvet
data[].platformenumEvetDeğerler: "meta", "google", "tiktok"
data[].event_idstringEvet
data[].event_namestringEvet
data[].platform_eventstringEvet
data[].dedup_idstringEvet
data[].user_idstring | nullEvet
data[].valuenumber | nullEvet
data[].currencystring | nullEvet
data[].statusenumEvetDeğerler: "pending", "sent", "failed", "skipped"
data[].skip_reasonstring | nullEvet
data[].attemptsintegerEvet
data[].next_attempt_atstring | nullEvet
data[].last_errorstring | nullEvet
data[].testbooleanEvet
data[].event_occurred_atstringEvet
data[].sent_atstring | nullEvet
data[].created_atstringEvet

Örnek yanıt:

{
  "data": [
    {
      "status": "pending",
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "config_id": "cac_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "platform": "meta",
      "event_id": "evt_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "event_name": "purchase",
      "platform_event": "örnek",
      "dedup_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "user_id": "usr_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "value": 149.9,
      "currency": "TRY",
      "skip_reason": "örnek",
      "attempts": 1,
      "next_attempt_at": "örnek",
      "last_error": "örnek",
      "test": true,
      "event_occurred_at": "örnek",
      "sent_at": "örnek",
      "created_at": "örnek"
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/conversions-api/deliveries?limit=50" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Bütçe uyarı kuralları

GET/v1/apps/{appId}/ads/alert-rulesDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdBudgetAlertRuleList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].app_idstringEvet
data[].namestringEvet
data[].kindenumEvetDeğerler: "daily_spend", "roas_drop", "budget_depletion"
data[].ad_account_idstring | nullEvet
data[].campaign_external_idstring | nullEvet
data[].thresholdnumberEvet
data[].window_daysintegerEvet
data[].recipientsarray<string>Evet
data[].enabledbooleanEvet
data[].last_valuenumber | nullEvet
data[].last_evaluated_atstring | nullEvet
data[].last_triggered_onstring | nullEvet
data[].created_atstringEvet
data[].updated_atstringEvet

Örnek yanıt:

{
  "data": [
    {
      "name": "Sipariş bildirimleri",
      "enabled": true,
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "kind": "daily_spend",
      "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "campaign_external_id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "threshold": 1.5,
      "window_days": 1,
      "recipients": [
        "örnek"
      ],
      "last_value": 149.9,
      "last_evaluated_at": "örnek",
      "last_triggered_on": "örnek",
      "created_at": "örnek",
      "updated_at": "örnek"
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/alert-rules" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Bütçe uyarı kuralı oluştur

POST/v1/apps/{appId}/ads/alert-rulesDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

İstek gövdesi (zorunlu)

Şema: CreateBudgetAlertRuleDto

AlanTürZorunluAçıklama
namestringEvetUzunluk: 1–120
kindenumEvetDeğerler: "daily_spend", "roas_drop", "budget_depletion"
ad_account_idstring | nullHayır
campaign_external_idstring | nullHayır
thresholdnumberEvetAralık: −∞–1000000000000
window_daysintegerHayırAralık: 1–30
recipientsarray<string (email)>HayırÖğe: 0–20
enabledbooleanHayır

Örnek:

{
  "name": "Sipariş bildirimleri",
  "kind": "daily_spend",
  "threshold": 1.5,
  "enabled": true,
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "campaign_external_id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "window_days": 1,
  "recipients": [
    "ayse@example.com"
  ]
}

Yanıtlar

201 — Başarılı.

Şema: AdBudgetAlertRule

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
namestringEvet
kindenumEvetDeğerler: "daily_spend", "roas_drop", "budget_depletion"
ad_account_idstring | nullEvet
campaign_external_idstring | nullEvet
thresholdnumberEvet
window_daysintegerEvet
recipientsarray<string>Evet
enabledbooleanEvet
last_valuenumber | nullEvet
last_evaluated_atstring | nullEvet
last_triggered_onstring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "enabled": true,
  "id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "kind": "daily_spend",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "campaign_external_id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "threshold": 1.5,
  "window_days": 1,
  "recipients": [
    "örnek"
  ],
  "last_value": 149.9,
  "last_evaluated_at": "örnek",
  "last_triggered_on": "örnek",
  "created_at": "örnek",
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/alert-rules" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Sipariş bildirimleri",
  "kind": "daily_spend",
  "threshold": 1.5,
  "enabled": true,
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "campaign_external_id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "window_days": 1,
  "recipients": [
    "ayse@example.com"
  ]
}'

Bütçe uyarı kuralını güncelle

PATCH/v1/apps/{appId}/ads/alert-rules/{ruleId}Dene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
ruleIdyolstringEvet"bar_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

İstek gövdesi (zorunlu)

Şema: UpdateBudgetAlertRuleDto

AlanTürZorunluAçıklama
namestringHayırUzunluk: 1–120
ad_account_idstring | nullHayır
campaign_external_idstring | nullHayır
thresholdnumberHayırAralık: −∞–1000000000000
window_daysintegerHayırAralık: 1–30
recipientsarray<string (email)>HayırÖğe: 0–20
enabledbooleanHayır

Örnek:

{
  "name": "Sipariş bildirimleri",
  "enabled": true,
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "campaign_external_id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "threshold": 1.5
}

Yanıtlar

200 — Başarılı.

Şema: AdBudgetAlertRule

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
namestringEvet
kindenumEvetDeğerler: "daily_spend", "roas_drop", "budget_depletion"
ad_account_idstring | nullEvet
campaign_external_idstring | nullEvet
thresholdnumberEvet
window_daysintegerEvet
recipientsarray<string>Evet
enabledbooleanEvet
last_valuenumber | nullEvet
last_evaluated_atstring | nullEvet
last_triggered_onstring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "enabled": true,
  "id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "kind": "daily_spend",
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "campaign_external_id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "threshold": 1.5,
  "window_days": 1,
  "recipients": [
    "örnek"
  ],
  "last_value": 149.9,
  "last_evaluated_at": "örnek",
  "last_triggered_on": "örnek",
  "created_at": "örnek",
  "updated_at": "örnek"
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X PATCH "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/alert-rules/bar_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Sipariş bildirimleri",
  "enabled": true,
  "ad_account_id": "ada_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "campaign_external_id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "threshold": 1.5
}'

Bütçe uyarı kuralını sil

DELETE/v1/apps/{appId}/ads/alert-rules/{ruleId}Dene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
ruleIdyolstringEvet"bar_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdOk

AlanTürZorunluAçıklama
oktrueEvet

Örnek yanıt:

{
  "ok": true
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X DELETE "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/alert-rules/bar_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Tetiklenen bütçe uyarıları

GET/v1/apps/{appId}/ads/alertsDene (etkileşimli API belgesi, yeni sekme)

Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
rule_idsorgustringHayırUzunluk: 1–64"bar_01JD3W5Q7X9K2M4N6P8R0T1V3W"
limitsorguintegerHayırAralık: 1–20050
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: AdBudgetAlertList

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].rule_idstringEvet
data[].rule_namestringEvet
data[].kindenumEvetDeğerler: "daily_spend", "roas_drop", "budget_depletion"
data[].daystringEvet
data[].valuenumberEvet
data[].thresholdnumberEvet
data[].detailsmap<string, any>Evet
data[].emailedintegerEvet
data[].created_atstringEvet

Örnek yanıt:

{
  "data": [
    {
      "id": "adu_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "rule_id": "bar_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "rule_name": "örnek",
      "kind": "daily_spend",
      "day": "örnek",
      "value": 149.9,
      "threshold": 1.5,
      "details": {
        "key": "örnek"
      },
      "emailed": 1,
      "created_at": "örnek"
    }
  ]
}

Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).

Örnekler

curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/ads/alerts?limit=50" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Bu sayfada