iOS Live Activities
iOS Live Activities — 7 işlem (GET /v1/apps/{appId}/live-activities/types, POST /v1/apps/{appId}/live-activities/types, PATCH /v1/apps/{appId}/live-activities/types/{activityType}, …). OpenAPI 3.1.0 sözleşmesinden üretilir.
iOS Live Activities: etkinlik türü kaydı, şema doğrulaması ve start/update/end push’ları.
Taban adres: https://api.pushizo.com · Etiket: live-activities · Etkileşimli belge (Scalar)
İşlemler
| Yöntem | Yol | İşlem |
|---|---|---|
GET | /v1/apps/{appId}/live-activities/types | Live Activity türleri |
POST | /v1/apps/{appId}/live-activities/types | Live Activity türü oluştur |
PATCH | /v1/apps/{appId}/live-activities/types/{activityType} | Live Activity türünü güncelle |
DELETE | /v1/apps/{appId}/live-activities/types/{activityType} | Live Activity türünü sil |
POST | /v1/apps/{appId}/live-activities/{activityType}/start | Live Activity başlat (push-to-start) |
POST | /v1/apps/{appId}/live-activities/{activityType}/update | Live Activity güncelle |
POST | /v1/apps/{appId}/live-activities/{activityType}/end | Live Activity bitir |
Ayrıntılar
Live Activity türleri
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" |
Yanıtlar
200 — Başarılı.
Şema: LiveActivityTypeList
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
data | array<object> | Evet | |
data[].id | string | Evet | |
data[].name | string | Evet | |
data[].description | string | null | Evet | |
data[].content_state_schema | object | Evet | |
data[].content_state_schema.type | "object" | Evet | |
data[].content_state_schema.properties | map<string, object> | Evet | |
data[].content_state_schema.required | array<string> | Hayır | Öğe: 0–50 |
data[].attributes_schema | object | Evet | |
data[].attributes_schema.type | "object" | Evet | |
data[].attributes_schema.properties | map<string, object> | Evet | |
data[].attributes_schema.required | array<string> | Hayır | Öğe: 0–50 |
data[].push_to_start_tokens | integer | Evet | |
data[].created_at | string | Evet | |
data[].updated_at | string | Evet |
Örnek yanıt:
{
"data": [
{
"name": "Sipariş bildirimleri",
"id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"content_state_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"attributes_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"push_to_start_tokens": 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/live-activities/types" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Live Activity türü oluştur
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: CreateLiveActivityTypeDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
name | string | Evet | Uzunluk: 1–100 |
description | string | Hayır | Uzunluk: 0–300 |
content_state_schema | object | Evet | |
content_state_schema.type | "object" | Evet | |
content_state_schema.properties | map<string, object> | Evet | |
content_state_schema.required | array<string> | Hayır | Öğe: 0–50 |
attributes_schema | object | Hayır | |
attributes_schema.type | "object" | Evet | |
attributes_schema.properties | map<string, object> | Evet | |
attributes_schema.required | array<string> | Hayır | Öğe: 0–50 |
Örnek:
{
"name": "Sipariş bildirimleri",
"content_state_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"description": "Sipariş durumu güncellemeleri",
"attributes_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
}
}Yanıtlar
201 — Başarılı.
Şema: LiveActivityType
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
content_state_schema | object | Evet | |
content_state_schema.type | "object" | Evet | |
content_state_schema.properties | map<string, object> | Evet | |
content_state_schema.required | array<string> | Hayır | Öğe: 0–50 |
attributes_schema | object | Evet | |
attributes_schema.type | "object" | Evet | |
attributes_schema.properties | map<string, object> | Evet | |
attributes_schema.required | array<string> | Hayır | Öğe: 0–50 |
push_to_start_tokens | integer | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "typ_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"content_state_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"attributes_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"push_to_start_tokens": 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 POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/live-activities/types" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sipariş bildirimleri",
"content_state_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"description": "Sipariş durumu güncellemeleri",
"attributes_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
}
}'Live Activity türünü güncelle
/v1/apps/{appId}/live-activities/types/{activityType}Dene (etkileşimli API belgesi, yeni sekme)Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
activityType | yol | string | Evet | "order_tracking" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: UpdateLiveActivityTypeDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
description | string | null | Hayır | |
content_state_schema | object | Hayır | |
content_state_schema.type | "object" | Evet | |
content_state_schema.properties | map<string, object> | Evet | |
content_state_schema.required | array<string> | Hayır | Öğe: 0–50 |
attributes_schema | object | Hayır | |
attributes_schema.type | "object" | Evet | |
attributes_schema.properties | map<string, object> | Evet | |
attributes_schema.required | array<string> | Hayır | Öğe: 0–50 |
Örnek:
{
"description": "Sipariş durumu güncellemeleri",
"content_state_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"attributes_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
}
}Yanıtlar
200 — Başarılı.
Şema: LiveActivityType
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
content_state_schema | object | Evet | |
content_state_schema.type | "object" | Evet | |
content_state_schema.properties | map<string, object> | Evet | |
content_state_schema.required | array<string> | Hayır | Öğe: 0–50 |
attributes_schema | object | Evet | |
attributes_schema.type | "object" | Evet | |
attributes_schema.properties | map<string, object> | Evet | |
attributes_schema.required | array<string> | Hayır | Öğe: 0–50 |
push_to_start_tokens | integer | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "typ_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"content_state_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"attributes_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"push_to_start_tokens": 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 PATCH "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/live-activities/types/order_tracking" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"description": "Sipariş durumu güncellemeleri",
"content_state_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
},
"attributes_schema": {
"properties": {
"order_id": "1001"
},
"type": "object",
"required": [
"örnek"
]
}
}'Live Activity türünü sil
/v1/apps/{appId}/live-activities/types/{activityType}Dene (etkileşimli API belgesi, yeni sekme)Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
activityType | yol | string | Evet | "order_tracking" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: LiveActivityTokenResult
| 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/live-activities/types/order_tracking" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Live Activity başlat (push-to-start)
Hedefteki iOS aboneliklerinin push-to-start belirteçleriyle etkinliği uzaktan başlatır (iOS 17.2+). attributes ve content_state türün şemasına uymalıdır. Dönen activity_id ile sonraki update/end yapılır.
Kimlik doğrulama: API anahtarı — kapsam notifications:write (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
activityType | yol | string | Evet | "order_tracking" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: StartLiveActivityDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
activity_id | string | Hayır | Uzunluk: 1–100 |
attributes | map<string, string | number | boolean> | Hayır | |
target | object | Evet | |
target.include_external_ids | array<string> | Hayır | Öğe: 0–2000 |
target.include_subscription_ids | array<string> | Hayır | Öğe: 0–2000 |
target.included_segments | array<string> | Hayır | Öğe: 0–20 |
target.all | boolean | Hayır | |
content_state | map<string, string | number | boolean> | Evet | |
alert | object | Hayır | |
alert.title | map<string, string> | Hayır | |
alert.body | map<string, string> | Hayır | |
alert.sound | string | Hayır | Uzunluk: 0–100 |
stale_date | integer | Hayır | Aralık: 0–4102444800 |
dismissal_date | integer | Hayır | Aralık: 0–4102444800 |
relevance_score | number | Hayır | Aralık: 0–1 |
priority | 5 | 10 | Hayır | |
name | string | Hayır | Uzunluk: 0–200 |
Örnek:
{
"target": {
"include_external_ids": [
"user_42"
],
"include_subscription_ids": [
"sub_01JD3W5Q7X9K2M4N6P8R0T1V3W"
],
"included_segments": [
"örnek"
]
},
"content_state": {
"key": "user_42"
},
"name": "Sipariş bildirimleri",
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"attributes": {
"key": "user_42"
},
"alert": {
"title": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"body": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"sound": "örnek"
},
"stale_date": 1
}Yanıtlar
202 — Başarılı.
Şema: LiveActivitySendResult
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
message_id | string | Evet | |
activity_id | string | Evet | |
event | enum | Evet | Değerler: "start", "update", "end" |
recipients_estimate | integer | Evet |
Örnek yanıt:
{
"message_id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"event": "start",
"recipients_estimate": 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 POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/live-activities/order_tracking/start" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target": {
"include_external_ids": [
"user_42"
],
"include_subscription_ids": [
"sub_01JD3W5Q7X9K2M4N6P8R0T1V3W"
],
"included_segments": [
"örnek"
]
},
"content_state": {
"key": "user_42"
},
"name": "Sipariş bildirimleri",
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"attributes": {
"key": "user_42"
},
"alert": {
"title": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"body": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"sound": "örnek"
},
"stale_date": 1
}'Live Activity güncelle
/v1/apps/{appId}/live-activities/{activityType}/updateDene (etkileşimli API belgesi, yeni sekme)Etkinliğin cihazlardan bildirilen güncelleme belirteçlerine yeni içerik durumu gönderir. Sessiz saat ve frekans sınırı uygulanmaz; priority 5 Apple bütçesini korur.
Kimlik doğrulama: API anahtarı — kapsam notifications:write (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
activityType | yol | string | Evet | "order_tracking" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: UpdateLiveActivityDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
activity_id | string | Evet | Uzunluk: 1–100 |
content_state | map<string, string | number | boolean> | Evet | |
alert | object | Hayır | |
alert.title | map<string, string> | Hayır | |
alert.body | map<string, string> | Hayır | |
alert.sound | string | Hayır | Uzunluk: 0–100 |
stale_date | integer | Hayır | Aralık: 0–4102444800 |
dismissal_date | integer | Hayır | Aralık: 0–4102444800 |
relevance_score | number | Hayır | Aralık: 0–1 |
priority | 5 | 10 | Hayır | |
name | string | Hayır | Uzunluk: 0–200 |
Örnek:
{
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"content_state": {
"key": "user_42"
},
"name": "Sipariş bildirimleri",
"alert": {
"title": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"body": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"sound": "örnek"
},
"stale_date": 1,
"dismissal_date": 1,
"relevance_score": 1.5
}Yanıtlar
202 — Başarılı.
Şema: LiveActivitySendResult
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
message_id | string | Evet | |
activity_id | string | Evet | |
event | enum | Evet | Değerler: "start", "update", "end" |
recipients_estimate | integer | Evet |
Örnek yanıt:
{
"message_id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"event": "start",
"recipients_estimate": 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 POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/live-activities/order_tracking/update" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"content_state": {
"key": "user_42"
},
"name": "Sipariş bildirimleri",
"alert": {
"title": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"body": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"sound": "örnek"
},
"stale_date": 1,
"dismissal_date": 1,
"relevance_score": 1.5
}'Live Activity bitir
Kimlik doğrulama: API anahtarı — kapsam notifications:write (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
activityType | yol | string | Evet | "order_tracking" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: EndLiveActivityDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
activity_id | string | Evet | Uzunluk: 1–100 |
content_state | map<string, string | number | boolean> | Hayır | |
alert | object | Hayır | |
alert.title | map<string, string> | Hayır | |
alert.body | map<string, string> | Hayır | |
alert.sound | string | Hayır | Uzunluk: 0–100 |
stale_date | integer | Hayır | Aralık: 0–4102444800 |
dismissal_date | integer | Hayır | Aralık: 0–4102444800 |
relevance_score | number | Hayır | Aralık: 0–1 |
priority | 5 | 10 | Hayır | |
name | string | Hayır | Uzunluk: 0–200 |
Örnek:
{
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"name": "Sipariş bildirimleri",
"content_state": {
"key": "user_42"
},
"alert": {
"title": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"body": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"sound": "örnek"
},
"stale_date": 1,
"dismissal_date": 1
}Yanıtlar
202 — Başarılı.
Şema: LiveActivitySendResult
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
message_id | string | Evet | |
activity_id | string | Evet | |
event | enum | Evet | Değerler: "start", "update", "end" |
recipients_estimate | integer | Evet |
Örnek yanıt:
{
"message_id": "msg_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"event": "start",
"recipients_estimate": 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 POST "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/live-activities/order_tracking/end" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"activity_id": "act_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"name": "Sipariş bildirimleri",
"content_state": {
"key": "user_42"
},
"alert": {
"title": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"body": {
"tr": "Siparişiniz yola çıktı",
"en": "Your order has shipped"
},
"sound": "örnek"
},
"stale_date": 1,
"dismissal_date": 1
}'Suppression list
Suppression list — 3 işlem (GET /v1/apps/{appId}/suppressions, POST /v1/apps/{appId}/suppressions, DELETE /v1/apps/{appId}/suppressions/{suppressionId}). OpenAPI 3.1.0 sözleşmesinden üretilir.
Konuşmalar (WhatsApp, iki yönlü SMS)
Konuşmalar (WhatsApp, iki yönlü SMS) — 11 işlem (GET /v1/apps/{appId}/conversations, GET /v1/apps/{appId}/conversations/{conversationId}, GET /v1/apps/{appId}/conversations/{conversationId}/messages, …). OpenAPI 3.1.0 sözleşmesinden üretilir.