Ana içeriğe geç

Integration Oluştur

Genel Bakış

Belirli bir node’a bağlı bir integration oluşturur (API key + secret). Secret sadece oluşturma sırasında bir kez döner — güvenli şekilde saklanmalıdır. API key ve secret oluşturulduktan sonra değiştirilemez.

Endpoint: POST /api/v1/integrations

Kimlik Doğrulama: Bearer token (JWT) gereklidir.


İstek

Başlıklar

BaşlıkZorunluAçıklama
AuthorizationEvetBearer <jwt_token>
Content-TypeEvetapplication/json

Gövde

AlanTipZorunluDoğrulamaAçıklama
node_idstringEvetUUIDIntegration'ın ait olduğu node'un UUID'si
namestringEvet1–255 karakterIntegration'ın görünen adı
permissionsstring[]Hayırİzin listesi (örn: payments.read, payments.create)
expires_atstringHayırISO 8601 tarih/saatOpsiyonel son kullanma tarihi

Örnek İstek

{
"node_id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Production API",
"permissions": ["payments.read", "payments.create"],
"expires_at": "2026-12-31T23:59:59Z"
}

Yanıt

Başarı — 201 Created

AlanTipAçıklama
idstringIntegration UUID
node_idstringNode UUID
namestringIntegration adı
api_keystringAPI anahtarı (örn: apex_abc123...)
secretstringDüz metin secret — sadece create'te döner
permissionsstring[]İzin listesi
expires_atstringSon kullanma tarihi (veya null)
created_atstringOluşturulma zaman damgası

Örnek Yanıt

{
"id": "550e8400-e29b-41d4-a716-446655440001",
"node_id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Production API",
"api_key": "apex_abc123xyz456",
"secret": "plain_secret_returned_only_once",
"permissions": ["payments.read", "payments.create"],
"expires_at": "2026-12-31T23:59:59Z",
"created_at": "2025-02-14T10:00:00Z"
}

Hata Yanıtları

KodAçıklama
400Geçersiz istek (doğrulama hatası)
401Yetkisiz (eksik veya geçersiz token)
404Node bulunamadı
409Bu node için API key zaten mevcut
500Sunucu hatası

cURL Örneği

curl -X POST https://api.example.com/api/v1/integrations \
-H "Authorization: Bearer JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"node_id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Production API",
"permissions": ["payments.read", "payments.create"]
}'