Sessionの作成

POST /session

概要説明

Sessionを作成してTokenを発行、またはRefresh Tokenを使用してTokenを更新します。

APIコマンドを発行する場合は、本コマンドにて取得したTokenをAuthorization Headerに指定してください。

注意
  • 作成したTokenの有効な時間は30分です。APIコマンドを発行しても延長されません。

  • 作成したRefresh Tokenの有効な時間は10時間です。

  • user_name、password、またはrefresh_tokenが間違っている、またはパスワード期限切れの場合にHTTPステータスコード 401が応答されます。

リクエスト例

  • User="USERNAME"、Password="PASSWORD"の場合のSession作成例です。

    $ curl -i -H "Content-Type:application/json" -X POST "https://192.168.1.1:5665/api/v1/session"
    -d
    '{"user_name":"USERNAME","password":"PASSWORD"}'
  • Session作成時にRefresh Tokenを発行した場合、Refresh Tokenを使用してTokenを発行できます。Session作成時にRefresh Tokenを発行する場合の例です。

    $ curl -i -H "Content-Type:application/json" -X POST "https://192.168.1.1:5665/api/v1/session" -d
    '{
      "grant_type":"password",
      "user_name":"USERNAME",
      "password":"PASSWORD"
      "is_refresh_token_required": true
    }'
    • Refresh Tokenを使用してTokenを再発行する場合の例です。

      $ curl -i -H "Content-Type:application/json" -X POST "https://192.168.1.1:5665/api/v1/session" -d 
      '{
        "grant_type":"refresh_token",
        "refresh_token": "q12e8uirwEoHuhkP01Bsoq.."
      }'

レスポンス例

{
  "session_id":100001,
  "token":"EPReqpfudadf38193hfa39..",
  "lifetime":1800,
  "refresh_token":"3fhaafdAUerUAWErU3i22A.."
}

Tokenを取得できたら以降はAPIコマンドの Authorization HeaderにTokenを設定してコマンドを発行してください。

以下は、curlコマンドを使用して上記の例で取得したTokenを使用して、Session情報取得を行う例です。

$ curl -i -H "Authorization: Bearer g17e4umvwYoHuhkG7yCSee.." -X GET "https://192.168.1.1:5665/api/v1/session/100001"

Parameters

REQUEST BODY

grant_type

string

Default: password

許可種別。

Sessionを新規に作成してTokenを発行するか、Refresh Tokenを使用してTokenを更新するかを選択します。
項目 説明
password Sessionを新規に作成し、Tokenを発行します。user_nameおよびpasswordの指定が必須です。
refresh_token Refresh Tokenを使用してTokenを更新します。refresh_tokenの指定が必須です。
user_name

string

User Name。

grant_typeでpasswordを指定する場合、またはgrant_typeを省略した場合は、指定が必須です。

入力条件:

  • grant_typeでrefresh_tokenを指定する場合は、本項目は指定できません。

password

string

Password。

grant_typeでpasswordを指定する場合、またはgrant_typeを省略した場合は、指定が必須です。

入力条件:

  • grant_typeでrefresh_tokenを指定する場合は、本項目は指定できません。

is_refresh_token_required

boolean

Session作成時にRefresh Tokenを発行するかどうか。

trueを指定した場合、User NameおよびPasswordの指定なしでTokenを再発行するためのRefresh Tokenを発行します。

入力条件:

  • grant_typeでrefresh_tokenを指定する場合は、本項目は指定できません。

注意

Refresh Tokenを発行した場合、Refresh Tokenが期限切れになるまでログイン状態が維持されます。使用後は速やかにSessionを削除してください。

refresh_token

string

Refresh Token。

grant_typeでrefresh_tokenを指定する場合は指定が必須です。

入力条件:

  • grant_typeでpasswordを指定する場合、またはgrant_typeを省略した場合は、本項目は指定できません。

注意
  • Tokenを再発行した場合、Refresh Tokenも更新されます。再度Tokenを発行する場合は、新しいRefresh Tokenを使用してください。

  • Refresh TokenはTokenの更新と同時に更新されますが、有効期限はリセットされません。Sessionを作成してから10時間経過後は、使用の有無にかかわらずRefresh Tokenは失効するので、User NameおよびPasswordを使用して新規にSessionを作成してください。

Responses

正常に作成できた場合、HTTPステータスコードが200 (OK)となりレスポンスボディを応答します。

RESPONSE BODY

session_id

integer

Session ID。

token

string

Token。ユーザーを特定するための認証情報です。

APIコマンドを発行する場合は、Authorization HeaderにこのTokenを指定してください。

lifetime

integer

Tokenが有効な残り時間。

単位は秒です。

Refresh Tokenを発行していない場合、Sessionが自動で削除されるまでの残り時間と一致します。

refresh_token

string

Refresh Token。

User NameおよびPasswordの指定なしで新しいTokenを再発行するための認証情報です。

grant_typeでrefresh_tokenを指定した場合、またはis_refresh_tokenでtrueを指定した場合に応答します。