Dynamic Content ve Data Feeds
Dynamic Content ve Data Feeds — 13 işlem (GET /v1/apps/{appId}/data-feeds, POST /v1/apps/{appId}/data-feeds, GET /v1/apps/{appId}/data-feeds/{feedId}, …). OpenAPI 3.1.0 sözleşmesinden üretilir.
Data Feeds (dış JSON/CSV kaynakları) ve Content Tables (içerik tabloları): tanım, test ve satır yönetimi; Liquid içinde kullanılır.
Taban adres: https://api.pushizo.com · Etiket: dynamic-content · Etkileşimli belge (Scalar)
İşlemler
| Yöntem | Yol | İşlem |
|---|---|---|
GET | /v1/apps/{appId}/data-feeds | Data feed listesi |
POST | /v1/apps/{appId}/data-feeds | Data feed oluştur |
GET | /v1/apps/{appId}/data-feeds/{feedId} | Data feed ayrıntısı |
PATCH | /v1/apps/{appId}/data-feeds/{feedId} | Data feed güncelle |
DELETE | /v1/apps/{appId}/data-feeds/{feedId} | Data feed sil |
POST | /v1/apps/{appId}/data-feeds/{feedId}/test | Data feed'i örnek kullanıcıyla dene |
GET | /v1/apps/{appId}/content-tables | İçerik tabloları |
POST | /v1/apps/{appId}/content-tables | CSV ile içerik tablosu oluştur |
GET | /v1/apps/{appId}/content-tables/{tableId} | İçerik tablosu ayrıntısı |
PATCH | /v1/apps/{appId}/content-tables/{tableId} | İçerik tablosu açıklamasını güncelle |
DELETE | /v1/apps/{appId}/content-tables/{tableId} | İçerik tablosunu sil |
GET | /v1/apps/{appId}/content-tables/{tableId}/rows | İçerik tablosu satırları |
PUT | /v1/apps/{appId}/content-tables/{tableId}/rows | İçerik tablosunu yeniden yükle (sürüm artar) |
Ayrıntılar
Data feed listesi
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: DataFeedList
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
data | array<object> | Evet | |
data[].id | string | Evet | |
data[].app_id | string | Evet | |
data[].name | string | Evet | |
data[].description | string | null | Evet | |
data[].url_template | string | Evet | |
data[].method | enum | Evet | Değerler: "GET", "POST" |
data[].body_template | string | null | Evet | |
data[].headers | map<string, string> | Evet | |
data[].secret_header_names | array<string> | Evet | |
data[].cache_ttl_seconds | integer | Evet | |
data[].timeout_ms | integer | Evet | |
data[].enabled | boolean | Evet | |
data[].liquid | string | Evet | |
data[].created_at | string | Evet | |
data[].updated_at | string | Evet |
Örnek yanıt:
{
"data": [
{
"name": "Sipariş bildirimleri",
"enabled": true,
"id": "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"url_template": "örnek",
"method": "GET",
"body_template": "örnek",
"headers": {
"key": "user_42"
},
"secret_header_names": [
"örnek"
],
"cache_ttl_seconds": 1,
"timeout_ms": 1,
"liquid": "ö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/data-feeds" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Data feed oluştur
URL şablonu Liquid ile kişiselleştirilir (ör. https://api.ornek.com/u/{{ user.external_id }}); şablonda {{ feed.<ad>.alan }}.
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: CreateDataFeedDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
name | string | Evet | Uzunluk: 1–64 |
description | string | null | Hayır | |
url_template | string | Evet | Uzunluk: 1–2048 |
method | enum | Hayır | Değerler: "GET", "POST" |
body_template | string | null | Hayır | |
headers | map<string, string> | Hayır | |
secret_headers | map<string, string> | Hayır | |
cache_ttl_seconds | integer | Hayır | Aralık: 0–86400 |
timeout_ms | integer | Hayır | Aralık: 100–2000 |
enabled | boolean | Hayır |
Örnek:
{
"name": "Sipariş bildirimleri",
"url_template": "örnek",
"enabled": true,
"description": "Sipariş durumu güncellemeleri",
"method": "GET",
"body_template": "örnek",
"headers": {
"key": "user_42"
}
}Yanıtlar
201 — Başarılı.
Şema: DataFeed
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
url_template | string | Evet | |
method | enum | Evet | Değerler: "GET", "POST" |
body_template | string | null | Evet | |
headers | map<string, string> | Evet | |
secret_header_names | array<string> | Evet | |
cache_ttl_seconds | integer | Evet | |
timeout_ms | integer | Evet | |
enabled | boolean | Evet | |
liquid | string | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"enabled": true,
"id": "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"url_template": "örnek",
"method": "GET",
"body_template": "örnek",
"headers": {
"key": "user_42"
},
"secret_header_names": [
"örnek"
],
"cache_ttl_seconds": 1,
"timeout_ms": 1,
"liquid": "ö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/data-feeds" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sipariş bildirimleri",
"url_template": "örnek",
"enabled": true,
"description": "Sipariş durumu güncellemeleri",
"method": "GET",
"body_template": "örnek",
"headers": {
"key": "user_42"
}
}'Data feed ayrıntısı
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
feedId | yol | string | Evet | "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: DataFeed
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
url_template | string | Evet | |
method | enum | Evet | Değerler: "GET", "POST" |
body_template | string | null | Evet | |
headers | map<string, string> | Evet | |
secret_header_names | array<string> | Evet | |
cache_ttl_seconds | integer | Evet | |
timeout_ms | integer | Evet | |
enabled | boolean | Evet | |
liquid | string | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"enabled": true,
"id": "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"url_template": "örnek",
"method": "GET",
"body_template": "örnek",
"headers": {
"key": "user_42"
},
"secret_header_names": [
"örnek"
],
"cache_ttl_seconds": 1,
"timeout_ms": 1,
"liquid": "ö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/data-feeds/feed_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Data feed güncelle
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
feedId | yol | string | Evet | "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: UpdateDataFeedDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
description | string | null | Hayır | |
url_template | string | Hayır | Uzunluk: 1–2048 |
method | enum | Hayır | Değerler: "GET", "POST" |
body_template | string | null | Hayır | |
headers | map<string, string> | Hayır | |
secret_headers | map<string, string> | null | Hayır | |
cache_ttl_seconds | integer | Hayır | Aralık: 0–86400 |
timeout_ms | integer | Hayır | Aralık: 100–2000 |
enabled | boolean | Hayır |
Örnek:
{
"enabled": true,
"description": "Sipariş durumu güncellemeleri",
"url_template": "örnek",
"method": "GET",
"body_template": "örnek"
}Yanıtlar
200 — Başarılı.
Şema: DataFeed
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
url_template | string | Evet | |
method | enum | Evet | Değerler: "GET", "POST" |
body_template | string | null | Evet | |
headers | map<string, string> | Evet | |
secret_header_names | array<string> | Evet | |
cache_ttl_seconds | integer | Evet | |
timeout_ms | integer | Evet | |
enabled | boolean | Evet | |
liquid | string | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"enabled": true,
"id": "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"url_template": "örnek",
"method": "GET",
"body_template": "örnek",
"headers": {
"key": "user_42"
},
"secret_header_names": [
"örnek"
],
"cache_ttl_seconds": 1,
"timeout_ms": 1,
"liquid": "ö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/data-feeds/feed_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"enabled": true,
"description": "Sipariş durumu güncellemeleri",
"url_template": "örnek",
"method": "GET",
"body_template": "örnek"
}'Data feed sil
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
feedId | yol | string | Evet | "feed_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/data-feeds/feed_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Data feed'i örnek kullanıcıyla dene
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
feedId | yol | string | Evet | "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: TestDataFeedDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
external_id | string | Hayır | Uzunluk: 1–256 |
user_id | string | Hayır | Uzunluk: 1–64 |
Örnek:
{
"external_id": "user_42",
"user_id": "usr_01JD3W5Q7X9K2M4N6P8R0T1V3W"
}Yanıtlar
200 — Başarılı.
Şema: DataFeedTestResult
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
status | enum | Evet | Değerler: "ok", "cached", "timeout", "error", "circuit_open", "blocked", "invalid_json", "too_large", "http_error" |
http_status | integer | null | Evet | |
duration_ms | integer | Evet | |
error | string | null | Evet | |
url | string | null | Evet | |
preview | any | Evet | |
truncated | boolean | Evet | |
user | object | null | Evet |
Örnek yanıt:
{
"url": "https://example.com/orders/1001",
"status": "ok",
"http_status": 1,
"duration_ms": 1,
"error": "örnek",
"preview": "örnek",
"truncated": true,
"user": {
"id": "usr_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"external_id": "user_42"
}
}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/data-feeds/feed_01JD3W5Q7X9K2M4N6P8R0T1V3W/test" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"external_id": "user_42",
"user_id": "usr_01JD3W5Q7X9K2M4N6P8R0T1V3W"
}'İçerik tabloları
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: ContentTableList
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
data | array<object> | Evet | |
data[].id | string | Evet | |
data[].app_id | string | Evet | |
data[].name | string | Evet | |
data[].description | string | null | Evet | |
data[].key_column | string | Evet | |
data[].columns | array<string> | Evet | |
data[].row_count | integer | Evet | |
data[].version | integer | Evet | |
data[].source_file_name | string | null | Evet | |
data[].liquid | string | Evet | |
data[].created_at | string | Evet | |
data[].updated_at | string | Evet |
Örnek yanıt:
{
"data": [
{
"name": "Sipariş bildirimleri",
"id": "feed_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"key_column": "örnek",
"columns": [
"örnek"
],
"row_count": 1,
"version": 1,
"source_file_name": "örnek",
"liquid": "ö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/content-tables" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"CSV ile içerik tablosu oluştur
Şablonda {% lookup '<ad>' key: user.tags.<etiket> as satir %}{{ satir.<sütun> }}.
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)
İçerik türü: multipart/form-data.
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
file | string (binary) | Evet | UTF-8 CSV; ilk satır başlık. En fazla 100.000 satır, 20 MB. |
name | string | Evet | Liquid tablo adı (küçük harf, rakam, alt çizgi). |
key_column | string | Evet | Satır seçiminde kullanılan anahtar sütunu (değerleri benzersiz). |
description | string | Hayır |
Örnek:
{
"name": "Sipariş bildirimleri",
"file": "örnek",
"key_column": "örnek",
"description": "Sipariş durumu güncellemeleri"
}Yanıtlar
201 — Başarılı.
Şema: ContentTable
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
key_column | string | Evet | |
columns | array<string> | Evet | |
row_count | integer | Evet | |
version | integer | Evet | |
source_file_name | string | null | Evet | |
liquid | string | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"key_column": "örnek",
"columns": [
"örnek"
],
"row_count": 1,
"version": 1,
"source_file_name": "örnek",
"liquid": "ö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/content-tables" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-F "name=Sipariş bildirimleri" \
-F "file=@users.csv" \
-F "key_column=örnek" \
-F "description=Sipariş durumu güncellemeleri"İçerik tablosu ayrıntısı
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
tableId | yol | string | Evet | "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: ContentTable
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
key_column | string | Evet | |
columns | array<string> | Evet | |
row_count | integer | Evet | |
version | integer | Evet | |
source_file_name | string | null | Evet | |
liquid | string | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"key_column": "örnek",
"columns": [
"örnek"
],
"row_count": 1,
"version": 1,
"source_file_name": "örnek",
"liquid": "ö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/content-tables/tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"İçerik tablosu açıklamasını güncelle
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
tableId | yol | string | Evet | "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: UpdateContentTableDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
description | string | null | Hayır |
Örnek:
{
"description": "Sipariş durumu güncellemeleri"
}Yanıtlar
200 — Başarılı.
Şema: ContentTable
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
key_column | string | Evet | |
columns | array<string> | Evet | |
row_count | integer | Evet | |
version | integer | Evet | |
source_file_name | string | null | Evet | |
liquid | string | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"key_column": "örnek",
"columns": [
"örnek"
],
"row_count": 1,
"version": 1,
"source_file_name": "örnek",
"liquid": "ö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/content-tables/tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"description": "Sipariş durumu güncellemeleri"
}'İçerik tablosunu sil
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
tableId | yol | string | Evet | "tbl_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/content-tables/tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"İçerik tablosu satırları
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
tableId | yol | string | Evet | "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
limit | sorgu | integer | Hayır | Aralık: 1–200 | 50 |
offset | sorgu | integer | Hayır | Aralık: 0–100000 | 1 |
q | sorgu | string | Hayır | Uzunluk: 0–200 | "ayse" |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: ContentTableRows
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
columns | array<string> | Evet | |
key_column | string | Evet | |
total | integer | Evet | |
data | array<map<string, string>> | Evet |
Örnek yanıt:
{
"data": [
{
"order_id": "1001"
}
],
"columns": [
"örnek"
],
"key_column": "örnek",
"total": 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/content-tables/tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W/rows?limit=50" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"İçerik tablosunu yeniden yükle (sürüm artar)
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
tableId | yol | string | Evet | "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
İçerik türü: multipart/form-data.
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
file | string (binary) | Evet | Yeni CSV (tablonun tüm satırları değiştirilir, sürüm artar). |
key_column | string | Hayır | İsteğe bağlı yeni anahtar sütunu. |
Örnek:
{
"file": "örnek",
"key_column": "örnek"
}Yanıtlar
200 — Başarılı.
Şema: ContentTable
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
app_id | string | Evet | |
name | string | Evet | |
description | string | null | Evet | |
key_column | string | Evet | |
columns | array<string> | Evet | |
row_count | integer | Evet | |
version | integer | Evet | |
source_file_name | string | null | Evet | |
liquid | string | Evet | |
created_at | string | Evet | |
updated_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"description": "Sipariş durumu güncellemeleri",
"key_column": "örnek",
"columns": [
"örnek"
],
"row_count": 1,
"version": 1,
"source_file_name": "örnek",
"liquid": "ö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 PUT "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/content-tables/tbl_01JD3W5Q7X9K2M4N6P8R0T1V3W/rows" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-F "file=@users.csv" \
-F "key_column=örnek"E-posta teslim edilebilirliği
E-posta teslim edilebilirliği — 9 işlem (GET /v1/apps/{appId}/email-deliverability, PUT /v1/apps/{appId}/email-deliverability, POST /v1/apps/{appId}/email-deliverability/verify-address, …). OpenAPI 3.1.0 sözleşmesinden üretilir.
Webhook’lar
Webhook’lar — 10 işlem (GET /v1/apps/{appId}/webhooks, POST /v1/apps/{appId}/webhooks, POST /v1/apps/{appId}/webhooks/preview, …). OpenAPI 3.1.0 sözleşmesinden üretilir.