KEYVOX API | 開発者ポータル

KEYVOXアクセス管理サービスは、対応するロックやロッカーを導入することで、 宿泊施設、レンタルスペースやコワーキングスペース等の空間管理ビジネスを簡単に始められるソリューションです (サービスサイト https://keyvox.co)。KEYVOX APIはそのような空間管理ビジネスに必要な業務をAPIとして外部に提供することで、ユーザーの予約システム、管理システム、モバイルアプリなどに簡単に接続することを可能にします。 また Webhookを利用することで自社サービス等への解錠/施錠に関する通知も行えます。KEYVOX APIを利用してKEYVOXサービスを更に活用しましょう。
ご質問は Discordコミュニティまでお寄せください。
※APIコール数には制限があります。

サンプルソースとして、 JavaPHPJS(Postman用)を提供しています。

  1. 事前準備
    • KEYVOXのロックを利用する場合
      - ロックを購入します
      - KEYVOX管理画面(BACS - Blockchainlock Access Control Service)右上の①組織>②開発者メニュー>③APIキーを生成 からAPIキーを生成します
      - 生成したAPIキーとシークレットキーは④コピーで保存してください。


      - ⑤⑥でAPIを呼び出すサーバの公開IPアドレスを登録します。連携パートナーからAPIを呼び出す場合は、パートナーにIPアドレスをご確認ください。IPアドレスはレンジで指定することもできます。
      - KEYVOX Basicでデバイスのペアリングをします
      - KEYVOX 管理画面(BACS)で場所、ドア、デバイスの関係を設定します
    • 他社ロックを利用する場合(L!NKEY, OPELO, igloohome)
      - 各販売店よりデバイスを購入します
      - KEYVOX管理画面(BACS - Blockchainlock Access Control Service)右上の①組織>②開発者メニュー>③APIキーを生成 からAPIキーを生成し、公開IPアドレスを登録します。
      - (KEYVOXのロックを利用する場合を参照ください。)
      - BACSの設定>デバイス>デバイス追加で該当ロックを追加します
      - KEYVOX 管理画面(BACS)で場所、ドア、デバイスの関係を設定します
    • ロッカーを利用する場合
      - 販売店からロッカーを購入します
      - KEYVOX管理画面(BACS - Blockchainlock Access Control Service)右上の①組織>②開発者メニュー>③APIキーを生成 からAPIキーを生成し、公開IPアドレスを登録します。
      - (KEYVOXのロックを利用する場合を参照ください。)
      - ロッカーのMACアドレスをKEYVOX管理画面(BACS)に設定し、口数等必要な設定を済ませます(設定方法は納品時にご確認ください)

  2. Java、PHPでAPIを呼び出す場合
    - JavaPHPのサンプルソースをダウンロードします
    - 上記で取得したAPIキーに入れ替えて実行してみます
  3. postmanでAPIを呼び出す場合
    - postmanに使われるサンプルファイル postman_collectionをダウンロードします
    - 参照:   Youtubeハンズオン

共通ヘッダ

Parameter Description Example
x-target-host

default.pms固定

"default.pms"
date Client time. A difference of 5 seconds or more from the server time will deny access Mon, 29 Oct 2018 13:16:39 GMT
digest Sha256 summary of the body part (base64 encoding) SHA-256=2LJ53DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=
authorization  Hmac256 authentication header. Contains 5 parts. hmac username="an9y4AidwJ3hsxfltlX7XXXXXXfGh", algorithm="hmac-sha256", headers="date request-line digest", signature="Mk0EOHf2ljFkltwPJBBvj5XXXXXNnCBnHs=" 
   Authentication header type "hmac" 
  username Issued apikey 
  algorithm Signature method. Fixed to "HMAC-SHA256"
  headers The data to be signed is composed. Fixed as "date request-line digest" 
  signature The value obtained by concatenating the data to be signed into a string in a specific way and then signing the string with apisecret.※ 
API Endpoint
https://eco.blockchainlock.io/api/eagle-pms
Contact: tech@blockchainlock.io
Schemes: https
Version: 1.0.0

スマートロック

部屋リスト取得

POST /v1/getUnits

WEB管理画面「BACS」で設定したドア(部屋)、ドアに紐づいているスマートロック情報を取得します。カギの発行はドア(部屋)に対して行います。

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "unitId": "5de092a8ef16f9512c1f1fff",
      "unitName": "1101室",
      "lockIds": "5bdfdd421bca968a774ec18a,5bd80fcd31bca24fc30e1eab",
      "placeName": "内幸町ホテル",
      "unitState": "I",
      "unitType": "シングル"
    }
  ]
}

暗証番号発行

POST /v1/createLockPin

ドア(部屋)に対し暗証番号を新規発行します。発行された暗証番号は、ドア(部屋)に紐づけられたすべてのスマートロックに対して配信されます。スマートロックによって仕様が異なるため、異なる機種のスマートロックには同じドア(部屋)からの暗証番号発行ができません。詳細はgetLockStatusのレスポンスを参照してください。

スマートロックの機種によって、発行できる暗証番号の桁数やタイミングが異なります。ご利用になるスマートロックの機種が特定できない場合、あらかじめgetLockStatusでスマートロックの種別を確認したうえで処理を変えていただくか、一律以下の処理を行っていただくことを推奨します。

