Authorization - masaru-takano/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で作成したアクセストークンが必要になる。<br>また、アクセストークンには有効期限が存在するので、有効期限が切れた場合には再度アクセストークンを作成し直す必要がある。

リクエスト

物理名 データ型 必須 説明
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システムの名前
hmac string No レスポンスに対する署名
アプリケーション側から事前にHMACキーを共有されていた場合は必須。
expire float Yes 失効日時
スコープ毎のアクセストークンの失効時刻のうち、直近の時刻(UNIX時間)。
scopes array(object) Yes スコープ配列
スコープの有効期限一覧を格納する配列。
scope string Yes スコープ
スコープのプロファイル名。
expirePeriod float Yes スコープの有効期限
アクセストークンの有効期限。スコープ毎に設定されている。
アクセストークンが作成されてから使用できる間の時間(秒)を返す。
この時間を過ぎるとアクセストークンが使用できなくなる。
accessToken string Yes アクセストークン
各プロファイルにアクセスする場合に必要になる。
version string Yes DeviceConnectシステムのバージョン名

レスポンスサンプル

{
  "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を行うためのクライアントの作成要求を行う。

同じオリジンから送信された場合には、以前のクライアントを削除して新たにクライアントを作成する。<br>それに伴い、クライアントに紐づいていたアクセストークンもすべて破棄される。

リクエスト

物理名 データ型 必須 説明

レスポンス

物理名 データ型 必須 説明
result integer Yes 処理結果
0: 正常応答
0以外: 異常応答
product string Yes DeviceConnectシステムの名前
clientId string Yes クライアントID
クライアントを識別するためのID。
version string Yes DeviceConnectシステムのバージョン名
hmac string No レスポンスに対する署名
アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
  "result" : 0,
  "product" : "Example System",
  "version" : "1.0.0",
  "clientId" : "d94da8f1-3826-4ed5-a729-2d9499e842c9"
}
⚠️ **GitHub.com Fallback** ⚠️