In-app mesajlar
In-app mesajlar — 7 işlem (GET /v1/apps/{appId}/in-app-messages, POST /v1/apps/{appId}/in-app-messages, GET /v1/apps/{appId}/in-app-messages/{messageId}, …). OpenAPI 3.1.0 sözleşmesinden üretilir.
In-app mesaj tanımları (modal/banner/tam ekran), tetikler, durum değişiklikleri ve A/B kazanan seçimi.
Taban adres: https://api.pushizo.com · Etiket: in-app · Etkileşimli belge (Scalar)
İşlemler
| Yöntem | Yol | İşlem |
|---|---|---|
GET | /v1/apps/{appId}/in-app-messages | In-app mesajlar (durum filtresi; istatistik dahil) |
POST | /v1/apps/{appId}/in-app-messages | In-app mesaj oluştur (taslak) |
GET | /v1/apps/{appId}/in-app-messages/{messageId} | In-app mesaj detayı ve istatistikleri |
PATCH | /v1/apps/{appId}/in-app-messages/{messageId} | In-app mesajı düzenle |
DELETE | /v1/apps/{appId}/in-app-messages/{messageId} | In-app mesajı sil |
POST | /v1/apps/{appId}/in-app-messages/{messageId}/status | Yayınla / duraklat / arşivle |
POST | /v1/apps/{appId}/in-app-messages/{messageId}/winner | A/B kazananını elle seç |
Ayrıntılar
In-app mesajlar (durum filtresi; istatistik dahil)
Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
limit | sorgu | integer | Hayır | Varsayılan: 50; Aralık: 1–200 | 50 |
cursor | sorgu | string | Hayır | Uzunluk: 1–∞ | "eyJpZCI6Im1zZ18wMUpE…" |
status | sorgu | enum | Hayır | Değerler: "draft", "active", "paused", "archived" | "draft" |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: InAppMessagePage
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
data | array<object> | Evet | |
data[].id | string | Evet | |
data[].app_id | string | Evet | |
data[].name | string | Evet | |
data[].status | enum | Evet | Değerler: "draft", "active", "paused", "archived" |
data[].priority | integer | Evet | |
data[].triggers | array<object> | Evet | |
data[].trigger_groups | array<array<object>> | null | Evet | |
data[].variants | array<object> | Evet | |
data[].variants[].id | string | Evet | Uzunluk: 1–64 |
data[].variants[].name | string | Evet | Uzunluk: 1–60 |
data[].variants[].weight_percent | integer | Evet | Aralık: 1–99 |
data[].variants[].display | object | Evet | |
data[].display | object | Evet | |
data[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
data[].display.background_color | string | Hayır | |
data[].display.text_color | string | Hayır | |
data[].display.dismissible | boolean | Hayır | |
data[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
data[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
data[].display.html | map<string, string> | Hayır | |
data[].display.html_height | integer | Hayır | Aralık: 40–2000 |
data[].display.blocks | array<object> | Evet | Öğe: 0–12 |
data[].audience | object | Evet | |
data[].audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
data[].audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
data[].frequency | object | Evet | |
data[].frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
data[].frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
data[].frequency.stop_after_interaction | boolean | Hayır | |
data[].journey_only | boolean | Evet | |
data[].start_at | string | null | Evet | |
data[].end_at | string | null | Evet | |
data[].stats | object | Evet | |
data[].stats.impressions | integer | Evet | |
data[].stats.clicks | integer | Evet | |
data[].stats.dismissals | integer | Evet | |
data[].stats.unique_users | integer | Evet | |
data[].stats.ctr | number | Evet | |
data[].variant_stats | array<object> | Evet | |
data[].variant_stats[].variant_id | string | Evet | |
data[].variant_stats[].impressions | integer | Evet | |
data[].variant_stats[].clicks | integer | Evet | |
data[].variant_stats[].ctr | number | Evet | |
data[].ab_test | object | Evet | |
data[].ab_test.winner | object | Hayır | |
data[].ab_test.winner_variant_id | string | null | Evet | |
data[].ab_test.decided_at | string | null | Evet | |
data[].ab_test.decided_by | string | null | Evet | |
data[].variant_significance | object | null | Evet | |
data[].created_at | string | Evet | |
data[].updated_at | string | Evet | |
next_cursor | string | null | Evet | |
has_more | boolean | Evet |
Örnek yanıt:
{
"data": [
{
"name": "Sipariş bildirimleri",
"status": "draft",
"id": "iam_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"priority": 10,
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {}
}
],
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer",
"text_color": "değer"
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1
},
"journey_only": true,
"start_at": "örnek",
"end_at": "örnek",
"stats": {
"impressions": 1,
"clicks": 1,
"dismissals": 1,
"unique_users": 1,
"ctr": 1.5
},
"variant_stats": [
{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"impressions": 1,
"clicks": 1,
"ctr": 1.5
}
],
"ab_test": {
"winner_variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"decided_at": "örnek",
"decided_by": "örnek",
"winner": {
"mode": "manual",
"min_impressions": 10
}
},
"variant_significance": {
"leader": "örnek",
"p_value": 149.9,
"significant": true
},
"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/in-app-messages?limit=50" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"In-app mesaj oluştur (taslak)
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: CreateInAppDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
name | string | Evet | Uzunluk: 2–100 |
triggers | array<object> | Evet | Öğe: 1–5 |
trigger_groups | array<array<object>> | Hayır | Öğe: 1–10 |
variants | array<object> | Hayır | Öğe: 0–10 |
variants[].id | string | Evet | Uzunluk: 1–64 |
variants[].name | string | Evet | Uzunluk: 1–60 |
variants[].weight_percent | integer | Evet | Aralık: 1–99 |
variants[].display | object | Evet | |
variants[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
variants[].display.background_color | string | Hayır | |
variants[].display.text_color | string | Hayır | |
variants[].display.dismissible | boolean | Hayır | |
variants[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
variants[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
variants[].display.html | map<string, string> | Hayır | |
variants[].display.html_height | integer | Hayır | Aralık: 40–2000 |
variants[].display.blocks | array<object> | Evet | Öğe: 0–12 |
ab_test | object | Hayır | |
ab_test.winner | object | Hayır | |
ab_test.winner.mode | enum | Evet | Değerler: "manual", "auto" |
ab_test.winner.min_impressions | integer | Hayır | Aralık: 10–1000000 |
ab_test.winner.confidence | number | Hayır | Aralık: 0.8–0.99 |
display | object | Evet | |
display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
display.background_color | string | Hayır | |
display.text_color | string | Hayır | |
display.dismissible | boolean | Hayır | |
display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
display.content_type | enum | Hayır | Değerler: "blocks", "html" |
display.html | map<string, string> | Hayır | |
display.html_height | integer | Hayır | Aralık: 40–2000 |
display.blocks | array<object> | Evet | Öğe: 0–12 |
audience | object | Hayır | |
audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
frequency | object | Hayır | |
frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
frequency.stop_after_interaction | boolean | Hayır | |
journey_only | boolean | Hayır | |
priority | integer | Hayır | Aralık: 0–100 |
start_at | string (date-time) | null | Hayır | |
end_at | string (date-time) | null | Hayır |
Örnek:
{
"name": "Sipariş bildirimleri",
"triggers": [
{
"kind": "session_start"
}
],
"display": {
"layout": "modal",
"blocks": [
{
"url": "https://example.com/orders/1001",
"type": "image",
"alt": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
}
}
],
"background_color": "değer",
"text_color": "değer",
"dismissible": true
},
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer"
}
}
],
"ab_test": {
"winner": {
"mode": "manual",
"min_impressions": 10
}
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1,
"stop_after_interaction": true
}
}Yanıtlar
201 — Başarılı.
Şema: InAppMessage
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
status | enum | Evet | Değerler: "draft", "active", "paused", "archived" |
priority | integer | Evet | |
triggers | array<object> | Evet | |
trigger_groups | array<array<object>> | null | Evet | |
variants | array<object> | Evet | |
variants[].id | string | Evet | Uzunluk: 1–64 |
variants[].name | string | Evet | Uzunluk: 1–60 |
variants[].weight_percent | integer | Evet | Aralık: 1–99 |
variants[].display | object | Evet | |
variants[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
variants[].display.background_color | string | Hayır | |
variants[].display.text_color | string | Hayır | |
variants[].display.dismissible | boolean | Hayır | |
variants[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
variants[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
variants[].display.html | map<string, string> | Hayır | |
variants[].display.html_height | integer | Hayır | Aralık: 40–2000 |
variants[].display.blocks | array<object> | Evet | Öğe: 0–12 |
display | object | Evet | |
display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
display.background_color | string | Hayır | |
display.text_color | string | Hayır | |
display.dismissible | boolean | Hayır | |
display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
display.content_type | enum | Hayır | Değerler: "blocks", "html" |
display.html | map<string, string> | Hayır | |
display.html_height | integer | Hayır | Aralık: 40–2000 |
display.blocks | array<object> | Evet | Öğe: 0–12 |
audience | object | Evet | |
audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
frequency | object | Evet | |
frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
frequency.stop_after_interaction | boolean | Hayır | |
journey_only | boolean | Evet | |
start_at | string | null | Evet | |
end_at | string | null | Evet | |
stats | object | Evet | |
stats.impressions | integer | Evet | |
stats.clicks | integer | Evet | |
stats.dismissals | integer | Evet | |
stats.unique_users | integer | Evet | |
stats.ctr | number | Evet | |
variant_stats | array<object> | Evet | |
variant_stats[].variant_id | string | Evet | |
variant_stats[].impressions | integer | Evet | |
variant_stats[].clicks | integer | Evet | |
variant_stats[].ctr | number | Evet | |
ab_test | object | Evet | |
ab_test.winner | object | Hayır | |
ab_test.winner.mode | enum | Evet | Değerler: "manual", "auto" |
ab_test.winner.min_impressions | integer | Hayır | Aralık: 10–1000000 |
ab_test.winner.confidence | number | Hayır | Aralık: 0.8–0.99 |
ab_test.winner_variant_id | string | null | Evet | |
ab_test.decided_at | string | null | Evet | |
ab_test.decided_by | string | null | Evet | |
variant_significance | object | null | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"status": "draft",
"id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"priority": 10,
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer",
"text_color": "değer"
}
}
],
"display": {
"layout": "modal",
"blocks": [
{
"url": "https://example.com/orders/1001",
"type": "image",
"alt": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
}
}
],
"background_color": "değer",
"text_color": "değer",
"dismissible": true,
"auto_dismiss_seconds": 1
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1,
"stop_after_interaction": true
},
"journey_only": true,
"start_at": "örnek",
"end_at": "örnek",
"stats": {
"impressions": 1,
"clicks": 1,
"dismissals": 1,
"unique_users": 1,
"ctr": 1.5
},
"variant_stats": [
{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"impressions": 1,
"clicks": 1,
"ctr": 1.5
}
],
"ab_test": {
"winner_variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"decided_at": "örnek",
"decided_by": "örnek",
"winner": {
"mode": "manual",
"min_impressions": 10,
"confidence": 0.99
}
},
"variant_significance": {
"leader": "örnek",
"p_value": 149.9,
"significant": true
},
"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/in-app-messages" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sipariş bildirimleri",
"triggers": [
{
"kind": "session_start"
}
],
"display": {
"layout": "modal",
"blocks": [
{
"url": "https://example.com/orders/1001",
"type": "image",
"alt": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
}
}
],
"background_color": "değer",
"text_color": "değer",
"dismissible": true
},
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer"
}
}
],
"ab_test": {
"winner": {
"mode": "manual",
"min_impressions": 10
}
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1,
"stop_after_interaction": true
}
}'In-app mesaj detayı ve istatistikleri
Kimlik doğrulama: API anahtarı — kapsam analytics:read (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
messageId | yol | string | Evet | "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: InAppMessage
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
status | enum | Evet | Değerler: "draft", "active", "paused", "archived" |
priority | integer | Evet | |
triggers | array<object> | Evet | |
trigger_groups | array<array<object>> | null | Evet | |
variants | array<object> | Evet | |
variants[].id | string | Evet | Uzunluk: 1–64 |
variants[].name | string | Evet | Uzunluk: 1–60 |
variants[].weight_percent | integer | Evet | Aralık: 1–99 |
variants[].display | object | Evet | |
variants[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
variants[].display.background_color | string | Hayır | |
variants[].display.text_color | string | Hayır | |
variants[].display.dismissible | boolean | Hayır | |
variants[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
variants[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
variants[].display.html | map<string, string> | Hayır | |
variants[].display.html_height | integer | Hayır | Aralık: 40–2000 |
variants[].display.blocks | array<object> | Evet | Öğe: 0–12 |
display | object | Evet | |
display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
display.background_color | string | Hayır | |
display.text_color | string | Hayır | |
display.dismissible | boolean | Hayır | |
display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
display.content_type | enum | Hayır | Değerler: "blocks", "html" |
display.html | map<string, string> | Hayır | |
display.html_height | integer | Hayır | Aralık: 40–2000 |
display.blocks | array<object> | Evet | Öğe: 0–12 |
audience | object | Evet | |
audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
frequency | object | Evet | |
frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
frequency.stop_after_interaction | boolean | Hayır | |
journey_only | boolean | Evet | |
start_at | string | null | Evet | |
end_at | string | null | Evet | |
stats | object | Evet | |
stats.impressions | integer | Evet | |
stats.clicks | integer | Evet | |
stats.dismissals | integer | Evet | |
stats.unique_users | integer | Evet | |
stats.ctr | number | Evet | |
variant_stats | array<object> | Evet | |
variant_stats[].variant_id | string | Evet | |
variant_stats[].impressions | integer | Evet | |
variant_stats[].clicks | integer | Evet | |
variant_stats[].ctr | number | Evet | |
ab_test | object | Evet | |
ab_test.winner | object | Hayır | |
ab_test.winner.mode | enum | Evet | Değerler: "manual", "auto" |
ab_test.winner.min_impressions | integer | Hayır | Aralık: 10–1000000 |
ab_test.winner.confidence | number | Hayır | Aralık: 0.8–0.99 |
ab_test.winner_variant_id | string | null | Evet | |
ab_test.decided_at | string | null | Evet | |
ab_test.decided_by | string | null | Evet | |
variant_significance | object | null | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"status": "draft",
"id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"priority": 10,
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer",
"text_color": "değer"
}
}
],
"display": {
"layout": "modal",
"blocks": [
{
"url": "https://example.com/orders/1001",
"type": "image",
"alt": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
}
}
],
"background_color": "değer",
"text_color": "değer",
"dismissible": true,
"auto_dismiss_seconds": 1
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1,
"stop_after_interaction": true
},
"journey_only": true,
"start_at": "örnek",
"end_at": "örnek",
"stats": {
"impressions": 1,
"clicks": 1,
"dismissals": 1,
"unique_users": 1,
"ctr": 1.5
},
"variant_stats": [
{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"impressions": 1,
"clicks": 1,
"ctr": 1.5
}
],
"ab_test": {
"winner_variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"decided_at": "örnek",
"decided_by": "örnek",
"winner": {
"mode": "manual",
"min_impressions": 10,
"confidence": 0.99
}
},
"variant_significance": {
"leader": "örnek",
"p_value": 149.9,
"significant": true
},
"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/in-app-messages/msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"In-app mesajı düzenle
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
messageId | yol | string | Evet | "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: UpdateInAppDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
name | string | Hayır | Uzunluk: 2–100 |
triggers | array<object> | Hayır | Öğe: 1–5 |
trigger_groups | array<array<object>> | Hayır | Öğe: 1–10 |
variants | array<object> | Hayır | Öğe: 0–10 |
variants[].id | string | Evet | Uzunluk: 1–64 |
variants[].name | string | Evet | Uzunluk: 1–60 |
variants[].weight_percent | integer | Evet | Aralık: 1–99 |
variants[].display | object | Evet | |
variants[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
variants[].display.background_color | string | Hayır | |
variants[].display.text_color | string | Hayır | |
variants[].display.dismissible | boolean | Hayır | |
variants[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
variants[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
variants[].display.html | map<string, string> | Hayır | |
variants[].display.html_height | integer | Hayır | Aralık: 40–2000 |
variants[].display.blocks | array<object> | Evet | Öğe: 0–12 |
ab_test | object | Hayır | |
ab_test.winner | object | Hayır | |
ab_test.winner.mode | enum | Evet | Değerler: "manual", "auto" |
ab_test.winner.min_impressions | integer | Hayır | Aralık: 10–1000000 |
ab_test.winner.confidence | number | Hayır | Aralık: 0.8–0.99 |
display | object | Hayır | |
display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
display.background_color | string | Hayır | |
display.text_color | string | Hayır | |
display.dismissible | boolean | Hayır | |
display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
display.content_type | enum | Hayır | Değerler: "blocks", "html" |
display.html | map<string, string> | Hayır | |
display.html_height | integer | Hayır | Aralık: 40–2000 |
display.blocks | array<object> | Evet | Öğe: 0–12 |
audience | object | Hayır | |
audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
frequency | object | Hayır | |
frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
frequency.stop_after_interaction | boolean | Hayır | |
journey_only | boolean | Hayır | |
priority | integer | Hayır | Aralık: 0–100 |
start_at | string (date-time) | null | Hayır | |
end_at | string (date-time) | null | Hayır |
Örnek:
{
"name": "Sipariş bildirimleri",
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer"
}
}
],
"ab_test": {
"winner": {
"mode": "manual",
"min_impressions": 10
}
}
}Yanıtlar
200 — Başarılı.
Şema: InAppMessage
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
status | enum | Evet | Değerler: "draft", "active", "paused", "archived" |
priority | integer | Evet | |
triggers | array<object> | Evet | |
trigger_groups | array<array<object>> | null | Evet | |
variants | array<object> | Evet | |
variants[].id | string | Evet | Uzunluk: 1–64 |
variants[].name | string | Evet | Uzunluk: 1–60 |
variants[].weight_percent | integer | Evet | Aralık: 1–99 |
variants[].display | object | Evet | |
variants[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
variants[].display.background_color | string | Hayır | |
variants[].display.text_color | string | Hayır | |
variants[].display.dismissible | boolean | Hayır | |
variants[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
variants[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
variants[].display.html | map<string, string> | Hayır | |
variants[].display.html_height | integer | Hayır | Aralık: 40–2000 |
variants[].display.blocks | array<object> | Evet | Öğe: 0–12 |
display | object | Evet | |
display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
display.background_color | string | Hayır | |
display.text_color | string | Hayır | |
display.dismissible | boolean | Hayır | |
display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
display.content_type | enum | Hayır | Değerler: "blocks", "html" |
display.html | map<string, string> | Hayır | |
display.html_height | integer | Hayır | Aralık: 40–2000 |
display.blocks | array<object> | Evet | Öğe: 0–12 |
audience | object | Evet | |
audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
frequency | object | Evet | |
frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
frequency.stop_after_interaction | boolean | Hayır | |
journey_only | boolean | Evet | |
start_at | string | null | Evet | |
end_at | string | null | Evet | |
stats | object | Evet | |
stats.impressions | integer | Evet | |
stats.clicks | integer | Evet | |
stats.dismissals | integer | Evet | |
stats.unique_users | integer | Evet | |
stats.ctr | number | Evet | |
variant_stats | array<object> | Evet | |
variant_stats[].variant_id | string | Evet | |
variant_stats[].impressions | integer | Evet | |
variant_stats[].clicks | integer | Evet | |
variant_stats[].ctr | number | Evet | |
ab_test | object | Evet | |
ab_test.winner | object | Hayır | |
ab_test.winner.mode | enum | Evet | Değerler: "manual", "auto" |
ab_test.winner.min_impressions | integer | Hayır | Aralık: 10–1000000 |
ab_test.winner.confidence | number | Hayır | Aralık: 0.8–0.99 |
ab_test.winner_variant_id | string | null | Evet | |
ab_test.decided_at | string | null | Evet | |
ab_test.decided_by | string | null | Evet | |
variant_significance | object | null | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"status": "draft",
"id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"priority": 10,
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer",
"text_color": "değer"
}
}
],
"display": {
"layout": "modal",
"blocks": [
{
"url": "https://example.com/orders/1001",
"type": "image",
"alt": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
}
}
],
"background_color": "değer",
"text_color": "değer",
"dismissible": true,
"auto_dismiss_seconds": 1
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1,
"stop_after_interaction": true
},
"journey_only": true,
"start_at": "örnek",
"end_at": "örnek",
"stats": {
"impressions": 1,
"clicks": 1,
"dismissals": 1,
"unique_users": 1,
"ctr": 1.5
},
"variant_stats": [
{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"impressions": 1,
"clicks": 1,
"ctr": 1.5
}
],
"ab_test": {
"winner_variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"decided_at": "örnek",
"decided_by": "örnek",
"winner": {
"mode": "manual",
"min_impressions": 10,
"confidence": 0.99
}
},
"variant_significance": {
"leader": "örnek",
"p_value": 149.9,
"significant": true
},
"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/in-app-messages/msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sipariş bildirimleri",
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer"
}
}
],
"ab_test": {
"winner": {
"mode": "manual",
"min_impressions": 10
}
}
}'In-app mesajı sil
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
messageId | yol | string | Evet | "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: Ok
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
ok | true | Evet |
Ö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/in-app-messages/msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Yayınla / duraklat / arşivle
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
messageId | yol | string | Evet | "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: InAppStatusDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
status | enum | Evet | Değerler: "draft", "active", "paused", "archived" |
Örnek:
{
"status": "draft"
}Yanıtlar
200 — Başarılı.
Şema: InAppMessage
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
status | enum | Evet | Değerler: "draft", "active", "paused", "archived" |
priority | integer | Evet | |
triggers | array<object> | Evet | |
trigger_groups | array<array<object>> | null | Evet | |
variants | array<object> | Evet | |
variants[].id | string | Evet | Uzunluk: 1–64 |
variants[].name | string | Evet | Uzunluk: 1–60 |
variants[].weight_percent | integer | Evet | Aralık: 1–99 |
variants[].display | object | Evet | |
variants[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
variants[].display.background_color | string | Hayır | |
variants[].display.text_color | string | Hayır | |
variants[].display.dismissible | boolean | Hayır | |
variants[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
variants[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
variants[].display.html | map<string, string> | Hayır | |
variants[].display.html_height | integer | Hayır | Aralık: 40–2000 |
variants[].display.blocks | array<object> | Evet | Öğe: 0–12 |
display | object | Evet | |
display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
display.background_color | string | Hayır | |
display.text_color | string | Hayır | |
display.dismissible | boolean | Hayır | |
display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
display.content_type | enum | Hayır | Değerler: "blocks", "html" |
display.html | map<string, string> | Hayır | |
display.html_height | integer | Hayır | Aralık: 40–2000 |
display.blocks | array<object> | Evet | Öğe: 0–12 |
audience | object | Evet | |
audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
frequency | object | Evet | |
frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
frequency.stop_after_interaction | boolean | Hayır | |
journey_only | boolean | Evet | |
start_at | string | null | Evet | |
end_at | string | null | Evet | |
stats | object | Evet | |
stats.impressions | integer | Evet | |
stats.clicks | integer | Evet | |
stats.dismissals | integer | Evet | |
stats.unique_users | integer | Evet | |
stats.ctr | number | Evet | |
variant_stats | array<object> | Evet | |
variant_stats[].variant_id | string | Evet | |
variant_stats[].impressions | integer | Evet | |
variant_stats[].clicks | integer | Evet | |
variant_stats[].ctr | number | Evet | |
ab_test | object | Evet | |
ab_test.winner | object | Hayır | |
ab_test.winner.mode | enum | Evet | Değerler: "manual", "auto" |
ab_test.winner.min_impressions | integer | Hayır | Aralık: 10–1000000 |
ab_test.winner.confidence | number | Hayır | Aralık: 0.8–0.99 |
ab_test.winner_variant_id | string | null | Evet | |
ab_test.decided_at | string | null | Evet | |
ab_test.decided_by | string | null | Evet | |
variant_significance | object | null | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"status": "draft",
"id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"priority": 10,
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer",
"text_color": "değer"
}
}
],
"display": {
"layout": "modal",
"blocks": [
{
"url": "https://example.com/orders/1001",
"type": "image",
"alt": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
}
}
],
"background_color": "değer",
"text_color": "değer",
"dismissible": true,
"auto_dismiss_seconds": 1
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1,
"stop_after_interaction": true
},
"journey_only": true,
"start_at": "örnek",
"end_at": "örnek",
"stats": {
"impressions": 1,
"clicks": 1,
"dismissals": 1,
"unique_users": 1,
"ctr": 1.5
},
"variant_stats": [
{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"impressions": 1,
"clicks": 1,
"ctr": 1.5
}
],
"ab_test": {
"winner_variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"decided_at": "örnek",
"decided_by": "örnek",
"winner": {
"mode": "manual",
"min_impressions": 10,
"confidence": 0.99
}
},
"variant_significance": {
"leader": "örnek",
"p_value": 149.9,
"significant": true
},
"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/in-app-messages/msg_01JD3W5Q7X9K2M4N6P8R0T1V3W/status" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"status": "draft"
}'A/B kazananını elle seç
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
messageId | yol | string | Evet | "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: InAppWinnerDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
variant_id | string | Evet | Uzunluk: 1–64 |
Örnek:
{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W"
}Yanıtlar
200 — Başarılı.
Şema: InAppMessage
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
status | enum | Evet | Değerler: "draft", "active", "paused", "archived" |
priority | integer | Evet | |
triggers | array<object> | Evet | |
trigger_groups | array<array<object>> | null | Evet | |
variants | array<object> | Evet | |
variants[].id | string | Evet | Uzunluk: 1–64 |
variants[].name | string | Evet | Uzunluk: 1–60 |
variants[].weight_percent | integer | Evet | Aralık: 1–99 |
variants[].display | object | Evet | |
variants[].display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
variants[].display.background_color | string | Hayır | |
variants[].display.text_color | string | Hayır | |
variants[].display.dismissible | boolean | Hayır | |
variants[].display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
variants[].display.content_type | enum | Hayır | Değerler: "blocks", "html" |
variants[].display.html | map<string, string> | Hayır | |
variants[].display.html_height | integer | Hayır | Aralık: 40–2000 |
variants[].display.blocks | array<object> | Evet | Öğe: 0–12 |
display | object | Evet | |
display.layout | enum | Evet | Değerler: "modal", "banner_top", "banner_bottom", "fullscreen" |
display.background_color | string | Hayır | |
display.text_color | string | Hayır | |
display.dismissible | boolean | Hayır | |
display.auto_dismiss_seconds | integer | Hayır | Aralık: 1–120 |
display.content_type | enum | Hayır | Değerler: "blocks", "html" |
display.html | map<string, string> | Hayır | |
display.html_height | integer | Hayır | Aralık: 40–2000 |
display.blocks | array<object> | Evet | Öğe: 0–12 |
audience | object | Evet | |
audience.included_segments | array<string> | Hayır | Öğe: 0–20 |
audience.excluded_segments | array<string> | Hayır | Öğe: 0–20 |
frequency | object | Evet | |
frequency.max_impressions | integer | Hayır | Aralık: 1–1000 |
frequency.min_interval_seconds | integer | Hayır | Aralık: 0–31536000 |
frequency.stop_after_interaction | boolean | Hayır | |
journey_only | boolean | Evet | |
start_at | string | null | Evet | |
end_at | string | null | Evet | |
stats | object | Evet | |
stats.impressions | integer | Evet | |
stats.clicks | integer | Evet | |
stats.dismissals | integer | Evet | |
stats.unique_users | integer | Evet | |
stats.ctr | number | Evet | |
variant_stats | array<object> | Evet | |
variant_stats[].variant_id | string | Evet | |
variant_stats[].impressions | integer | Evet | |
variant_stats[].clicks | integer | Evet | |
variant_stats[].ctr | number | Evet | |
ab_test | object | Evet | |
ab_test.winner | object | Hayır | |
ab_test.winner.mode | enum | Evet | Değerler: "manual", "auto" |
ab_test.winner.min_impressions | integer | Hayır | Aralık: 10–1000000 |
ab_test.winner.confidence | number | Hayır | Aralık: 0.8–0.99 |
ab_test.winner_variant_id | string | null | Evet | |
ab_test.decided_at | string | null | Evet | |
ab_test.decided_by | string | null | Evet | |
variant_significance | object | null | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"status": "draft",
"id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"priority": 10,
"triggers": [
{
"kind": "session_start"
}
],
"trigger_groups": [
[
{
"kind": "session_start"
}
]
],
"variants": [
{
"name": "Sipariş bildirimleri",
"id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"weight_percent": 1,
"display": {
"layout": "modal",
"blocks": [
{}
],
"background_color": "değer",
"text_color": "değer"
}
}
],
"display": {
"layout": "modal",
"blocks": [
{
"url": "https://example.com/orders/1001",
"type": "image",
"alt": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
}
}
],
"background_color": "değer",
"text_color": "değer",
"dismissible": true,
"auto_dismiss_seconds": 1
},
"audience": {
"included_segments": [
"örnek"
],
"excluded_segments": [
"örnek"
]
},
"frequency": {
"max_impressions": 1,
"min_interval_seconds": 1,
"stop_after_interaction": true
},
"journey_only": true,
"start_at": "örnek",
"end_at": "örnek",
"stats": {
"impressions": 1,
"clicks": 1,
"dismissals": 1,
"unique_users": 1,
"ctr": 1.5
},
"variant_stats": [
{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"impressions": 1,
"clicks": 1,
"ctr": 1.5
}
],
"ab_test": {
"winner_variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"decided_at": "örnek",
"decided_by": "örnek",
"winner": {
"mode": "manual",
"min_impressions": 10,
"confidence": 0.99
}
},
"variant_significance": {
"leader": "örnek",
"p_value": 149.9,
"significant": true
},
"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/in-app-messages/msg_01JD3W5Q7X9K2M4N6P8R0T1V3W/winner" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"variant_id": "var_01JD3W5Q7X9K2M4N6P8R0T1V3W"
}'Journey’ler
Journey’ler — 19 işlem (GET /v1/apps/{appId}/journeys, POST /v1/apps/{appId}/journeys, GET /v1/apps/{appId}/journeys/{journeyId}, …). OpenAPI 3.1.0 sözleşmesinden üretilir.
Bildirim kutusu
Bildirim kutusu — 4 işlem (GET /v1/apps/{appId}/users/by/{label}/{value}/inbox, POST /v1/apps/{appId}/users/by/{label}/{value}/inbox/read-all, POST /v1/apps/{appId}/users/by/{label}/{value}/inbox/{itemId}/read, …). OpenAPI 3.1.0 sözleşmesinden üretilir.