Bir erişim girişimini veya reddini kaydetme
Sisteminizin önceden karar verdiği bir erişim girişimini veya reddi kaydeder. Door/Gate Controller ile iletişim kurulmaz ve kapının kilidi açılmaz.
Bunu, sisteminiz girişi reddettiğinde veya bir girişimin kilit açılmadan Door & Gate Access kayıtlarında görünmesi gerektiğinde kullanın. Performance Hub üyelik durumunu, erişim saatlerini veya diğer erişim kurallarını değerlendirmez.
Reddedilen bir olay, Door & Gate Access kayıtlarında Denied sonucu, iş ortağı adınız, kapı, gönderdiyseniz üye tanımlayıcısı ve okunabilir biçimdeki neden koduyla görünür. Örneğin membership_expired, "Membership Expired" olarak gösterilir. reason_display_text ve user_email olayla birlikte saklanır.
Parametreler
-
door_id
stringzorunluListe uç noktasının döndürdüğü Door/Gate Controller kimliği.
-
facility_id
stringikisinden biriEntegrasyonunuz için yapılandırılmış tesis tanımlayıcısı türünü sağlayın: doğrudan bağlantı (direct-link) entegrasyonları için facility_id, bağlama tanımlayıcısı (linking-identifier) entegrasyonları için linking_identifier kullanın. İkisini birden göndermeyin; API, iş ortağı hesabınız için yapılandırılmış tanımlayıcı türünü kullanır ve diğerini yok sayar. Daha fazla bilgiPerformance Hub tesis kimliği. Doğrudan bağlantı entegrasyonları için zorunludur.
-
linking_identifier
stringikisinden biriEntegrasyonunuz için yapılandırılmış tesis tanımlayıcısı türünü sağlayın: doğrudan bağlantı (direct-link) entegrasyonları için facility_id, bağlama tanımlayıcısı (linking-identifier) entegrasyonları için linking_identifier kullanın. İkisini birden göndermeyin; API, iş ortağı hesabınız için yapılandırılmış tanımlayıcı türünü kullanır ve diğerini yok sayar. Daha fazla bilgiİş ortağı tesis tanımlayıcısı. Bağlama tanımlayıcısı entegrasyonları için zorunludur.
-
outcome
stringzorunludeniedveyaattempted. -
reason
stringisteğe bağlıKüçük harfli snake_case neden kodu, en fazla 64 karakter.
outcomedeğerideniedolduğunda zorunludur. Örnek:membership_expired. -
reason_display_text
stringisteğe bağlıİnsan tarafından okunabilir neden, en fazla 256 karakter. Örnek:
Membership expired on 2026-04-01. -
member_id
stringisteğe bağlıİş ortağı üye kimliği. Kimlik bilgisi bir üyeyle eşleşmediğinde (örneğin tanınmayan bir kart) bunu göndermeyin.
-
user_email
stringisteğe bağlıErişim girişiminde bulunan kişinin e-posta adresi.
-
timestamp
stringisteğe bağlıGirişimin gerçekleştiği zaman, saat dilimiyle ISO 8601 biçiminde. Örnek:
2026-05-18T10:15:30Z. Varsayılan olarak isteğin alındığı zamandır. 5 dakikadan fazla ileri tarihli veya 30 günden eski olmamalıdır. -
idempotency_key
stringisteğe bağlıYeniden oynatma koruması anahtarı, en fazla 128 karakter. Aynı iş ortağı, tesis ve kapı için aynı anahtarı yeniden kullanmak orijinal sonucu döndürür.
Döndürülen değer
Olay kaydedildiğinde 201 döndürür. Aynı idempotency_key ile yinelenen istek, idempotent değeri true olarak ayarlanmış şekilde 200 döndürür ve başka bir olay oluşturmaz.
Bir dry-run anahtarı, dry_run değeri true olarak ayarlanmış şekilde 200 döndürür. Hiçbir şey kaydedilmez.
Yaygın hatalar:
400- gövde geçersiz, bir rettareasonyok, zaman damgası aralık dışında veyafacility_id/linking_identifierbağlı bir tesisle eşleşmiyor.403- anahtar salt okunur.403 integration_not_enabled- entegrasyonunuz tesis için etkin değil.messagenedeni belirtir.404- bağlı tesis için Door/Gate Controller bulunamadı.
İstek
curl -X POST https://partner-api.performancehub.co/partner/v1/access-control/doors/00000000000000000000000000000007/access-events \
-u sk_live_YOUR_PARTNER_SECRET_KEY: \
-H "Content-Type: application/json" \
-d '{
"facility_id": "550e8400-e29b-41d4-a716-446655440000",
"outcome": "denied",
"reason": "membership_expired",
"reason_display_text": "Membership expired on 2026-04-01",
"member_id": "mem_12345",
"user_email": "member@example.com",
"timestamp": "2026-05-18T10:15:30Z",
"idempotency_key": "evt_abc12345"
}'
Yanıt
{
"status": "recorded",
"event_id": "00000000-0000-0000-0000-000000000045",
"outcome": "denied",
"door_id": "00000000000000000000000000000007",
"facility_id": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-05-18T10:15:30.000Z"
}
Idempotent yeniden oynatma
{
"status": "recorded",
"event_id": "00000000-0000-0000-0000-000000000045",
"outcome": "denied",
"door_id": "00000000000000000000000000000007",
"facility_id": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-05-18T10:15:30.000Z",
"idempotent": true
}