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.
JWT identity verification için app başına ES256 genel anahtarları (kid); SDK login belirteçlerini sunucunuz bu anahtarların özel yarısıyla imzalar.
Taban adres: https://api.pushizo.com · Etiket: identity-keys · Etkileşimli belge (Scalar)
İşlemler
| Yöntem | Yol | İşlem |
|---|---|---|
GET | /v1/apps/{appId}/identity-keys | SDK kimlik doğrulama (JWT) genel anahtarları |
POST | /v1/apps/{appId}/identity-keys | Genel anahtar ekle (ES256) |
DELETE | /v1/apps/{appId}/identity-keys/{keyId} | Genel anahtarı iptal et |
Ayrıntılar
SDK kimlik doğrulama (JWT) genel 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: IdentityKeyList
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
data | array<object> | Evet | |
data[].id | string | Evet | |
data[].kid | string | Evet | |
data[].alg | "ES256" | Evet | |
data[].public_jwk | map<string, string> | Evet | |
data[].label | string | null | Evet | |
data[].created_at | string | Evet | |
data[].revoked_at | string | null | Evet |
Örnek yanıt:
{
"data": [
{
"id": "key_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"kid": "key-2026-10",
"alg": "ES256",
"public_jwk": {
"key": "user_42"
},
"label": "external_id",
"created_at": "örnek",
"revoked_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/identity-keys" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"Genel anahtar ekle (ES256)
SDK JWT identity verification için ES256 (EC P-256) genel anahtarı ekler; özel anahtar gönderilmez. Belirteç sunucunuzda imzalanır (sub = external_id, aud = app_id, exp ≤ 24 saat) ve SDK isteklerinde Authorization: Bearer <jwt> başlığıyla taşınır. Kip app ayarında identity_verification_mode ile seçilir.
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: CreateIdentityKeyDto
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
kid | string | Hayır | Uzunluk: 1–64 |
label | string | Hayır | Uzunluk: 0–80 |
public_jwk | map<string, any> | Hayır | |
public_key_pem | string | Hayır | Uzunluk: 0–4000 |
Örnek:
{
"kid": "key-2026-10",
"label": "external_id",
"public_jwk": {
"key": "örnek"
},
"public_key_pem": "örnek"
}Yanıtlar
201 — Başarılı.
Şema: IdentityKey
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
kid | string | Evet | |
alg | "ES256" | Evet | |
public_jwk | map<string, string> | Evet | |
label | string | null | Evet | |
created_at | string | Evet | |
revoked_at | string | null | Evet |
Örnek yanıt:
{
"id": "key_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"kid": "key-2026-10",
"alg": "ES256",
"public_jwk": {
"key": "user_42"
},
"label": "external_id",
"created_at": "örnek",
"revoked_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/identity-keys" \
-H "Authorization: Bearer $PUSHIZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"kid": "key-2026-10",
"label": "external_id",
"public_jwk": {
"key": "örnek"
},
"public_key_pem": "örnek"
}'Genel 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: IdentityKey
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string | Evet | |
kid | string | Evet | |
alg | "ES256" | Evet | |
public_jwk | map<string, string> | Evet | |
label | string | null | Evet | |
created_at | string | Evet | |
revoked_at | string | null | Evet |
Örnek yanıt:
{
"id": "key_01JD3W5Q7X9K2M4N6P8R0T1V3W",
"kid": "key-2026-10",
"alg": "ES256",
"public_jwk": {
"key": "user_42"
},
"label": "external_id",
"created_at": "örnek",
"revoked_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 DELETE "https://api.pushizo.com/v1/apps/app_01JD3W5Q7X9K2M4N6P8R0T1V3W/identity-keys/key_01JD3W5Q7X9K2M4N6P8R0T1V3W" \
-H "Authorization: Bearer $PUSHIZO_API_KEY"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.
Kanallar
Kanallar — 3 işlem (GET /v1/apps/{appId}/channels, PUT /v1/apps/{appId}/channels/{channel}, POST /v1/apps/{appId}/channels/{channel}/validate). OpenAPI 3.1.0 sözleşmesinden üretilir.