・クライアント側での暗証番号の指定は行わず、自動発行とする
・暗証番号の桁数をクライアント側で指定しない(スマートロック機種によって異なります)。
・createLockPinのおよそ5分後以降に、getLockPinStatusで暗証番号を取得する。
※getLockPinStatusのstatusに3X(30,31,32)が返却されるまで、定期的に取得を繰り返してください。
※暗証番号の発行は利用開始日時の72時間前から、となります。getLockPinStatusでの結果取得も「利用開始日時の72時間前」を過ぎてから行ってください。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "unitId": "5de092a8ef16f9512c1f1fff",
  "pinCode": "123456",
  "sTime": "1633305600",
  "eTime": "1633316400",
  "targetName": "BCL 太郎"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinId": "c62325518edc528e24492ee8",
    "pinCode": "123456",
    "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
  }
}

暗証番号変更

POST /v1/changeLockPin

発行した暗証番号を変更します。変更を行う際には、createLockPinのレスポンスに含まれるpinIdを指定する必要があります。一部のスマートロックは仕様が異なるため、変更、削除ができません。(※)

※スマートロック igloohome、OPELO をご利用されている場合、発行済みの暗証番号を変更、削除することはできません。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "pinId": "c62325518edc528e24492ee8",
  "pinCode": "123456",
  "sTime": "1633305600",
  "eTime": "1633316400",
  "targetName": "XXXで利用"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

暗証番号削除

POST /v1/disableLockPin

発行した暗証番号を削除します。削除を行う際には、createLockPinのレスポンスに含まれるpinIdを指定する必要があります。一部のスマートロックは仕様が異なるため、変更、削除ができません。(※)

※スマートロック igloohome、OPELO をご利用されている場合、発行済みの暗証番号を変更、削除することはできません。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "pinId": "c62325518edc528e24492ee8"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

暗証番号ステータス取得

POST /v1/getLockPinStatus

pinIdを指定して、発行した暗証番号のスマートロックへの配信状況を確認します。スマートロックが複数ある場合、最も遅いステータスが返却されます。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "pinId": "c62325518edc528e24492ee8"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinCode": "123456",
    "status": "10"
  }
}

暗証番号リスト取得

POST /v1/getLockPinList

lockIdを指定して、スマートロックごとに発行済みの暗証番号を取得します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "lockId": "000D6F0014A6F0B2",
  "sTime": "1633359600",
  "eTime": "1633532340",
  "position": "200",
  "records": "10"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "position": "467",
    "records": "5",
    "pinList": [
      {
        "id": "100001",
        "pinId": "c62325518edc528e24492ee8",
        "pinCode": "123456",
        "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B",
        "sTime": "1633305600",
        "eTime": "1633532340"
      }
    ]
  }
}

ロック状態取得

POST /v1/getLockStatus

lockIdを指定して、ロックの開閉状態、バッテリー残量、Wi-Fi接続状況を取得します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "lockId": "000D6F0014A6F0B2"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinType": "1",
    "relateBattery": "84%",
    "relateType": "PiACK II",
    "battery": "90%",
    "wifi": "1",
    "status": "1",
    "reportTime": "1691406002",
    "moduleId": "1000"
  }
}

ロック解錠履歴取得

POST /v1/getLockHistory

lockIdを指定して、ロックの開閉履歴を取得します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "lockId": "000D6F0014A6F0B2",
  "position": "62fbba54a5ec72404000c962",
  "records": "10"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "position": "5be1403031bca94e4cf46d57",
    "records": "5",
    "history": [
      {
        "etime": "1633532340",
        "etype": "1",
        "userName": "山田太郎",
        "value": "123456"
      }
    ]
  }
}

ロック開閉

POST /v1/unlock

lockIdを指定して、直接解錠、施錠を行います。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "lockId": "000D6F0014A6F0B2",
  "flag": "0"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

カード配信

POST /v1/setCard

ドアに対しICカードを新規発行

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "unitId": "5de092a8ef16f9512c1f1fff",
  "cardCode": "C3AD47FC",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXXで利用"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

カード更新

POST /v1/updateCard

発行したICカードの利用期間、名前を変更します。変更を行う際には、setCardのレスポンスに含まれるcardIdを指定する必要があります。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "cardId": "c62325518edc5224492ee8",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXXで利用"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

カード削除

POST /v1/disableCard

発行したICカードを削除します。削除を行う際には、setCardのレスポンスに含まれるcardIdを指定する必要があります。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "cardId": "c62325518edc5224492ee8"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

カードステータス取得

POST /v1/getCardStatus

accessIdを指定して、発行したICカードのスマートロックへの配信状況を確認します。スマートロックが複数ある場合、最も遅いステータスが返却されます。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "cardId": "5f7e9dba0cc45444a0b3a895"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "status": "10"
  }
}

カードリスト取得

POST /v1/getLockCardList

lockIdを指定して、スマートロックごとに発行済みのICカード情報を取得します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "lockId": "000D6F0014A6F0B2",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "position": "200",
  "records": "10"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "position": "467",
    "records": "5",
    "cardList": [
      {
        "id": "1446",
        "cardId": "5dc8c7c74cda067bd5b6232f",
        "cardCode": "C3AD47FC",
        "cardName": "XXXX用カード",
        "cardDesc": "XXXXで利用",
        "sTime": "1574160027",
        "eTime": "1633532340"
      }
    ]
  }
}

スマートロッカー

