PushizoDocs
API referansı

Segmentler

Segmentler — 8 işlem (GET /v1/apps/{appId}/segments, POST /v1/apps/{appId}/segments, POST /v1/apps/{appId}/segments/preview, …). OpenAPI 3.1.0 sözleşmesinden üretilir.

Dinamik/statik segmentler, koşul AST’si ile canlı önizleme ve kitle tahmini.

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

İşlemler

YöntemYolİşlem
GET/v1/apps/{appId}/segmentsSegment listesi
POST/v1/apps/{appId}/segmentsSegment oluştur
POST/v1/apps/{appId}/segments/previewTanım ile sayım ve örnek kullanıcılar
GET/v1/apps/{appId}/segments/{segmentId}Segment detayı
PATCH/v1/apps/{appId}/segments/{segmentId}Segment güncelle
DELETE/v1/apps/{appId}/segments/{segmentId}Segment sil
GET/v1/apps/{appId}/segments/{segmentId}/campaignsSegmenti kullanan kampanyalar
POST/v1/apps/{appId}/segments/{segmentId}/estimateTahmini sayım

Ayrıntılar

Segment listesi

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

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
limitsorguintegerHayırVarsayılan: 50; Aralık: 1–20050
cursorsorgustringHayırUzunluk: 1–∞"eyJpZCI6Im1zZ18wMUpE…"
qsorgustringHayırUzunluk: 1–100"ayse"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: SegmentPage

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].app_idstringEvet
data[].namestringEvet
data[].descriptionstring | nullEvet
data[].definitionmap<string, any>Evet
data[].is_dynamicbooleanEvet
data[].estimated_countinteger | nullEvet
data[].estimated_atstring | nullEvet
data[].created_bystring | nullEvet
data[].created_atstringEvet
data[].updated_atstringEvet
next_cursorstring | nullEvet
has_morebooleanEvet

Örnek yanıt:

{
  "data": [
    {
      "name": "Sipariş bildirimleri",
      "id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "description": "Sipariş durumu güncellemeleri",
      "definition": {
        "key": "örnek"
      },
      "is_dynamic": true,
      "estimated_count": 1,
      "estimated_at": "örnek",
      "created_by": "örnek",
      "created_at": "örnek",
      "updated_at": "örnek"
    }
  ],
  "next_cursor": "eyJpZCI6Im1zZ18wMUpE…",
  "has_more": 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 GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/segments?limit=50" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Segment oluştur

POST/v1/apps/{appId}/segmentsDene (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)

AlanTürZorunluAçıklama
namestringEvetUzunluk: 2–100
descriptionstring | nullHayırUzunluk: 0–500
definitionobjectEvetFiltre AST: all/any/none grupları ve { field, op, value } koşulları (docs/plan/05 §5.7).
definition.allarray<object>Hayır
definition.anyarray<object>Hayır
definition.nonearray<object>Hayır
is_dynamicbooleanHayır

Örnek:

{
  "name": "Sipariş bildirimleri",
  "definition": {
    "all": [
      {}
    ],
    "any": [
      {}
    ],
    "none": [
      {}
    ]
  },
  "description": "Sipariş durumu güncellemeleri",
  "is_dynamic": true
}

Yanıtlar

200 — Başarılı.

Şema: Segment

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
namestringEvet
descriptionstring | nullEvet
definitionmap<string, any>Evet
is_dynamicbooleanEvet
estimated_countinteger | nullEvet
estimated_atstring | nullEvet
created_bystring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "description": "Sipariş durumu güncellemeleri",
  "definition": {
    "key": "örnek"
  },
  "is_dynamic": true,
  "estimated_count": 1,
  "estimated_at": "örnek",
  "created_by": "ö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/segments" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Sipariş bildirimleri",
  "definition": {
    "all": [
      {}
    ],
    "any": [
      {}
    ],
    "none": [
      {}
    ]
  },
  "description": "Sipariş durumu güncellemeleri",
  "is_dynamic": true
}'

Tanım ile sayım ve örnek kullanıcılar

