एक्सेस प्रयास या अस्वीकार रिकॉर्ड करें

ऐसा एक्सेस प्रयास या अस्वीकार रिकॉर्ड करता है जिसका निर्णय आपका सिस्टम पहले ही ले चुका है। Door/Gate Controller से संपर्क नहीं किया जाता, और दरवाज़ा अनलॉक नहीं होता।

इसका उपयोग तब करें जब आपका सिस्टम प्रवेश से इनकार करता है, या जब किसी प्रयास को बिना अनलॉक के Door & Gate Access के एक्सेस लॉग में दिखना चाहिए। Performance Hub सदस्यता की स्थिति, एक्सेस घंटे या अन्य एक्सेस नियमों का मूल्यांकन नहीं करता है।

अस्वीकार किया गया इवेंट Door & Gate Access के एक्सेस लॉग में Denied परिणाम, आपके पार्टनर नाम, दरवाज़े, सदस्य पहचानकर्ता (यदि आप भेजते हैं) और पढ़ने योग्य रूप में कारण कोड के साथ दिखाई देता है। उदाहरण के लिए, membership_expired को "Membership Expired" के रूप में दिखाया जाता है। reason_display_text और user_email इवेंट के साथ संग्रहीत किए जाते हैं।

पैरामीटर

  • door_id string आवश्यक

    सूची एंडपॉइंट द्वारा लौटाया गया Door/Gate Controller ID।

  • facility_id string इनमें से एकअपने इंटीग्रेशन के लिए कॉन्फ़िगर किया गया सुविधा पहचानकर्ता प्रकार दें: डायरेक्ट-लिंक इंटीग्रेशन के लिए facility_id का उपयोग करें, या लिंकिंग-आइडेंटिफ़ायर इंटीग्रेशन के लिए linking_identifier का उपयोग करें। दोनों न भेजें; API आपके पार्टनर खाते के लिए कॉन्फ़िगर किए गए पहचानकर्ता प्रकार का उपयोग करता है और दूसरे को अनदेखा करता है। और जानें

    Performance Hub सुविधा ID। डायरेक्ट-लिंक इंटीग्रेशन के लिए आवश्यक।

  • linking_identifier string इनमें से एकअपने इंटीग्रेशन के लिए कॉन्फ़िगर किया गया सुविधा पहचानकर्ता प्रकार दें: डायरेक्ट-लिंक इंटीग्रेशन के लिए facility_id का उपयोग करें, या लिंकिंग-आइडेंटिफ़ायर इंटीग्रेशन के लिए linking_identifier का उपयोग करें। दोनों न भेजें; API आपके पार्टनर खाते के लिए कॉन्फ़िगर किए गए पहचानकर्ता प्रकार का उपयोग करता है और दूसरे को अनदेखा करता है। और जानें

    पार्टनर सुविधा पहचानकर्ता। लिंकिंग-आइडेंटिफ़ायर इंटीग्रेशन के लिए आवश्यक।

  • outcome string आवश्यक

    denied या attempted।

  • reason string वैकल्पिक

    लोअरकेस snake_case कारण कोड, अधिकतम 64 अक्षर। outcome के denied होने पर आवश्यक। उदाहरण: membership_expired।

  • reason_display_text string वैकल्पिक

    मानव-पठनीय कारण, अधिकतम 256 अक्षर। उदाहरण: Membership expired on 2026-04-01।

  • member_id string वैकल्पिक

    पार्टनर सदस्य ID। जब क्रेडेंशियल किसी सदस्य से मेल नहीं खाता, जैसे कोई अज्ञात कार्ड, तब इसे छोड़ दें।

  • user_email string वैकल्पिक

    उस व्यक्ति का ईमेल जिसने पहुँच का प्रयास किया।

  • timestamp string वैकल्पिक

    प्रयास कब हुआ, टाइमज़ोन सहित ISO 8601 के रूप में। उदाहरण: 2026-05-18T10:15:30Z। डिफ़ॉल्ट रूप से अनुरोध प्राप्त होने का समय। यह भविष्य में 5 मिनट से अधिक या 30 दिनों से अधिक पुराना नहीं होना चाहिए।

  • idempotency_key string वैकल्पिक

    रीप्ले-सुरक्षा कुंजी, अधिकतम 128 अक्षर। समान पार्टनर, सुविधा और दरवाज़े के लिए समान कुंजी का दोबारा उपयोग करने पर मूल परिणाम लौटाया जाता है।

रिटर्न

इवेंट रिकॉर्ड होने पर 201 लौटाता है। समान idempotency_key को दोबारा भेजने पर idempotent को true पर सेट करके 200 लौटाया जाता है और कोई दूसरा इवेंट नहीं बनाया जाता।

dry-run कुंजी dry_run को true पर सेट करके 200 लौटाती है। कुछ भी रिकॉर्ड नहीं किया जाता।

सामान्य विफलताएँ:

  • 400 - बॉडी अमान्य है, किसी अस्वीकार में reason नहीं है, टाइमस्टैम्प सीमा से बाहर है, या facility_id / linking_identifier किसी लिंक की गई सुविधा से मेल नहीं खाता।
  • 403 - कुंजी read-only है।
  • 403 integration_not_enabled - सुविधा के लिए आपका इंटीग्रेशन सक्षम नहीं है। message कारण बताता है।
  • 404 - लिंक की गई सुविधा के लिए Door/Gate Controller नहीं मिला।

अनुरोध

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"
  }'

रिस्पॉन्स

{
  "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"
}

आइडेम्पोटेंट रीप्ले

{
  "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
}