Authorization - TakayukiHoshi1984/DeviceConnect-Spec GitHub Wiki
Local OAuthのクライアントを操作する機能を提供するAPI。
| API | 概要 |
|---|---|
| GET /gotapi/authorization/accessToken | DeviceConnectManagerにLocal OAuthを行うためのアクセストークンの作成要求を行う。 |
| GET /gotapi/authorization/grant | Device Connect ManagerにLocal OAuthを行うためのクライアントの作成要求を行う。 |
one-shot
DeviceConnectManagerにLocal OAuthを行うためのアクセストークンの作成要求を行う。
各プロファイルにアクセスするためには、このAPIで作成したアクセストークンが必要になる。
また、アクセストークンには有効期限が存在するので、 有効期限が切れた場合には再度アクセストークンを作成し直す必要がある。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| clientId | string | Yes | クライアントID。 Authorization Create Client APIで取得したclientIdを使用する。 |
| applicationName | string | Yes | アプリケーション名。承認確認画面に表示するアプリケーション名を指定する。 例:「Twitterイベントプラグイン」と指定した場合は、 「TwitterイベントプラグインがdConnectにアクセスする許可をしますか?」と 確認メッセージが表示される。 |
| scope | array(string) | Yes | スコープ。使用するプロファイルの一覧をカンマ区切りで定義する。 例)file,notification,vibration' |
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |
|---|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0: 正常応答 0以外: 異常応答 |
|
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 | |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 | |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 | |
| アクセストークン | accessToken | string | Yes | 各プロファイルにアクセスする場合に必要になる。 | |
| 失効日時 | expire | float | Yes | スコープ毎のアクセストークンの失効時刻のうち、直近の時刻(UNIX時間)。 | |
| スコープ配列 | scopes | array(object) | Yes | スコープの有効期限一覧を格納する配列。 | |
| スコープ | scope | string | Yes | スコープのプロファイル名。 | |
| スコープの有効期限 | expirePeriod | float | Yes | アクセストークンの有効期限。スコープ毎に設定されている。 アクセストークンが作成されてから使用できる間の時間(秒)を返す。 この時間を過ぎるとアクセストークンが使用できなくなる。 |
|
{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0",
"accessToken" : "0a93ac0aade4e046ed63eb24d1172f5f35c88ca60daa901547c28d5827cb418a5de1d7c5f9e62405",
"scopes" : [ {
"scope" : "file",
"expirePeriod" : 15552000
}, {
"scope" : "creditcard",
"expirePeriod" : 0
} ],
"expire" : 1431856940275
}
one-shot
Device Connect ManagerにLocal OAuthを行うためのクライアントの作成要求を行う。
同じオリジンから送信された場合には、以前のクライアントを削除して新たにクライアントを作成する。
それに伴い、クライアントに紐づいていたアクセストークンもすべて破棄される。
| 物理名 | データ型 | 必須 | 説明 |
|---|
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0: 正常応答 0以外: 異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
| クライアントID | clientId | string | Yes | クライアントを識別するためのID。 |
{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0",
"clientId" : "d94da8f1-3826-4ed5-a729-2d9499e842c9"
}