POST/v1/apps/{appId}/segments/previewDene (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"

İstek gövdesi (zorunlu)

AlanTürZorunluAçıklama
definitionobjectEvetFiltre AST: all/any/none grupları ve { field, op, value } koşulları (docs/plan/05 §5.7).
definition.allarray<object>Hayır
definition.anyarray<object>Hayır
definition.nonearray<object>Hayır
limitintegerHayırAralık: 1–50

Örnek:

{
  "definition": {
    "all": [
      {}
    ],
    "any": [
      {}
    ],
    "none": [
      {}
    ]
  },
  "limit": 50
}

Yanıtlar

200 — Başarılı.

Şema: SegmentPreview

AlanTürZorunluAçıklama
subscriptionsintegerEvet
usersintegerEvet
sampledbooleanEvet
samplearray<object>Evet
sample[].idstringEvet
sample[].external_idstring | nullEvet
sample[].tagsmap<string, string>Evet
sample[].last_active_atstringEvet

Örnek yanıt:

{
  "subscriptions": 1,
  "users": 1,
  "sampled": true,
  "sample": [
    {
      "tags": {
        "plan": "pro",
        "city": "Istanbul"
      },
      "id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "external_id": "user_42",
      "last_active_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/segments/preview" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "definition": {
    "all": [
      {}
    ],
    "any": [
      {}
    ],
    "none": [
      {}
    ]
  },
  "limit": 50
}'

Segment detayı

GET/v1/apps/{appId}/segments/{segmentId}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
segmentIdyolstringEvet"seg_01JD3W5Q7X9K2M4N6P8R0T1V3W"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: Segment

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
namestringEvet
descriptionstring | nullEvet
definitionmap<string, any>Evet
is_dynamicbooleanEvet
estimated_countinteger | nullEvet
estimated_atstring | nullEvet
created_bystring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "description": "Sipariş durumu güncellemeleri",
  "definition": {
    "key": "örnek"
  },
  "is_dynamic": true,
  "estimated_count": 1,
  "estimated_at": "örnek",
  "created_by": "ö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/segments/seg_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Segment güncelle

PATCH/v1/apps/{appId}/segments/{segmentId}Dene (etkileşimli API belgesi, yeni sekme)

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

Parametreler

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

İstek gövdesi (zorunlu)

AlanTürZorunluAçıklama
namestringHayırUzunluk: 2–100
descriptionstring | nullHayırUzunluk: 0–500
definitionobjectHayırFiltre AST: all/any/none grupları ve { field, op, value } koşulları (docs/plan/05 §5.7).
definition.allarray<object>Hayır
definition.anyarray<object>Hayır
definition.nonearray<object>Hayır
is_dynamicbooleanHayır

Örnek:

{
  "name": "Sipariş bildirimleri",
  "description": "Sipariş durumu güncellemeleri",
  "definition": {
    "all": [
      {}
    ],
    "any": [
      {}
    ],
    "none": [
      {}
    ]
  },
  "is_dynamic": true
}

Yanıtlar

200 — Başarılı.

Şema: Segment

AlanTürZorunluAçıklama
idstringEvet
app_idstringEvet
namestringEvet
descriptionstring | nullEvet
definitionmap<string, any>Evet
is_dynamicbooleanEvet
estimated_countinteger | nullEvet
estimated_atstring | nullEvet
created_bystring | nullEvet
created_atstringEvet
updated_atstringEvet

Örnek yanıt:

{
  "name": "Sipariş bildirimleri",
  "id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "description": "Sipariş durumu güncellemeleri",
  "definition": {
    "key": "örnek"
  },
  "is_dynamic": true,
  "estimated_count": 1,
  "estimated_at": "örnek",
  "created_by": "ö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/segments/seg_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Sipariş bildirimleri",
  "description": "Sipariş durumu güncellemeleri",
  "definition": {
    "all": [
      {}
    ],
    "any": [
      {}
    ],
    "none": [
      {}
    ]
  },
  "is_dynamic": true
}'

Segment sil

DELETE/v1/apps/{appId}/segments/{segmentId}Dene (etkileşimli API belgesi, yeni sekme)

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

Parametreler

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

Yanıtlar

200 — Başarılı.

Şema: Ok

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/segments/seg_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Segmenti kullanan kampanyalar

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

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

Parametreler

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

Yanıtlar

200 — Başarılı.

Şema: SegmentCampaigns

AlanTürZorunluAçıklama
dataarray<object>Evet
data[].idstringEvet
data[].namestringEvet
data[].statusstringEvet
data[].typestringEvet
data[].usageenumEvetDeğerler: "include", "exclude"
data[].created_atstringEvet

Örnek yanıt:

{
  "data": [
    {
      "name": "Sipariş bildirimleri",
      "type": "örnek",
      "status": "örnek",
      "id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
      "usage": "include",
      "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/segments/seg_01JD3W5Q7X9K2M4N6P8R0T1V3W/campaigns" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Tahmini sayım

POST/v1/apps/{appId}/segments/{segmentId}/estimateDene (etkileşimli API belgesi, yeni sekme)

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

Parametreler

AdKonumTürZorunluAçıklamaÖrnek
segmentIdyolstringEvet"seg_01JD3W5Q7X9K2M4N6P8R0T1V3W"
forcesorguenumHayırtrue: önbelleği atla, tam sayım. Değerler: "true", "false""true"
appIdyolstringEvet"app_01JD3W5Q7X9K2M4N6P8R0T1V3W"

Yanıtlar

200 — Başarılı.

Şema: SegmentEstimate

AlanTürZorunluAçıklama
segment_idstring | nullEvet
subscriptionsintegerEvet
usersintegerEvet
estimated_atstringEvet
cachedbooleanEvet
sampledbooleanEvet

Örnek yanıt:

{
  "subscriptions": 1,
  "segment_id": "seg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
  "users": 1,
  "estimated_at": "örnek",
  "cached": true,
  "sampled": 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 POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/segments/seg_01JD3W5Q7X9K2M4N6P8R0T1V3W/estimate" \
  -H "Authorization: Bearer $PUSHIZO_API_KEY"

Bu sayfada