ロッカー取得

POST /v1/getLockers

WEB管理画面「BACS」に登録されているロッカー本体の情報を取得します。

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "deviceId": "5bceb8e2076d20135c307916",
      "deviceName": "XXXXエリアロッカー"
    }
  ]
}

ロッカーステータス取得

POST /v1/getLockerStatus

deviceIdを指定し、ロッカー本体ごとの各ボックスの利用状況を取得します。ボックス番号(boxNum)はWEB管理画面「BACS」にて確認できます。
※boxNumが00-01の形で、00は副キャビネット番号、01はBOX番号です。BACSの設定>ロッカー>ボックス設定画面で確認できます。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "deviceId": "5bceb8e2076d20135c307916",
  "boxNum": "00-01"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "deviceId": "A5C8A98B35260000",
      "boxNum": "00-01",
      "boxName": "01",
      "status": "0",
      "boxSize": "1"
    }
  ]
}

ロッカー解錠

POST /v1/unlockLocker

deviceId、boxNumを指定して、ロッカーの特定のボックスを直接解錠します。
※boxNumが00-01の形で、00は副キャビネット番号、01はBOX番号です。getLockerStatusのレスポンスで確認できます。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

ロッカーにカード配信

POST /v1/setLockerCard

ロッカーの特定のボックスに対し、ICカードの利用権限を発行します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01",
  "cardCode": "C3AD47FC",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXX用ロッカーのカード"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "accessId": "5f7e9dba0cc45444a0b3a895"
    }
  ]
}

ロッカーにカード更新

POST /v1/updateLockerCard

発行したICカードの利用期間、名前を変更します。変更を行う際には、setLockerCardのレスポンスに含まれるaccessIdを指定する必要があります。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "accessId": "string",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXXロッカーのカード"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

ロッカー暗証番号発行

POST /v1/createLockerPin

ロッカーの特定のボックスに対し、暗証番号を発行します。 暗証番号の他に、レスポンスとしてQRコード生成用URLも取得することができます。 暗証番号の扱いについてはいくつかのオプションがあります。 詳細はインターフェース内容の説明をご確認ください。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01",
  "checkin": "1",
  "mode": "0",
  "reassign": "0",
  "pinCode": "123456",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXX用のロッカー暗証番号"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinId": "ABACCD0G1",
    "pinCode": "123456",
    "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
  }
}

ロッカー暗証番号更新

POST /v1/changeLockerPin

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "pinId": "ABACCD0G1",
  "pinCode": "123456",
  "sTime": "1633359600",
  "eTime": "1633532340",
  "targetName": "XXX用のロッカー"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinId": "ABACCD0G1",
    "pinCode": "123456",
    "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
  }
}

ロッカー暗証番号削除

POST /v1/disableLockerPin

発行した暗証番号を削除します。削除を行う際には、createLockerPinのレスポンスに含まれるpinIdを指定する必要があります。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "pinId": "ABACCD0G1"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

ロッカー権限リスト取得

POST /v1/getLockerOrders

ロッカーの特定のボックスに対し、登録済みのカギ情報を取得します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01",
  "sTime": "1633359600",
  "eTime": "1633532340"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "deviceName": "XXXXエリアロッカー",
      "boxNum": "00-01",
      "boxName": "01",
      "boxSize": "1",
      "pinId": "ABACCD0G1",
      "pinCode": "123456",
      "sTime": "1633359600",
      "eTime": "1633532340"
    }
  ]
}

ロッカー空きボックスリスト取得

POST /v1/getAvailableBoxes

ロッカー本体ごとに、空いているボックスを取得します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "deviceId": "5bceb8e2076d20135c307916",
  "boxSize": "1",
  "sTime": "1633359600",
  "eTime": "1633532340"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "boxNum": "00-01",
      "boxName": "01"
    }
  ]
}

WEB管理画面「BACS」操作

カード登録

POST /v1/card/add

WEB管理画面「BACS」に対し、ICカードの情報を登録します。あらかじめICカードのIDm/UIDをご用意いただく必要があります。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "cardCode": "C3AD47FC",
  "cardName": "XXXX用カード",
  "cardDesc": "XXXXで利用"
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "cardId": "c62325518edc5224492ee8"
  }
}

カード削除

POST /v1/card/delCardList

WEB管理画面「BACS」に対し、登録したICカードの情報を削除します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "cardList": [
    {
      "cardId": "c62325518edc5224492ee8"
    }
  ]
}

OK

Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success"
}

予約

予約リスト取得

POST /v1/getBookingOrders

WEB管理画面「BACS」で設定したドア(部屋)に紐づいている、未チェックインの予約情報一覧を取得します。

入力パラメータ

x-target-host: string
in header

default.pms

date: string
in header

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string
in header

Sha256 summary of the body part (base64 encoding)

authorization: string
in header

Hmac256 authentication header.

Request Content-Types: application/json
Request Example
{
  "unitId": "5de092a8ef16f9512c1f1fff"
}
Response Content-Types: application/json
Response Example (200 OK)
{
  "code": "0",
  "msg": "success",
  "data": {
    "orderId": "HEN39BYIK",
    "checkIn": "1633305600",
    "checkOut": "1633305600",
    "pinCode": "123456"
  }
}

Schema Definitions

Common-Http-Header: object

x-target-host: string

default.pms 固定

date: string

