-
Notifications
You must be signed in to change notification settings - Fork 8
Authorization Profile
Ryo Mizuno edited this page Nov 2, 2016
·
3 revisions
| API | 機能概要 |
|---|---|
| Authorization Create Client API | クライアントを作成する。 |
| Authorization Create Access Token API | アクセストークンを作成する。 |
Local OAuthのクライアントを操作する機能を提供するAPI。
OMA Generic Open Terminal API ver 1.0
| インターフェース名称 | Version | 種別 |
|---|---|---|
| Authorization Create Client API | 2.0.0 | 同期I/F |
Device Connect ManagerにLocal OAuthを行うためのクライアントの作成要求を行う。
同じオリジンから送信された場合には、以前のクライアントを削除して新たにクライアントを作成する。
それに伴い、クライアントに紐づいていたアクセストークンもすべて破棄される。
| HTTPメソッド | URI |
|---|---|
| GET | /gotapi/authorization/grant |
| Content-Type | 形式 | HTTPステータス |
|---|---|---|
| application/json | JSON | 200 |
| 論理名 | 物理名 | データ型 | 省略 | 設定値 |
|---|---|---|---|---|
| 処理結果 | result | number | - | 0:正常応答 0以外:異常応答 |
| クライアントID | clientId | string | - | クライアントを識別するためのID. |
GET http://localhost:4035/gotapi/authorization/grant
{
"product":"Device Connect Manager",
"version":"x.x",
"result": 0,
"clientId": "d94da8f1-3826-4ed5-a729-2d9499e842c9"
}
| インターフェース名称 | Version | 種別 |
|---|---|---|
| Authorization Create Access Token API | 2.0.0 | 同期I/F |
DeviceConnectManagerにLocal OAuthを行うためのアクセストークンの作成要求を行う。
各プロファイルにアクセスするためには、このAPIで作成したアクセストークンが必要になる。
また、アクセストークンには有効期限が存在するので、有効期限が切れた場合には再度アクセストークンを作成し直す必要がある。
| HTTPメソッド | URI |
|---|---|
| GET | /gotapi/authorization/accessToken |
| 論理名 | 物理名 | データ型 | 省略 | 設定値 |
|---|---|---|---|---|
| クライアントID | clientId | string | - | Authorization Create Client APIで取得したclientIdを使用する。 |
| スコープ | scope | string | - | 使用するプロファイルの一覧をカンマ区切りで定義する。例)"file,notification,vibration" |
| アプリケーション名 | applicationName | string | - | 承認確認画面に表示するアプリケーション名を指定する。 例:「Twitterイベントプラグイン」と指定した場合は、「TwitterイベントプラグインがdConnectにアクセスする許可をしますか?」と確認メッセージが表示される。 |
| Content-Type | 形式 | HTTPステータス |
|---|---|---|
| application/json | JSON | 200 |
| 論理名 | 物理名 | データ型 | 備考 | |
| 処理結果 | result | number | 0: 正常応答 0以外: 異常応答 |
|
| アクセストークン | accessToken | string | アクセストークン。 各プロファイルにアクセスする場合に必要になる。 |
|
| スコープ配列 | scopes | array | スコープの有効期限一覧を格納する配列 | |
| スコープ | scope | string | スコープのプロファイル名。 | |
| スコープの有効期限 | expirePeriod | number | アクセストークンの有効期限。スコープ毎に設定されている。 アクセストークンが作成されてから使用できる間の時間(秒)を返す。 この時間を過ぎるとアクセストークンが使用できなくなる。 | |
| 失効日時 | expire | number | スコープ毎のアクセストークンの失効時刻のうち、直近の時刻(UNIX時間)。 | |
GET http://localhost:4035/gotapi/authorization/accessToken?clientId=d94da8f1-3826-4ed5-a729-2d9499e842c9&scope=file,notification,vibration&applicationName=Twitterイベントプラグイン
{
"product":"Device Connect Manager",
"version":"x.x",
"result": 0,
"accessToken": "0a93ac0aade4e046ed63eb24d1172f5f35c88ca60daa901547c28d5827cb418a5de1d7c5f9e62405",
"scopes":[
{
"scope": "file",
"expirePeriod": 15552000
},
{
"scope": "creditcard",
"expirePeriod": 0
}
],
"expire": xxxxxxxxxx
}