OTP API¶
OTP APIは、HTTPエンドポイントを使用して、SMS経由でワンタイムパスワード(OTP)の送信と確認を行うことができます。
ご利用のウェブサイトを登録するAPI¶
新しいURLを登録するには、次のエンドポイントに``POST``リクエストを送信してください。
https://api.xoxzo.com/otp/register-website/
次のパラメータを使用してください。
名前
説明
必須
データ型
例
website
ご利用になるURL
必須
UTF-8
テンプレートID
オプションのOTPテンプレートID
任意
整数
3
テンプレートIDは現在利用可能なテンプレートのリストです。現在、ご利用可能なテンプレートは1点です:
テンプレートID
値
3
あなたの確認コードは123456です。
※123456は送信されるOTPの例です。
レスポンスはJSON構造で返され、HTTP 201 CREATED
ステータスコードが付与されます:
HTTP/1.1 201 CREATED
Content-Type: application/json
{
"message": "Website registered successfully."
}
もしウェブサイトが既に登録されている場合、以下のレスポンスが返され、HTTP 400 BAD REQUEST
ステータスコードが付与されます:
HTTP/1.1 400 BAD REQUEST
Content-Type: application/json
{
"website": [
"website info with this website already exists."
]
}
注釈
``template_id``は省略すると3がデフォルト値として使用されます。
API認証情報はドメインに関連付けられている必要があります。
OTPをリクエストするAPI¶
電話番号にOTPコードを送信するには、次のエンドポイントに``POST``リクエストを送信してください:
https://api.xoxzo.com/otp/request/
次のパラメータを使用してください。
名前
説明
必須
データ型
例
website
登録されたドメイン
必須
UTF-8
phone_number
E.164フォーマットの受信者番号
必須
E.164
+818012345678
レスポンスはJSON構造で返され、HTTP 201 CREATED
ステータスコードが付与されます:
HTTP/1.1 201 CREATED
Content-Type: application/json
{
"msgid": "1234567890"
}
OTPを検証するAPI¶
ユーザーが送信したOTPを検証するには、次のエンドポイントに``POST``リクエストを送信してください。
https://api.xoxzo.com/otp/verify/
次のパラメータを使用してください。
名前
説明
必須
データ型
例
website
登録されたドメイン
必須
UTF-8
phone_number
受信者番号
必須
E.164
+818012345678
otp
ユーザーが送信したOTPコード
必須
数値
654321
レスポンスはJSON構造で返され、HTTP 200 OK
ステータスコードが付与されます。
HTTP/1.1 200 OK
Content-Type: application/json
{
"is_otp_valid": true,
"user_identifier": "user@xoxzo.com",
"phone_number": "+818012345678",
"msgid": "1234567890",
"website": "https://xoxzo.com"
}
以下は検証失敗の例です。
HTTP/1.1 200 OK
Content-Type: application/json
{
"is_otp_valid": false,
"message": "OTP is invalid.",
"user_identifier": "engineering@xoxzo.com",
"phone_number": "+818073662952",
"website": "https://xoxzo.com"
}
注釈
OTPの検証には、電話番号とドメインが正確に一致することが必要です。
OTPは制限時間内で有効であり、番号/ドメインごとにアクティブなOTP1つのみが許可されます。