RFC-1123 Ex: Mon, 20 Sep 2021 13:16:39 GMT

digest: string

Sha256 summary of the body part (base64 encoding)

authorization: string

Hmac256 authentication header.

Example
{
  "x-target-host": "default.pms",
  "date": "Mon, 20 Sep 2021 13:16:39 GMT",
  "digest": "SHA-256=ivH7EGZU5FG8LY9dEVn9HfgGOJqLd+ph1GneRnunZEg=",
  "authorization": "hmac username=\"2cSzVjzmOhSFvNKM3XaNkiRlZvKvVHWA88EUhzy2\", algorithm=\"hmac-sha256\", headers=\"date request-line digest\", signature=\"5DZhd173sm2nXR5WoVanjWgCOmYxtzVKV/lrQtt66u0=\"\n"
}

ResponseCommon:

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

Example
{
  "code": "0",
  "msg": "success"
}

ResponseAddCard: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: addCardOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "cardId": "c62325518edc5224492ee8"
  }
}

ResponseGetUnits: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getUnitsOut
getUnitsOut
Example
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "unitId": "5de092a8ef16f9512c1f1fff",
      "unitName": "1101室",
      "lockIds": "5bdfdd421bca968a774ec18a,5bd80fcd31bca24fc30e1eab",
      "placeName": "内幸町ホテル",
      "unitState": "I",
      "unitType": "シングル"
    }
  ]
}

ResponseGetLockers: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockersOut
getLockersOut
Example
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "deviceId": "5bceb8e2076d20135c307916",
      "deviceName": "XXXXエリアロッカー"
    }
  ]
}

ResponseGetAvailableBoxes: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getAvailableBoxesOut
getAvailableBoxesOut
Example
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "boxNum": "00-01",
      "boxName": "01"
    }
  ]
}

ResponseCreateLockPin: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: createLockPinOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinId": "c62325518edc528e24492ee8",
    "pinCode": "123456",
    "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
  }
}

ResponseSetLockerCard: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: setLockerCardOut
setLockerCardOut
Example
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "accessId": "5f7e9dba0cc45444a0b3a895"
    }
  ]
}

ResponseCreateLockerPin: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: createLockerPinOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinId": "ABACCD0G1",
    "pinCode": "123456",
    "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
  }
}

ResponseChangeLockerPin: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: changeLockerPinOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinId": "ABACCD0G1",
    "pinCode": "123456",
    "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
  }
}

ResponseGetLockPinStatus: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockPinStatusOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinCode": "123456",
    "status": "10"
  }
}

ResponseGetCardStatus: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getCardStatusOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "status": "10"
  }
}

ResponseGetLockPinList: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockPinListOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "position": "467",
    "records": "5",
    "pinList": [
      {
        "id": "100001",
        "pinId": "c62325518edc528e24492ee8",
        "pinCode": "123456",
        "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B",
        "sTime": "1633305600",
        "eTime": "1633532340"
      }
    ]
  }
}

ResponseGetLockerStatus: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockerStatusOut
getLockerStatusOut
Example
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "deviceId": "A5C8A98B35260000",
      "boxNum": "00-01",
      "boxName": "01",
      "status": "0",
      "boxSize": "1"
    }
  ]
}

ResponseGetLockerOrders: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockerOrdersOut
getLockerOrdersOut
Example
{
  "code": "0",
  "msg": "success",
  "data": [
    {
      "deviceName": "XXXXエリアロッカー",
      "boxNum": "00-01",
      "boxName": "01",
      "boxSize": "1",
      "pinId": "ABACCD0G1",
      "pinCode": "123456",
      "sTime": "1633359600",
      "eTime": "1633532340"
    }
  ]
}

ResponseGetLockCardList: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockCardListOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "position": "467",
    "records": "5",
    "cardList": [
      {
        "id": "1446",
        "cardId": "5dc8c7c74cda067bd5b6232f",
        "cardCode": "C3AD47FC",
        "cardName": "XXXX用カード",
        "cardDesc": "XXXXで利用",
        "sTime": "1574160027",
        "eTime": "1633532340"
      }
    ]
  }
}

ResponseGetLockStatus: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockStatusOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "pinType": "1",
    "relateBattery": "84%",
    "relateType": "PiACK II",
    "battery": "90%",
    "wifi": "1",
    "status": "1",
    "reportTime": "1691406002",
    "moduleId": "1000"
  }
}

ResponseGetLockHistory: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getLockHistoryOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "position": "5be1403031bca94e4cf46d57",
    "records": "5",
    "history": [
      {
        "etime": "1633532340",
        "etype": "1",
        "userName": "山田太郎",
        "value": "123456"
      }
    ]
  }
}

ResponseGetBookingOrders: object

code: string

0:正常終了,0以外:異常終了

msg: string

レスポンスメッセージ

data: getBookingOrdersOut
Example
{
  "code": "0",
  "msg": "success",
  "data": {
    "orderId": "HEN39BYIK",
    "checkIn": "1633305600",
    "checkOut": "1633305600",
    "pinCode": "123456"
  }
}

addCardIn: object

cardCode: string

Mifereの場合は、UIDを、Felicaの場合はIDmの値を指定します。

cardName: string

カード名

cardDesc: string

カード備考

Example
{
  "cardCode": "C3AD47FC",
  "cardName": "XXXX用カード",
  "cardDesc": "XXXXで利用"
}

