Einen Door/Gate Controller entriegeln

Sendet einen Entriegelungsbefehl an den Door/Gate Controller und wartet, bis das physische Relais die Entriegelung bestätigt.

Ihr System muss entscheiden, ob die Person berechtigt ist, bevor es diesen Endpunkt aufruft. Der Performance Hub prüft nur den Partnerschlüssel, den Einrichtungszugriff, die Zugehörigkeit der Tür und den Gerätezustand.

Parameter

  • door_id string erforderlich

    Die vom Listen-Endpunkt zurückgegebene ID des Door/Gate Controller.

  • facility_id string entweder/oderGeben Sie den für Ihre Integration konfigurierten Typ der Einrichtungskennung an: Verwenden Sie facility_id für Direct-Link-Integrationen oder linking_identifier für Linking-Identifier-Integrationen. Senden Sie nicht beide; die API verwendet den für Ihr Partnerkonto konfigurierten Kennungstyp und ignoriert den anderen. Weitere Informationen

    Einrichtungs-ID des Performance Hub. Erforderlich für Direct-Link-Integrationen.

  • linking_identifier string entweder/oderGeben Sie den für Ihre Integration konfigurierten Typ der Einrichtungskennung an: Verwenden Sie facility_id für Direct-Link-Integrationen oder linking_identifier für Linking-Identifier-Integrationen. Senden Sie nicht beide; die API verwendet den für Ihr Partnerkonto konfigurierten Kennungstyp und ignoriert den anderen. Weitere Informationen

    Einrichtungskennung des Partners. Erforderlich für Linking-Identifier-Integrationen.

  • member_id string erforderlich

    Mitglieds-ID des Partners. Wird für die Audit-Protokollierung und die spätere Datenverknüpfung verwendet.

  • first_name string erforderlich

    Vorname der Person, die die Tür öffnet.

  • last_name string erforderlich

    Nachname der Person, die die Tür öffnet.

  • full_name string optional

    Optional. Wenn das Feld fehlt, kombiniert der Performance Hub first_name und last_name.

  • check_in_id string optional

    Optionale Check-in-ID aus Ihrem System zur Zuordnung.

  • idempotency_key string optional

    Optionaler Schlüssel zum Schutz vor Wiederholungen. Wird derselbe Schlüssel für denselben Partner, dieselbe Einrichtung und dieselbe Tür erneut verwendet, wird das vorhandene Ergebnis zurückgegeben, sofern verfügbar.

Rückgabe

Gibt 200 nur zurück, wenn das Gerät bestätigt, dass das Relais physisch entriegelt hat. Die Tür verwendet die in der Geräteverwaltung des Performance Hub konfigurierte Haltezeit; Partner können das Relais-Timing nicht pro Anfrage überschreiben. Die meisten Bestätigungen sollten innerhalb von 3-5 Sekunden erfolgen. Behandeln Sie das dokumentierte Zeitlimit als explizit fehlgeschlagene Entriegelung und wiederholen Sie den Vorgang nur gemäß Ihren eigenen Sicherheitsregeln.

Häufige Fehler:

  • 403 integration_not_enabled - Ihre Integration ist für die Einrichtung nicht aktiviert.
  • 409 maintenance_mode_active - Das Personal der Einrichtung hat den Wartungsmodus für die Tür aktiviert.
  • 503 device_offline - Der Door/Gate Controller ist offline oder seine Daten sind veraltet.
  • 504 unlock_confirmation_timeout - Der Befehl wurde gesendet, aber vor Ablauf des Zeitlimits ging keine passende Bestätigung ein.

Anfrage

curl -X POST https://partner-api.performancehub.co/partner/v1/access-control/doors/00000000000000000000000000000007/unlock \
  -u sk_live_YOUR_PARTNER_SECRET_KEY: \
  -H "Content-Type: application/json" \
  -d '{
    "facility_id": "550e8400-e29b-41d4-a716-446655440000",
    "member_id": "mem_12345",
    "first_name": "Jane",
    "last_name": "S.",
    "full_name": "Jane S.",
    "source": "door_reader",
    "idempotency_key": "unlock_20260501_0001"
  }'

Antwort

{
  "status": "unlocked",
  "door_id": "00000000000000000000000000000007",
  "facility_id": "550e8400-e29b-41d4-a716-446655440000",
  "event_id": "00000000-0000-0000-0000-000000000045",
  "command_id": "00000000-0000-0000-0000-000000000049",
  "hold_time_seconds": 10,
  "confirmed_at": "2026-05-01T04:30:00.000Z"
}

Fehlerantwort

{
  "status": "failed",
  "reason": "device_offline",
  "door_id": "00000000000000000000000000000007",
  "facility_id": "550e8400-e29b-41d4-a716-446655440000",
  "event_id": "00000000-0000-0000-0000-000000000045"
}