Xsolla-logo

電話番号による認証を開始する

post/oauth2/login/phone/request

ユーザー電話番号による認証を開始し、ユーザー電話番号に確認コードを送信します。コードの有効期限は3分です。

このコールは、電話番号による認証を完了するコールでのみ使用されます。

このコールを使用するワークフロー:

  1. アプリケーションは認証フォームを開き、ユーザーは電話番号を入力することができます。
  2. ユーザーが自分の電話番号を入力します。
  3. アプリケーションは、このリクエストをエクソラログインサーバーに送信します: a. パラメータsend_linktrueの場合、このリクエストの後に確認コートを取得するリクエストを送信して、確認コードとリンクを含むSMSを作成する必要があります。 b. パラメータsend_linkfalseまたは渡されない場合、SMSには確認コードのみが含まれます。
  4. エクソラログインサーバーはSMSを送信し、確認コードのIDを返します。
  5. アプリケーションには、ユーザーが確認コードを入力するためのフィールドが表示されます。
  6. ユーザーは、受け取った確認コードを入力するか、リンクをたどります。
  7. アプリケーションは電話番号による認証を完了するリクエストを受け取ったIDでエクソラログインサーバーに送信します。
  8. ユーザーは認可されたとみなされます。
Request
query Parameters
response_type
required
string

OAuth 2.0プロトコルが有効なプロジェクトで使用されるグラントタイプ応答に含まれるユーザー認証コードを取得するためにcodeである必要があります。受け取ったコードはJWTを生成するのコールによってJWTに交換され、ユーザー認証が完了する必要があります。

client_id
required
integer

アプリケーションID。OAuth 2.0クライアントを作成した後で取得します。

state
required
string

追加のユーザー認証に使用される値。CSRF攻撃を軽減するためによく使用されます。この値は応答で返されます。8文字以上の文字列である必要があります。

scope
string

スコープとは、OAuth 2.0において、アプリケーションによるユーザーアカウントへのアクセスを制限するためのメカニズムです。

以下の値を指定できます:

  • offlineは、JWTを生成するコールからrefresh_tokenを使用して、期限切れになったときにJWTをリフレッシュします。
  • playfab PlayFabにユーザーデータを保存する場合、JWTのsession_ticketクレームにSessionTicketを書き込みます。

上記以外のscopeパラメータの値を独自に処理する場合、このコールを使用する際に設定することができます。エクソラログインサーバーはこれらの値を処理せず、受信したJWTの中で返します。

redirect_uri
string

URL to redirect the user to after account confirmation, successful authentication, or password reset confirmation. To set up this parameter, contact your Account Manager.

Notice. The parameter is required if you have more than one redirect URI in your project settings.
Request Body schema: application/json
phone_number
required
string^\+(\d){5,25}$

ユーザーの電話番号。

link_url
string <uri>

ユーザーをステータス認証ページにリダイレクトするためのURL。パラメータsend_linktrueの場合は、必須です。

send_link
boolean

SMSで確認コードと同時にリンクを送信するかどうかを示します。

ログインには確認コードの代わりにリンクを使用できます。

パラメータの値がtrueの場合、リンクがSMSで送信されます。

Responses
200

OK

400

無効なリクエスト

404

見つかりません

422

処理不可能なエンティティー

429

リクエストの回数が多すぎます

Request samples
application/json
{}
Response samples
application/json
{
  • "operation_id": "string"
}