addCardOut: object

cardId: string

カードを識別するユニークID

Example
{
  "cardId": "c62325518edc5224492ee8"
}

delCard:

cardId: string

カードを識別するユニークID

Example
{
  "cardId": "c62325518edc5224492ee8"
}

getLockCardListOut: object

position: string

取得レコードが全体で何番目かの位置を示す情報

records: string

取得レコード数

cardList: getLockCard
getLockCard
Example
{
  "position": "467",
  "records": "5",
  "cardList": [
    {
      "id": "1446",
      "cardId": "5dc8c7c74cda067bd5b6232f",
      "cardCode": "C3AD47FC",
      "cardName": "XXXX用カード",
      "cardDesc": "XXXXで利用",
      "sTime": "1574160027",
      "eTime": "1633532340"
    }
  ]
}

getLockCard: object

id: string

id

cardId: string

カードを識別するユニークID

cardCode: string

Mifereの場合は、UIDを、Felicaの場合はIDmの値を指定します。

cardName: string

ICカードに割り当てる名前、任意の名前を指定可能です。

cardDesc: string

メモとして利用、BACSの設定>ICカード の画面で表示されます。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

Example
{
  "id": "1446",
  "cardId": "5dc8c7c74cda067bd5b6232f",
  "cardCode": "C3AD47FC",
  "cardName": "XXXX用カード",
  "cardDesc": "XXXXで利用",
  "sTime": "1574160027",
  "eTime": "1633532340"
}

getLockCardListIn: object

lockId: string

スマートロックを識別するユニークID

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

position: string

取得レコードが全体で何番目かの位置を示す情報

records: string

取得レコード数、未指定の場合50

Example
{
  "lockId": "000D6F0014A6F0B2",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "position": "200",
  "records": "10"
}

getCardStatusOut: object

status: string 10, 11, 12, 20, 21, 22, 30, 31, 32, 90, 91, 92

10:作成準備中, 11:更新準備中, 12:削除準備中,
20:作成中, 21:更新中, 22:削除中,
30:作成済, 31:更新済, 32:削除済,
90:作成エラー, 91:更新エラー, 92:削除エラー

Example
{
  "status": "10"
}

setCardIn: object

unitId: string

WEB管理画面「BACS」で設定したドア(部屋)ごとに割り当てられるユニークIDです。getUnitsで取得可能です。

cardCode: string

Mifereの場合は、UIDを、Felicaの場合はIDmの値を指定します。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "unitId": "5de092a8ef16f9512c1f1fff",
  "cardCode": "C3AD47FC",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXXで利用"
}

updateCardIn: object

cardId: string

カードを識別するユニークID

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "cardId": "c62325518edc5224492ee8",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXXで利用"
}

delCardListIn: object

cardList: delCard
delCard
Example
{
  "cardList": [
    {
      "cardId": "c62325518edc5224492ee8"
    }
  ]
}

disableCardIn: object

cardId: string

カードを識別するユニークID

Example
{
  "cardId": "c62325518edc5224492ee8"
}

getCardStatusIn: object

cardId: string

setLockerCardでアクセス権を設定した際に返却される、アクセス権ごとのユニークIDです。アクセス権を更新する際に指定します。

Example
{
  "cardId": "5f7e9dba0cc45444a0b3a895"
}

getUnitsOut: object

unitId: string

WEB管理画面「BACS」で設定したドア(部屋)ごとに割り当てられるユニークIDです。

unitName: string

WEB管理画面「BACS」で設定した場所の名前

lockIds: string

ロックID,複数ある場合はカンマ区切り

placeName: string

場所

unitState: string C, D, M, I

貸し出しを行った際の部屋ごとのステータス C:clean(清掃済み) D:dirty(清掃前) M:maintenance(メンテナンス中) I:in(利用中)

unitType: string

BACSで「プランありで貸し出す」ドアに設定されてる部屋タイプ

Example
{
  "unitId": "5de092a8ef16f9512c1f1fff",
  "unitName": "1101室",
  "lockIds": "5bdfdd421bca968a774ec18a,5bd80fcd31bca24fc30e1eab",
  "placeName": "内幸町ホテル",
  "unitState": "I",
  "unitType": "シングル"
}

createLockPinIn: object

unitId: string

WEB管理画面「BACS」で設定したドア(部屋)ごとに割り当てられるユニークIDです。getUnitsで取得可能です。

pinCode: string

スマートロックに配信する暗証番号に任意の数字を指定する場合に使用します。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "unitId": "5de092a8ef16f9512c1f1fff",
  "pinCode": "123456",
  "sTime": "1633305600",
  "eTime": "1633316400",
  "targetName": "BCL 太郎"
}

changeLockPinIn: object

pinId: string

暗証番号を識別するユニークID

pinCode: string

スマートロックに配信する暗証番号に任意の数字を指定する場合に使用します。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "pinId": "c62325518edc528e24492ee8",
  "pinCode": "123456",
  "sTime": "1633305600",
  "eTime": "1633316400",
  "targetName": "XXXで利用"
}

disableLockPinIn: object

pinId: string

暗証番号を識別するユニークID

Example
{
  "pinId": "c62325518edc528e24492ee8"
}

getLockPinStatusIn: object

pinId: string

暗証番号を識別するユニークID

Example
{
  "pinId": "c62325518edc528e24492ee8"
}

