API anahtarları
API anahtarları — 5 işlem (GET /v1/apps/{appId}/api-keys, POST /v1/apps/{appId}/api-keys, PATCH /v1/apps/{appId}/api-keys/{keyId}, …). OpenAPI 3.1.0 sözleşmesinden üretilir.
App API anahtarlarını oluşturma, kapsam ve IP izin listesi güncelleme, rotasyon ve iptal. Ham anahtar yalnızca oluşturma ve rotasyon yanıtında döner.
Taban adres: https://api.pushizo.com · Etiket: api-keys · Etkileşimli belge (Scalar)
İşlemler
| Yöntem | Yol | İşlem |
|---|---|---|
GET | /v1/apps/{appId}/api-keys | App'e bağlı API anahtarları |
POST | /v1/apps/{appId}/api-keys | App'e bağlı API anahtarı oluştur (ham anahtar yalnızca bu yanıtta) |
PATCH | /v1/apps/{appId}/api-keys/{keyId} | Anahtarı güncelle (ad, kapsam, IP izin listesi, bitiş) |
DELETE | /v1/apps/{appId}/api-keys/{keyId} | Anahtarı iptal et |
POST | /v1/apps/{appId}/api-keys/{keyId}/rotate | Anahtarı döndür (eski değer anında geçersiz) |
Ayrıntılar
App'e bağlı API anahtarları
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: ApiKeyList
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
data | array<object> | Evet | |
data[].id | string | Evet | |
data[].org_id | string | Evet | |
data[].app_id | string | null | Evet | |
data[].name | string | Evet | |
data[].prefix | string | Evet | |
data[].scopes | array<string> | Evet | |
data[].last_used_at | string | null | Evet | |
data[].expires_at | string | null | Evet | |
data[].revoked_at | string | null | Evet | |
data[].ip_allowlist | array<string> | Evet | |
data[].rotated_at | string | null | Evet | |
data[].created_by | string | null | Evet | |
data[].created_at | string | Evet |
Örnek yanıt:
{
"data": [
{
"name": "Sipariş bildirimleri",
"id": "key_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"org_id": "org_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"prefix": "örnek",
"scopes": [
"notifications:write"
],
"last_used_at": "örnek",
"expires_at": "örnek",
"revoked_at": "örnek",
"ip_allowlist": [
"örnek"
],
"rotated_at": "örnek",
"created_by": "örnek",
"created_at": "örnek"
}
]
}Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).
Örnekler
curl -X GET "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/api-keys" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"App'e bağlı API anahtarı oluştur (ham anahtar yalnızca bu yanıtta)
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: CreateAppApiKeyDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
name | string | Evet | Uzunluk: 2–100 |
scopes | array<enum> | Evet | Öğe: 1–8 |
environment | enum | Hayır | Değerler: "live", "test"; Varsayılan: "live" |
expires_at | string (date-time) | null | Hayır | |
ip_allowlist | array<string> | Hayır | Öğe: 0–50 |
Örnek:
{
"name": "Sipariş bildirimleri",
"scopes": [
"admin"
],
"environment": "live",
"expires_at": "2026-10-17T09:00:00Z",
"ip_allowlist": [
"örnek"
]
}Yanıtlar
201 — Başarılı.
Şema: CreatedApiKey
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
org_id | string | Evet | |
app_id | string | null | Evet | |
name | string | Evet | |
prefix | string | Evet | |
scopes | array<string> | Evet | |
last_used_at | string | null | Evet | |
expires_at | string | null | Evet | |
revoked_at | string | null | Evet | |
ip_allowlist | array<string> | Evet | |
rotated_at | string | null | Evet | |
created_by | string | null | Evet | |
created_at | string | Evet | |
key | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "key_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"org_id": "org_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"prefix": "örnek",
"scopes": [
"notifications:write"
],
"last_used_at": "örnek",
"expires_at": "örnek",
"revoked_at": "örnek",
"ip_allowlist": [
"örnek"
],
"rotated_at": "örnek",
"created_by": "örnek",
"created_at": "örnek",
"key": "key-2026-10"
}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/api-keys" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sipariş bildirimleri",
"scopes": [
"admin"
],
"environment": "live",
"expires_at": "2026-10-17T09:00:00Z",
"ip_allowlist": [
"örnek"
]
}'Anahtarı güncelle (ad, kapsam, IP izin listesi, bitiş)
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
keyId | yol | string | Evet | "key_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
İstek gövdesi (zorunlu)
Şema: UpdateApiKeyDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
name | string | Hayır | Uzunluk: 2–100 |
scopes | array<enum> | Hayır | Öğe: 1–8 |
ip_allowlist | array<string> | Hayır | Öğe: 0–50 |
expires_at | string (date-time) | null | Hayır |
Örnek:
{
"name": "Sipariş bildirimleri",
"scopes": [
"admin"
],
"ip_allowlist": [
"örnek"
],
"expires_at": "2026-10-17T09:00:00Z"
}Yanıtlar
200 — Başarılı.
Şema: ApiKey
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
org_id | string | Evet | |
app_id | string | null | Evet | |
name | string | Evet | |
prefix | string | Evet | |
scopes | array<string> | Evet | |
last_used_at | string | null | Evet | |
expires_at | string | null | Evet | |
revoked_at | string | null | Evet | |
ip_allowlist | array<string> | Evet | |
rotated_at | string | null | Evet | |
created_by | string | null | Evet | |
created_at | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "key_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"org_id": "org_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"prefix": "örnek",
"scopes": [
"notifications:write"
],
"last_used_at": "örnek",
"expires_at": "örnek",
"revoked_at": "örnek",
"ip_allowlist": [
"örnek"
],
"rotated_at": "örnek",
"created_by": "örnek",
"created_at": "örnek"
}Hata yanıtları ortak zarfla döner (error.code, message, details, request_id): hata kataloğu. Tüm yanıtlar X-RateLimit-* başlıklarını taşır (hız sınırları).
Örnekler
curl -X PATCH "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/api-keys/key_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sipariş bildirimleri",
"scopes": [
"admin"
],
"ip_allowlist": [
"örnek"
],
"expires_at": "2026-10-17T09:00:00Z"
}'Anahtarı iptal et
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
keyId | yol | string | Evet | "key_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/api-keys/key_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Anahtarı döndür (eski değer anında geçersiz)
Kimlik doğrulama: API anahtarı — kapsam admin (admin her kapsamı içerir).
Parametreler
| Ad | Konum | Tür | Zorunlu | Açıklama | Örnek |
|---|---|---|---|---|---|
keyId | yol | string | Evet | "key_01JD3W5Q7X9K2M4N6P8R0T1V3W" | |
appId | yol | string | Evet | "app_01JD3W5Q7X9K2M4N6P8R0T1V3W" |
Yanıtlar
200 — Başarılı.
Şema: CreatedApiKey
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
org_id | string | Evet | |
app_id | string | null | Evet | |
name | string | Evet | |
prefix | string | Evet | |
scopes | array<string> | Evet | |
last_used_at | string | null | Evet | |
expires_at | string | null | Evet | |
revoked_at | string | null | Evet | |
ip_allowlist | array<string> | Evet | |
rotated_at | string | null | Evet | |
created_by | string | null | Evet | |
created_at | string | Evet | |
key | string | Evet |
Örnek yanıt:
{
"name": "Sipariş bildirimleri",
"id": "key_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"org_id": "org_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"app_id": "app_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"prefix": "örnek",
"scopes": [
"notifications:write"
],
"last_used_at": "örnek",
"expires_at": "örnek",
"revoked_at": "örnek",
"ip_allowlist": [
"örnek"
],
"rotated_at": "örnek",
"created_by": "örnek",
"created_at": "örnek",
"key": "key-2026-10"
}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/api-keys/key_01JD3W5Q7X9K2M4N6P8R0T1V3W/rotate" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Organizasyon
Organizasyon — 1 işlem (GET /v1/organization/usage). OpenAPI 3.1.0 sözleşmesinden üretilir.
Identity verification anahtarları
Identity verification anahtarları — 3 işlem (GET /v1/apps/{appId}/identity-keys, POST /v1/apps/{appId}/identity-keys, DELETE /v1/apps/{appId}/identity-keys/{keyId}). OpenAPI 3.1.0 sözleşmesinden üretilir.