REST API OAuth API
最終更新日 2015-9-1

アクセストークン取得 (Authorization Grant)

Authorization Grant(認可コードGrant)を用い認証・認可を実施します。

基本仕様

Authorization Grantではクライアントからアクセストークンを取得するために、下記2ステップを必要とします。

1.アクセストークンを取得するために、認可コードを取得する

2.認可コードを用いアクセストークンを取得する

authorizationcodegrant_oauth_api

1.認可コードを取得する

メソッド

GET

エンドポイント

https://api-oauth.appiaries.com/v1/auth

リクエスト

クエリ

クエリ名 備考
response_type “code”固定
client_id OAuthクライアントID
scope アピアリーズユーザの取得する属性のアクセス範囲。スコープはこちら
redirect_uri コールバックエンドポイント 《認可のリクエストでredirect_uri値を指定した》登録していないエンドポイントは指定できない
state コールバックエンドポイントに引継ぐデータ 任意
display 認証/認可画面の表示先となるデバイス 任意
“page”:PC向け画面を表示, “touch”:スマホ向け画面を表示

レスポンス

ヘッダ

Content-Type application/json

HTTPステータス

ステータスコード 内容
400 response_type値不適切
500 予期せぬエラー発生

コールバック

クエリ

クエリ名 備考
code 認可コード
state リクエストのstate値 リクエストでstate値を指定した場合
error エラーコード
error_description エラー詳細

エラーコード一覧

エラーコード 内容
invalid_scope scope値不適切
access_denied アクセス不認可

2.アクセストークンを取得する

メソッド

POST

エンドポイント

https://api-oauth.appiaries.com/v1/token

リクエスト

ヘッダ

Content-Type application/x-www-form-urlencoded
Authorization Basic認証スキーム。値は”OAuthクライアントID:OAuthクライアントSecret”をBASE64エンコードしたもの

コンテント

パラメータ名 備考
grant_type authorization_code。
code 認可コード
redirect_uri リダイレクトエンドポイント 認可エンドポイントのリクエストでredirect_uri値を指定した場合。
client_id クライアントID Authorizationヘッダ未指定の場合。
client_secret クライアントSecret Authorizationヘッダ未指定、かつ、ConfidentialタイプのOAuthクライアント。

レスポンス

ヘッダ

WWW-Authentication 《Authorizationヘッダ値不適切》 Basic realm=”token end point”
Content-Type application/json
Cache-Control no-store
Pragma no-cache

HTTPステータス

ステータスコード 内容
201 成功
400 grant_type値不適切。リダイレクトエンドポイント不適切。
401 Authorizationヘッダ値不適切。OAuthクライアント認証失敗。
403 認可コード有効期限切れ
500 予期せぬエラー発生

コンテント

フィールド名 内容
token_type トークンタイプ。”Bearer”固定。
access_token ユーザトークン
user_id ユーザID
store_token ストアトークン
error エラーコード
error_description エラー詳細

エラーコード一覧

エラーコード 内容
unsupported_grant_type grant_type値不適切
invalid_grant 認可コード有効期限切れ。リダイレクトエンドポイント不適切。
invalid_client Authorizationヘッダ値不適切。OAuthクライアント認証失敗。
server_error 予期せぬエラー発生