getLockPinListIn: object

lockId: string

スマートロックを識別するユニークID

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

position: string

取得レコードが全体で何番目かの位置を示す情報

records: string

取得レコード数、未指定の場合50

Example
{
  "lockId": "000D6F0014A6F0B2",
  "sTime": "1633359600",
  "eTime": "1633532340",
  "position": "200",
  "records": "10"
}

getLockStatusIn: object

lockId: string

スマートロックを識別するユニークID

Example
{
  "lockId": "000D6F0014A6F0B2"
}

getLockStatusOut: object

pinType: string 1, 2, 3

暗証番号方式、1:オンライン方式, 2:オフライン方式, 3:暗証番号非対応
※この項目が存在しない場合、[3:暗証番号非対応]として処理してください。

relateBattery: string

BCL-QR1と連動して利用しているロックのバッテリー残量 ※BCL-QR1と連動するロックがある場合のみ項目が返却されます。

relateType: string

BCL-QR1と連動して利用しているロックのタイプ ※BCL-QR1と連動するロックがある場合のみ項目が返却されます。。

battery: string

バッテリー残量

wifi: string 0, 1

鍵のWIFI接続状況、0:オフライン, 1:オンライン

status: string 0, 1

鍵の開閉状況、0:施錠,1:解錠

reportTime: string

スマートロックのステータスを取得した日時を返却します。

moduleId: string 1000, 1002, 1004, 100501, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014

ロックを特定するコードを返却します。
1000 :BCL-QR1
1002 :BCL-XP1 BLE版
1004 :BCL-XP1
1005 :BCL-XE1
100501:BCL-XE1 BLE
1006 :Center Lock
1007 :OPELO
1008 :OPELO Entrance
1009 :SESAME
1010 :IGLOOHOME
1011 :PiACK II
1012 :LINKEY
1013 :LOCKBOX-L1
1014 :G30 Smart Lock

種類とスマートロックの特性は以下の通りです。

ロック 発行できるカギの種類 注意点
BCL-QR1 暗証番号(4-8桁)、指定可能
解錠用QRコード CreateLockPinのqrcodeの文字列をQRコードにして利用してください。
PiACK II 暗証番号(4-12桁)、指定可能
LINKEY 暗証番号(4-12桁)、指定可能
IGLOOHOME 暗証番号(9桁)、指定不可 暗証番号は自動的に割り当てられます。createLockPinのおよそ5分後以降に、getLockPinStatusで暗証番号を取得してください。
getLockPinStatusのstatusに3X(30,31,32)が返却されるまで、定期的に取得を繰り返してください。
OPELO "暗証番号(5, 10桁)、指定不可
・1日以内の予約はワンデーパスワードを発行します(5桁)
・1日を超える予約は有効期間付きパスワードを発行します(10桁)
OPELO Entrance
BCL-XP1 暗証番号(4-8桁)、指定可能
Center Lock 暗証番号(4-8桁)、指定可能
Example
{
  "pinType": "1",
  "relateBattery": "84%",
  "relateType": "PiACK II",
  "battery": "90%",
  "wifi": "1",
  "status": "1",
  "reportTime": "1691406002",
  "moduleId": "1000"
}

getLockHistoryIn: object

lockId: string

スマートロックを識別するユニークID

position: string

取得レコードの位置を示すポインタID
※初回で「position」を指定せず、履歴を取得したレスポンスの「position」を次回のパラメータとして使う

records: string

取得レコード数、未指定の場合50

Example
{
  "lockId": "000D6F0014A6F0B2",
  "position": "62fbba54a5ec72404000c962",
  "records": "10"
}

getLockHistoryOut: object

position: string

取得レコードの位置を示すポインタID

records: string

取得レコード数

history: lockHistory
lockHistory
Example
{
  "position": "5be1403031bca94e4cf46d57",
  "records": "5",
  "history": [
    {
      "etime": "1633532340",
      "etype": "1",
      "userName": "山田太郎",
      "value": "123456"
    }
  ]
}

getLockPinStatusOut: object

pinCode: string

スマートロックに配信される暗証番号。(6桁)

status: string 10, 11, 12, 20, 21, 22, 30, 31, 32, 90, 91, 92

10:create in queue, 11:change in queue, 12:disable in queue,
20:creating, 21:changing, 22:disabling,
30:created, 31:changed, 32:disabled,
90:create error, 91:change error, 92:disable error

Example
{
  "pinCode": "123456",
  "status": "10"
}

getLockPinListOut: object

position: string

取得レコードが全体で何番目かの位置を示す情報

records: string

取得レコード数

pinList: lockPin
lockPin
Example
{
  "position": "467",
  "records": "5",
  "pinList": [
    {
      "id": "100001",
      "pinId": "c62325518edc528e24492ee8",
      "pinCode": "123456",
      "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B",
      "sTime": "1633305600",
      "eTime": "1633532340"
    }
  ]
}

lockPin: object

id: string

返却された暗証番号情報に割り当てられる連番となります。

pinId: string

暗証番号を識別するユニークID

pinCode: string

スマートロックに配信される暗証番号。(6桁)

qrCode: string

解錠用のQRコードを生成するための文字列です。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

Example
{
  "id": "100001",
  "pinId": "c62325518edc528e24492ee8",
  "pinCode": "123456",
  "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B",
  "sTime": "1633305600",
  "eTime": "1633532340"
}

