アクセスの試行または拒否を記録する

お使いのシステムですでに判断したアクセスの試行または拒否を記録します。ドア/ゲートコントローラーには接続されず、ドアは解錠されません。

システムが入場を拒否した場合や、解錠せずに試行をドア/ゲートアクセスのアクセスログに表示させたい場合に使用します。Performance Hub は、会員ステータス、アクセス時間、その他のアクセスルールを評価しません。

拒否イベントは、Denied の結果、パートナー名、ドア、会員識別子(送信した場合)、読みやすい形式の理由コードとともに、ドア/ゲートアクセスのアクセスログに表示されます。たとえば、membership_expired は「Membership Expired」と表示されます。reason_display_text と user_email はイベントとともに保存されます。

パラメーター

  • door_id string 必須

    一覧エンドポイントから返されたドア/ゲートコントローラーの ID。

  • facility_id string いずれか一方連携に設定されている施設識別子の種類を指定してください。Direct Link の連携では facility_id を、Linking Identifier の連携では linking_identifier を使用します。両方を送信しないでください。API はパートナーアカウントに設定された識別子の種類を使用し、もう一方は無視します。詳細

    Performance Hub の施設 ID。Direct Link の連携で必須です。

  • linking_identifier string いずれか一方連携に設定されている施設識別子の種類を指定してください。Direct Link の連携では facility_id を、Linking Identifier の連携では linking_identifier を使用します。両方を送信しないでください。API はパートナーアカウントに設定された識別子の種類を使用し、もう一方は無視します。詳細

    パートナーの施設識別子。Linking Identifier の連携で必須です。

  • 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 - キーが読み取り専用である。
  • 403 integration_not_enabled - 施設で連携が有効になっていない。理由は message に示されます。
  • 404 - リンク済みの施設でドア/ゲートコントローラーが見つからなかった。

リクエスト

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
}