lockHistory: object

etime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

etype: string 1, 2, 5, 6, 9

鍵の種類です。
1:PIN(暗証番号), 2:Card(NFCカード), 5:OPEN/CLOSE Button(スマートロックのボタン), 6:Knob Button(サムターン), 9:Application(including API)(アプリなどのサービス)

userName: string

解錠したユーザ名

value: string

解錠に利用された暗証番号、etypeが1:PIN(暗証番号)の場合のみ返却されます。

Example
{
  "etime": "1633532340",
  "etype": "1",
  "userName": "山田太郎",
  "value": "123456"
}

unlockIn: object

lockId: string

スマートロックを識別するユニークID

flag: string 0, 1

鍵の開閉操作、0:施錠,1:解錠

Example
{
  "lockId": "000D6F0014A6F0B2",
  "flag": "0"
}

getLockerStatusIn: object

deviceId: string

スマートロッカーを識別するユニークID

boxNum: string

ボックスの番号情報を"00-01"のような書式で指定します。00は副キャビネット番号、01はBOX番号を表します。

Example
{
  "deviceId": "5bceb8e2076d20135c307916",
  "boxNum": "00-01"
}

getAvailableBoxesIn: object

deviceId: string

スマートロッカーを識別するユニークID

boxSize: string

WEB管理画面「BACS」で設定したスマートロッカーのサイズ情報を指定するサイズ番号が返却されます。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

Example
{
  "deviceId": "5bceb8e2076d20135c307916",
  "boxSize": "1",
  "sTime": "1633359600",
  "eTime": "1633532340"
}

getLockersOut: object

deviceId: string

スマートロッカーを識別するユニークID

deviceName: string

WEB管理画面「BACS」で設定したスマートロッカーの名称

Example
{
  "deviceId": "5bceb8e2076d20135c307916",
  "deviceName": "XXXXエリアロッカー"
}

setLockerCardOut: object

accessId: string

setLockerCardでアクセス権を設定した際に返却される、アクセス権ごとのユニークIDです。アクセス権を更新する際に指定します。

Example
{
  "accessId": "5f7e9dba0cc45444a0b3a895"
}

changeLockerPinIn: object

pinId: string

暗証番号を識別するユニークID

pinCode: string

スマートロッカーに配信する暗証番号に任意の数字を指定する場合に使用します。(6桁)

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "pinId": "ABACCD0G1",
  "pinCode": "123456",
  "sTime": "1633359600",
  "eTime": "1633532340",
  "targetName": "XXX用のロッカー"
}

getLockerOrdersIn: object

deviceId: string

スマートロッカーを識別するユニークID

boxNum: string

ボックスの番号情報を"00-01"のような書式で指定します。00は副キャビネット番号、01はBOX番号を表します。
getLockerStatusのレスポンスでboxNumを確認することができます。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01",
  "sTime": "1633359600",
  "eTime": "1633532340"
}

getLockerOrdersOut: object

deviceName: string

WEB管理画面「BACS」で設定したスマートロッカーの名称

boxNum: string

ボックスの番号情報が"00-01"のような書式で返却されます。00は副キャビネット番号、01はBOX番号を表します。
getLockerStatusのレスポンスでboxNumを確認することができます。

boxName: string

WEB管理画面「BACS」で設定したスマートロッカーの名前を指定する値が返却されます。

boxSize: string

WEB管理画面「BACS」で設定したスマートロッカーのサイズ情報を指定するサイズ番号が返却されます。

pinId: string

暗証番号を識別するユニークID

pinCode: string

スマートロッカーに配信する暗証番号に任意の数字を指定する場合に使用します。(6桁)

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

Example
{
  "deviceName": "XXXXエリアロッカー",
  "boxNum": "00-01",
  "boxName": "01",
  "boxSize": "1",
  "pinId": "ABACCD0G1",
  "pinCode": "123456",
  "sTime": "1633359600",
  "eTime": "1633532340"
}

getAvailableBoxesOut: object

boxNum: string

ボックスの番号情報が"00-01"のような書式で返却されます。00は副キャビネット番号、01はBOX番号を表します。
getLockerStatusのレスポンスでboxNumを確認することができます。

boxName: string

WEB管理画面「BACS」で設定したスマートロッカーの名前を指定する値が返却されます。

Example
{
  "boxNum": "00-01",
  "boxName": "01"
}

getLockerStatusOut: object

deviceId: string

スマートロッカーを識別するユニークID

boxNum: string

ボックスの番号情報が"00-01"のような書式で返却されます。00は副キャビネット番号、01はBOX番号を表します。
getLockerStatusのレスポンスでboxNumを確認することができます。

boxName: string

WEB管理画面「BACS」で設定したスマートロッカーの名前を指定する値が返却されます。

status: string 0, 1, 2, 9

0:未使用,1:利用中,2:期限切れ,9:故障

boxSize: string

WEB管理画面「BACS」で設定したスマートロッカーのサイズ情報を指定するサイズ番号が返却されます。

Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01",
  "boxName": "01",
  "status": "0",
  "boxSize": "1"
}

setLockerCardIn: object

deviceId: string

スマートロッカーを識別するユニークID

boxNum: string

ボックスの番号情報が"00-01"のような書式で返却されます。00は副キャビネット番号、01はBOX番号を表します。
getLockerStatusのレスポンスでboxNumを確認することができます。

cardCode: string

Mifereの場合は、UIDを、Felicaの場合はIDmの値を指定します。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01",
  "cardCode": "C3AD47FC",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXX用ロッカーのカード"
}

createLockerPinIn: object

deviceId: string

ロッカーを識別するユニークID

boxNum: string

ボックスの番号情報を"00-01"のような書式で指定します。00は副キャビネット番号、01はBOX番号を表します。

checkin: string 0, 1

ボックスのステータスを指定します。
0:「利用中」の状態でボックスを確保します。ロッカーを解錠した際、利用中のボックスを再度開いた扱いとなります。
1:「利用前」の状態でボックスを確保します。ロッカーを解錠した際、新規利用の扱いとなります。他の利用権限ですでにボックスを利用されている場合、利用開始ができません。

mode: string 0, 1, 2

0:once(一度のみ利用可能なモードです。利用開始後、返却したら再度利用開始することはできません。また、利用中のままeTimeを過ぎても自動的に返却扱いとはなりません。)
1:multi(繰り返し利用可能なモードです。sTime - eTimeの間、返却しても再度利用開始することができます。利用中のままeTimeを過ぎても自動的に返却扱いとはなりません。)
2:always(sTime - eTimeの間、何度も解錠可能なモードです。期間中は確保したボックスを占有し、ゲストから返却することはできません。eTimeを過ぎたら自動的に返却扱いとなります。)

reassign: string 0, 1

Reassign. 0:false(指定したボックスが利用中の場合、空きがないエラーをロッカー端末に表示します。)
1:true(指定したボックスが利用中の場合、別のボックスを自動的にアサインします。)

pinCode: string

スマートロッカーに配信する暗証番号に任意の数字を指定する場合に使用します。(6桁)

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01",
  "checkin": "1",
  "mode": "0",
  "reassign": "0",
  "pinCode": "123456",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXX用のロッカー暗証番号"
}

updateLockerCardIn: object

accessId: string

setLockerCardでアクセス権を設定した際に返却される、アクセス権ごとのユニークIDです。

sTime: string

利用開始日時、1970/01/01からの秒数(UNIX時間)で指定します。

eTime: string

利用終了日時、1970/01/01からの秒数(UNIX時間)で指定します。

targetName: string

カギを利用する利用者名を指定します。WEB管理画面「BACS」の履歴などに表示されます。

Example
{
  "accessId": "string",
  "sTime": "1633305600",
  "eTime": "1633532340",
  "targetName": "XXXロッカーのカード"
}

createLockerPinOut: object

pinId: string

暗証番号を識別するユニークID

pinCode: string

スマートロッカーに配信される暗証番号。(6桁)
※ロック対象がBCL-XP1/BCL-XE1の場合、 pinCodeに数字が表示されます。パスワード開始日は3日以内であればすぐ配信されますが、3日以上であれば、DBに保存され、3日以内になってから配信されます。それ以外のロックの場合、アスタリスクが表示されます。pinIdより、getLockPinStatusを呼び出して、pinCodeを確認できます。パスワード開始日は3日以内であればすぐ発行されますが、3日以上であれば、DBに保存され、3日以内になってから発行されます。暗証番号が発行されるまで、pinCodeにアスタリスクが表示されます。

qrCode: string

解錠用のQRコードを生成するための文字列です。

Example
{
  "pinId": "ABACCD0G1",
  "pinCode": "123456",
  "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
}

createLockPinOut: object

pinId: string

暗証番号を識別するユニークID

pinCode: string

スマートロックに配信される暗証番号

qrCode: string

解錠用のQRコードを生成するための文字列です。

Example
{
  "pinId": "c62325518edc528e24492ee8",
  "pinCode": "123456",
  "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
}

changeLockerPinOut: object

pinId: string

暗証番号を識別するユニークID

pinCode: string

スマートロッカーに配信される暗証番号。(6桁)

qrCode: string

解錠用のQRコードを生成するための文字列です。

Example
{
  "pinId": "ABACCD0G1",
  "pinCode": "123456",
  "qrCode": "MK614190B455C75B4CC53AAB4A0F1E562B"
}

disableLockerPinIn: object

pinId: string

暗証番号を識別するユニークID

Example
{
  "pinId": "ABACCD0G1"
}

unlockLockerIn: object

deviceId: string

スマートロッカーを識別するユニークID

boxNum: string

ボックスの番号情報を"00-01"のような書式で指定します。00は副キャビネット番号、01はBOX番号を表します。

Example
{
  "deviceId": "A5C8A98B35260000",
  "boxNum": "00-01"
}

getBookingOrdersIn: object

unitId: string

WEB管理画面「BACS」で設定したドア(部屋)ごとに割り当てられるユニークIDです。getUnitsで取得可能です。

Example
{
  "unitId": "5de092a8ef16f9512c1f1fff"
}

getBookingOrdersOut: object

orderId: string

予約番号

checkIn: string

チェックイン予定日時、1970/01/01からの秒数(UNIX時間)で指定します。

checkOut: string

チェックアウト予定日時、1970/01/01からの秒数(UNIX時間)で指定します。

pinCode: string

スマートロックに配信される暗証番号。(6桁)

Example
{
  "orderId": "HEN39BYIK",
  "checkIn": "1633305600",
  "checkOut": "1633305600",
  "pinCode": "123456"
}