API一覧
API一覧
このページではFSS WebAPIの各API呼び出し方法を解説します。
情報
API呼び出しの基本事項はWebAPI共通情報を参照してください。
レスポンスデータの項目は、API応答基本形式のdataプロパティの形式を示しています。
情報
データ型は以下の型を用います。
- データ構造で提示している型
- JSONで許可されているデータ型
- 一部、JSONの型ではありませんが、説明のために以下の型も使用します。
- Date
日時情報。JSON上ではISO8601形式で表記されたstring型として取り扱います。
- Buffer
バイナリ(バイト配列)情報。JSON上ではBase64Url形式で表記されたstring型として取り扱います。
- WebAuthn API準拠の型
- ただし、SignalAPIに関連した型名については接頭辞「Signal」をつけて表している部分があります。
getNonce
Nonce署名認証に必要なNonce値を取得します。
このAPIを呼び出す際は共通HTTPヘッダを付与する必要はありません。
リクエストパラメータ
レスポンスデータ
{
"nonce" : "xxxxxxxxxxxxxxxx"
}
| キー |
型 |
内容 |
| nonce
| string |
Nonce認証で用いるNonce値。 |
想定されるエラー
getUser
単一のユーザー情報を取得します。
リクエストパラメータ
{
"userId" : "xxxxxxxxxxxxxxxx",
"withDisabledUser" : false,
"withDisabledCredential" : false
}
| キー |
型 |
内容 |
| userId |
Buffer |
取得するユーザーのID。 |
| withDisabledUser |
boolean |
省略可(省略時はfalse)。無効化されたユーザーを含めるかどうか。 |
| withDisabledCredential |
boolean |
省略可(省略時はfalse)。無効化されたクレデンシャルを含めるかどうか。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credentials" : [
{
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
}
],
"signalCurrentUserDetailsOptions":{
"displayName" : "xxxxxxxx",
"name" : "xxxxxxxx",
...
}
}
想定されるエラー
NOT_FOUND : ユーザー情報が見つからなかった場合。
getUsersByUserName
ユーザー名からユーザー情報を取得します。
RPがユーザー名の重複を許可している場合、複数件の結果が返ってくる可能性があります。
リクエストパラメータ
{
"userName" : "xxxxxxxx",
"withDisabledUser" : false
}
| キー |
型 |
内容 |
| userName |
string |
取得するユーザーのユーザー名。 |
| withDisabledUser |
boolean |
省略可(省略時はfalse)。無効化されたユーザーを含めるかどうか。 |
レスポンスデータ
{
"users" : [
{
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
...
]
}
| キー |
型 |
内容 |
| users
| UserData[] |
ユーザー情報の一覧。 |
想定されるエラー
NOT_FOUND : ユーザー情報が見つからなかった場合。
getAllUsers
全ユーザー情報を取得します。
リクエストパラメータ
{
"withDisabledUser" : false
}
| キー |
型 |
内容 |
| withDisabledUser |
boolean |
省略可(省略時はfalse)。無効化されたユーザーを含めるかどうか。 |
レスポンスデータ
{
"users" : [
{
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
...
]
}
| キー |
型 |
内容 |
| users
| UserData[] |
ユーザー情報の一覧。 |
想定されるエラー
registerUser
ユーザー情報を登録します。
リクエストパラメータ
{
"user" : {
"userId" : "xxxxxxxxxxxxxxxx",
"userName" : "xxxxxxxx",
"displayName" : "xxxxxxxx",
"userAttributes" : {
...
},
"disabled" : false
}
}
| キー |
型 |
内容 |
| user |
UserDataRegisterParameter |
登録するユーザー情報。(
UserData内の一部のプロパティは指定できません) |
| userId | Buffer | ユーザーID。 |
| userName | string | ユーザー名。 |
| displayName | string | null | 表示名。 |
| userAttributes | { [key : string] : any } | null | ユーザー属性。 |
| disabled | boolean | 無効フラグ。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
}
}
| キー |
型 |
内容 |
| user
| UserData |
登録されたユーザー情報。 |
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
ALREADY_EXISTS : ユーザーIDが重複している場合。
DUPLICATED : ユーザー名重複を禁止しているRPでユーザー名が重複している場合。
LICENSE_LIMIT_EXCEEDED : ユーザー数がライセンス制限を超過している場合。
updateUser
ユーザー情報を更新します。
リクエストパラメータ
{
"user" : {
"userId" : "xxxxxxxxxxxxxxxx",
"userName" : "xxxxxxxx",
"displayName" : "xxxxxxxx",
"userAttributes" : {
...
},
"disabled" : false,
"updated" : "2025-08-01T00:00:00.000Z"
},
"options" : {
"withUpdatedCheck" : false,
}
}
| キー |
型 |
内容 |
| user |
UserDataUpdateParameter |
更新するユーザー情報。(
UserData内の一部のプロパティは指定できません) |
| userId | Buffer | ユーザーID。 |
| userName | string | ユーザー名。 |
| displayName | string | null | 表示名。 |
| userAttributes | { [key : string] : any } | null | ユーザー属性。 |
| disabled | boolean | 無効フラグ。 |
| updated | Date | 更新日時。
withUpdatedCheckが有効な場合、登録されている更新日時とこのパラメータが異なる際にエラーを発生させる。 |
| options |
|
更新オプション。省略可。 |
| withUpdatedCheck | boolean |
updated値の一致を検証する場合
true。省略時は
false。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"signalCurrentUserDetailsOptions":{
"displayName" : "xxxxxxxx",
"name" : "xxxxxxxx",
...
}
}
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
NOT_FOUND : ユーザーが存在しない場合。
DUPLICATED : ユーザー名重複を禁止しているRPでユーザー名が重複している場合。
UPDATE_ERROR : withUpdatedCheckがtrueで、updatedが登録されている情報と異なる場合。
deleteUser
ユーザー情報を削除します。
リクエストパラメータ
{
"userId" : "xxxxxxxxxxxxxxxx"
}
| キー |
型 |
内容 |
| userId | Buffer | 削除するユーザーのID。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credentials" : [
{
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
}
],
"signalAllAcceptedCredentialsOptions":{
"allAcceptedCredentialIds" : [],
"rpId" : "xxx.xxx.xxx",
...
}
}
| キー |
型 |
内容 |
| user
| UserData |
削除したユーザー情報。 |
| credentials
| CredentialData[] |
削除したユーザーのクレデンシャル情報の一覧。 |
| signalAllAcceptedCredentialsOptions
| SignalAllAcceptedCredentialsOptions |
PublicKeyCredential:signalAllAcceptedCredentialsの引数に用いるデータ。必ず
allAcceptedCredentialIdsは空配列となります。 |
想定されるエラー
NOT_FOUND : ユーザーが存在しない場合。
registerCredential/start
クレデンシャル(パスキー)の登録を開始します。
FIDO認証器登録を開始する場合、登録時の要件をパラメータに指定して、まずはアプリケーションサーバーからこのstart APIを呼び出します。レスポンスに含まれる
creationOptionsパラメータをクライアントブラウザに渡し、ブラウザ上で一部のBufferパラメータを適切に変換した上で
navigator.credentials.createメソッドに引数として渡す事で、ブラウザ上でパスキーの登録処理が始まります。
navigator.credentials.createが正常動作したら、そのレスポンスをアプリケーションサーバーに送信し、アプリケーションサーバーからfinish API(必要に応じてverify API)を呼び出す事でパスキーの登録が完了します。
// 1. Get challenge from app server
// AppServer's "/register/start" calls FSS WebAPI's "/registerCredential/start".
const { data } = await api.post('/register/start', {
name: name.value,
displayName: displayName.value,
});
const creationOptions = data.creationOptions;
// 2. Convert options and call WebAuthn API
const binaryOptions = convertCreationOptionsToBinary(creationOptions);
const credential = await navigator.credentials.create({ publicKey: binaryOptions }) as PublicKeyCredential;
if (!credential) {
throw new Error('Credential creation failed or was canceled.');
}
// 3. Convert result to JSON and send to server
const jsonableCredential = convertPublicKeyCredentialToJsonable(credential);
const resp = {
createResponse : {
attestationResponse : jsonableCredential,
transports : (credential.response as AuthenticatorAttestationResponse).getTransports(),
}
};
// AppServer's "/register/finish" calls FSS WebAPI's "/registerCredential/finish".
await api.post('/register/finish', resp);
alert('Registration successful! Please log in.');
情報
start APIを呼び出した後、verify/finish APIを呼び出す場合はstart APIのCookieを引き継ぐ必要があります。
ご使用のHTTPリクエストライブラリの仕様を確認の上、適切にCookieを引き継ぐための実装を行ってください。
リクエストパラメータ
{
"creationOptionsBase" : {
"authenticatorSelection" : {
"authenticatorAttachment" : "platform",
"residentKey" : "required",
"requireResidentKey" : true,
"userVerification" : "required"
},
"timeout" : 120000,
"hints" : [ "security-key", "client-device", "hybrid"],
"attestation" : "direct",
"extensions" : {
...
}
},
"user" : {
"userId" : "xxxxxxxxxxxxxxxx",
"userName" : "xxxxxxxx",
"displayName" : "xxxxxxxx",
"userAttributes" : {
...
},
"disabled" : false
},
"options" : {
"createUserIfNotExists" : true,
"updateUserIfExists" : true,
"credentialName" : {
"name" : "Credential (No model name)",
...
},
"credentialAttributes" : {
...
}
}
}
| キー |
型 |
内容 |
| creationOptionsBase |
|
WebAuthnの
PublicKeyCredentialCreationOptionsの基本部分。
※基本的には
PublicKeyCredentialCreationOptionsに準拠した形式になっていますが、以下の点が
PublicKeyCredentialCreationOptionsと異なります。
- ユーザー情報に関連するパラメータが存在しない。
userプロパティに集約されています。
- RPに関連するパラメータが存在しない。
共通ヘッダパラメータの
X-Fss-Rp-Idから自動的に設定されます。
-
challenge、
pubKeyCredParams、
excludeCredentialsが存在しない。 FSS側で適切に設定されます。
|
| authenticatorSelection | AuthenticatorSelectionCriteria | 認証属性に関する要件。省略可。 |
| authenticatorAttachment | AuthenticatorAttachment | 認証器種別の要件。省略可。
platformまたは
cross-platformを指定します。 |
| residentKey | ResidentKeyRequirement | クライアント側で検出可能な資格情報(DiscoverableCredential、以前はResidentKeyと呼ばれていました)に対する要件。省略可。
required、
preferred、または
discouragedを指定します。 |
| requireResidentKey | boolean | クライアント側で検出可能な資格情報が必要か否かを指定します。 ※このプロパティはWebAuthnの下位互換性のために残されています。FSS WebAPIでは、ここで渡される
residentKeyプロパティと
requireResidentKeyプロパティを元に、WebAuthn APIに渡すべき適切な値を返却します。 |
| userVerification | UserVerificationRequirement | ユーザー検証の要件。省略可。
required、
preferred、または
discouragedを指定します。 |
| timeout | number | タイムアウト値(ミリ秒)。省略可。
PublicKeyCredentialCreationOptionsの
timeoutに相当。 |
| hints | PublicKeyCredentialHint[] | 認証器種別ヒント情報。省略可。
PublicKeyCredentialCreationOptionsの
hintsに相当。 |
| attestation | AttestationConveyancePreference | アテステーションに関する要件。省略可。
PublicKeyCredentialCreationOptionsの
attestationに相当。 |
| extensions | AuthenticationExtensionsClientInputsJSON | 拡張に関する要件。省略可。
PublicKeyCredentialCreationOptionsの
extensionsに相当。 ※指定が無い場合、credProps拡張を有効にするオプションが自動で設定されます。 |
| user |
UserDataRegisterParameter |
ユーザー情報。(
UserData内の一部のプロパティは指定できません) |
| userId | Buffer | ユーザーID。 |
| userName | string | ユーザー名。
createUserIfNotExistsと
updateUserIfExistsが共に
falseの場合のみ省略可。 |
| displayName | string | null | 表示名。省略可。 |
| userAttributes | { [key : string] : any } | null | ユーザー属性。省略可。 |
| disabled | boolean | 無効フラグ。省略可。このAPIでは
trueを指定する事は出来ません。 |
| options | | オプション情報 |
| createUserIfNotExists | boolean | ユーザーが存在しない場合にユーザー登録を行う場合は
true。省略可。省略時は
false。 |
| updateUserIfExists | boolean | ユーザーが存在する場合にユーザー情報を更新する場合は
true。省略可。省略時は
false。 |
| credentialName | Fido2CredentialNameParameter | クレデンシャル登録成功時に指定するクレデンシャル名。省略可。省略時はFSS WebAPIが提供するデフォルト名称を設定する。 |
| credentialAttributes | { [key : string] : any } | null | クレデンシャル登録成功時に指定するクレデンシャル属性。省略可。省略時は
null。 |
情報
createUserIfNotExists、
updateUserIfExistsオプションによるユーザーの登録・更新は、
registerCredential/startを呼び出した時点で実行されます。
レスポンスデータ
{
"creationOptions" : {
"attestation" : "direct",
"authenticatorSelection" : {
...
},
...
},
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
}
}
| キー |
型 |
内容 |
| creationOptions
| PublicKeyCredentialCreationOptionsJSON |
navigator.credentials.createメソッド引数の
publicKeyプロパティに渡すためのパラメータ。実際に渡す際には
PublicKeyCredentialCreationOptionsJSON型から
PublicKeyCredentialCreationOptions型に変換する必要がある。 |
| user
| UserData |
クレデンシャル登録対象のユーザー情報。 |
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
NOT_FOUND : createUserIfNotExistsがfalseで、ユーザーが存在しない場合。
DUPLICATED : createUserIfNotExistsまたはupdateUserIfExistsがtrueで、ユーザー名重複を禁止しているRPでユーザー名が重複している場合。
LICENSE_LIMIT_EXCEEDED : createUserIfNotExistsがtrueで、ユーザー数がライセンス制限を超過している場合。
情報
API実行時にエラーが発生した場合、応答のappSubStatus.errorCodeに追加情報が設定される場合があります。詳しくはWebAPI共通情報をご覧ください。
registerCredential/verify
クレデンシャル(パスキー)の登録結果を検証します。
navigator.credentials.createの実行結果を検証し、認証器が正しい応答を返してきているかを確認します。
registerCredential/finishが検証成功時にクレデンシャルを保存するのに対して、このAPIは検証のみを行い、クレデンシャルの保存を行いません。アプリケーションサーバー側で、検証結果から何らかの登録可否判定を行いたい場合にこのAPIを用います。問題が無い場合は改めて
registerCredential/finish APIを呼び出して保存を行います。
情報
start APIを呼び出した後、verify/finish APIを呼び出す場合はstart APIのCookieを引き継ぐ必要があります。
ご使用のHTTPリクエストライブラリの仕様を確認の上、適切にCookieを引き継ぐための実装を行ってください。
リクエストパラメータ
{
"createResponse" : {
"attestationResponse" : {
"authenticatorAttachment" : "platform",
"id" : "xxxxxxxx",
"response" : "xxxxxx........",
...
},
"transports": [
"usb"
]
},
"options" : {
"credentialName" : {
"name" : "Credential (No model name)",
...
}
}
}
| キー |
型 |
内容 |
| createResponse | | クレデンシャル登録情報 |
| attestationResponse | PublicKeyCredentialJSON | string |
navigator.credentials.createメソッドの戻り値をJSON化したもの。
stringとして渡された場合はそれをJSON文字列と見なしてパースして処理を行う。 |
| transports | string[] |
navigator.credentials.createメソッド戻り値のresponseのメンバメソッドである
getTransports()を実行した戻り値。
attestationResponse内に含まれない値のため別パラメータ化してある。省略可。 |
| options | | オプション情報 |
| credentialName | Fido2CredentialNameParameter | クレデンシャル登録成功時に指定するクレデンシャル名。省略可。省略時はFSS WebAPIが提供するデフォルト名称を設定する。start実行時に同名のオプションを設定していた場合、verify/finish時のオプションが優先して使用される。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credential" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
}
}
| キー |
型 |
内容 |
| user
| UserData |
クレデンシャル登録対象のユーザー情報。 |
| credential
| CredentialData |
登録されるクレデンシャル情報。 ※実際には登録されていないため、
registered、
updatedなどの情報が欠落する。 |
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
NOT_FOUND : 登録対象のユーザーが存在しない場合。
ALREADY_EXISTS : 既に同一IDのクレデンシャルが存在する場合。
情報
API実行時にエラーが発生した場合、応答のappSubStatus.errorCodeに追加情報が設定される場合があります。詳しくはWebAPI共通情報をご覧ください。
registerCredential/finish
クレデンシャル(パスキー)の登録結果を検証し、問題なければ保存します。
navigator.credentials.createの実行結果を検証し、認証器が正しい応答を返してきているかを確認します。
registerCredential/verifyが検証のみを行うのに対して、このAPIは検証が成功した場合にクレデンシャルの保存を行います。アプリケーションサーバー側で、検証結果から何らかの登録可否判定を行いたい場合には
registerCredential/verifyを用いて検証結果を確認してから必要に応じてこのAPIを呼び出してください。
情報
start APIを呼び出した後、verify/finish APIを呼び出す場合はstart APIのCookieを引き継ぐ必要があります。
ご使用のHTTPリクエストライブラリの仕様を確認の上、適切にCookieを引き継ぐための実装を行ってください。
リクエストパラメータ
{
"createResponse" : {
"attestationResponse" : {
"authenticatorAttachment" : "platform",
"id" : "xxxxxxxx",
"response" : "xxxxxx........",
...
},
"transports": [
"usb"
]
},
"options" : {
"credentialName" : {
"name" : "Credential (No model name)",
...
}
}
}
| キー |
型 |
内容 |
| createResponse | | クレデンシャル登録情報 |
| attestationResponse | PublicKeyCredentialJSON | string |
navigator.credentials.createメソッドの戻り値をJSON化したもの。
stringとして渡された場合はそれをJSON文字列と見なしてパースして処理を行う。 |
| transports | string[] |
navigator.credentials.createメソッド戻り値のresponseのメンバメソッドである
getTransports()を実行した戻り値。
attestationResponse内に含まれない値のため別パラメータ化してある。省略可。 |
| options | | オプション情報 |
| credentialName | Fido2CredentialNameParameter | クレデンシャル登録成功時に指定するクレデンシャル名。省略可。省略時はFSS WebAPIが提供するデフォルト名称を設定する。start実行時に同名のオプションを設定していた場合、verify/finish時のオプションが優先して使用される。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credential" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
}
}
| キー |
型 |
内容 |
| user
| UserData |
クレデンシャル登録対象のユーザー情報。 |
| credential
| CredentialData |
登録されたクレデンシャル情報。 |
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
NOT_FOUND : 登録対象のユーザーが存在しない場合。
ALREADY_EXISTS : 既に同一IDのクレデンシャルが存在する場合。
情報
API実行時にエラーが発生した場合、応答のappSubStatus.errorCodeに追加情報が設定される場合があります。詳しくはWebAPI共通情報をご覧ください。
authenticate/start
クレデンシャル(パスキー)の認証を開始します。
FIDO認証を開始する場合、認証時の要件をパラメータに指定して、まずはアプリケーションサーバーからこのstart APIを呼び出します。レスポンスに含まれる
requestOptionsパラメータをクライアントブラウザに渡し、ブラウザ上で一部のBufferパラメータを適切に変換した上で
navigator.credentials.getメソッドに引数として渡す事で、ブラウザ上でパスキーの認証処理が始まります。
navigator.credentials.getが正常動作したら、そのレスポンスをアプリケーションサーバーに送信し、アプリケーションサーバーからfinish APIを呼び出す事でパスキー認証が完了します。
// 1. Get challenge from server
// AppServer's "/login/start" calls FSS WebAPI's "/authenticate/start".
const { data } = await api.post('/login/start');
const requestOptions = data.requestOptions;
// 2. Convert options and call WebAuthn API
const binaryOptions = convertRequestOptionsToBinary(requestOptions);
const credential = await navigator.credentials.get({ publicKey: binaryOptions });
if (!credential) {
throw new Error('Credential retrieval failed or was canceled.');
}
// 3. Convert result to JSON and send to server
const jsonableCredential = convertPublicKeyCredentialToJsonable(credential as PublicKeyCredential);
const resp = {
requestResponse: {
attestationResponse : jsonableCredential,
}
};
// AppServer's "/login/finish" calls FSS WebAPI's "/authenticate/finish".
await api.post('/login/finish', resp);
情報
start APIを呼び出した後、finish APIを呼び出す場合はstart APIのCookieを引き継ぐ必要があります。
ご使用のHTTPリクエストライブラリの仕様を確認の上、適切にCookieを引き継ぐための実装を行ってください。
リクエストパラメータ
{
"requestOptionsBase" : {
"timeout" : 120000,
"userVerification" : "required",
"hints" : [ "security-key", "client-device", "hybrid"],
"extensions" : {
...
}
},
"userId" : "xxxxxxxxxxxxxxxx",
"options" : {}
}
| キー |
型 |
内容 |
| requestOptionsBase |
|
WebAuthnの
PublicKeyCredentialRequestOptionsの基本部分。
※基本的には
PublicKeyCredentialRequestOptionsに準拠した形式になっていますが、以下の点が
PublicKeyCredentialRequestOptionsと異なります。
- クレデンシャル情報に関連するパラメータが存在しない。
userIdプロパティから自動的に生成されます。
- RPに関連するパラメータが存在しない。
共通ヘッダパラメータの
X-Fss-Rp-Idから自動的に設定されます。
-
challengeが存在しない。 FSS側で適切に設定されます。
|
| timeout | number | タイムアウト値(ミリ秒)。省略可。
PublicKeyCredentialRequestOptionsの
timeoutに相当。 |
| userVerification | UserVerificationRequirement | ユーザー検証の要件。省略可。
PublicKeyCredentialRequestOptionsの
userVerificationに相当。
required、
preferred、または
discouragedを指定します。 |
| hints | PublicKeyCredentialHint[] | 認証器種別ヒント情報。省略可。
UserVerificationRequirementの
hintsに相当。 |
| extensions | AuthenticationExtensionsClientInputsJSON | 拡張に関する要件。省略可。
UserVerificationRequirementの
extensionsに相当。 |
| userId |
Buffer |
ユーザーID。省略可。省略した場合、DiscoverableCredentialの認証として扱われます。 |
| options | | オプション情報。省略可。現時点で実装はありません。 |
レスポンスデータ
{
"requestOptions" : {
"allowCredentials" : [
...
],
"challenge" : "xxxxxxxxxxxxxxxx",
...
},
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
}
}
| キー |
型 |
内容 |
| requestOptions
| PublicKeyCredentialRequestOptionsJSON |
navigator.credentials.getメソッド引数の
publicKeyプロパティに渡すためのパラメータ。実際に渡す際には
PublicKeyCredentialRequestOptionsJSON型から
PublicKeyCredentialRequestOptions型に変換する必要がある。 |
| user
| UserData |
クレデンシャル登録対象のユーザー情報。userIdを指定していない場合は含まれない。 |
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
NOT_FOUND : ユーザーが存在しない場合。
情報
API実行時にエラーが発生した場合、応答のappSubStatus.errorCodeに追加情報が設定される場合があります。詳しくはWebAPI共通情報をご覧ください。
情報
ユーザーが存在しないエラーが発生した場合、appSubStatusにsignalAllAcceptedCredentialsOptionsプロパティが付与されます。SignalAPIに対応したブラウザ・パスキープロバイダの場合、PublicKeyCredential:signalAllAcceptedCredentialsメソッドにこのプロパティを引数として与えて呼び出す事で、サーバー側に存在しないパスキーをパスキープロバイダ側から除去する事が可能です。
authenticate/finish
クレデンシャル(パスキー)の認証結果を検証します。
navigator.credentials.getの実行結果を検証し、認証器が正しい応答を返してきているかを確認します。
情報
start APIを呼び出した後、finish APIを呼び出す場合はstart APIのCookieを引き継ぐ必要があります。
ご使用のHTTPリクエストライブラリの仕様を確認の上、適切にCookieを引き継ぐための実装を行ってください。
リクエストパラメータ
{
"requestResponse" : {
"attestationResponse" : {
"authenticatorAttachment" : "platform",
"id" : "xxxxxxxx",
"response" : "xxxxxx........",
...
},
},
"options" : {}
}
| キー |
型 |
内容 |
| createResponse | | クレデンシャル登録情報 |
| requestResponse | PublicKeyCredentialJSON | string |
navigator.credentials.getメソッドの戻り値をJSON化したもの。
stringとして渡された場合はそれをJSON文字列と見なしてパースして処理を行う。 |
| options | | オプション情報。省略可。現時点で実装はありません。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credential" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
},
"signalAllAcceptedCredentialsOptions" : {
"rpId" : "xxx.xxx.xxx",
...
},
"signalCurrentUserDetailsOptions" : {
"rpId" : "xxx.xxx.xxx",
...
}
}
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
NOT_FOUND : 登録対象のユーザー・クレデンシャルが存在しない場合。
情報
API実行時にエラーが発生した場合、応答のappSubStatus.errorCodeに追加情報が設定される場合があります。詳しくはWebAPI共通情報をご覧ください。
情報
ユーザー・クレデンシャルが存在しないエラーが発生した場合、appSubStatusにsignalAllAcceptedCredentialsOptionsプロパティまたはsignalUnknownCredentialOptionsプロパティが付与されます。SignalAPIに対応したブラウザ・パスキープロバイダの場合、それぞれのプロパティ名に対応したPublicKeyCredential:signalAllAcceptedCredentialsメソッド・PublicKeyCredential:signalUnknownCredentialメソッドに引数として与えて呼び出す事で、サーバー側に存在しないパスキーをパスキープロバイダ側から除去する事が可能です。
getCredential
単一のクレデンシャル情報を取得します。
リクエストパラメータ
{
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
"withDisabledUser" : false,
"withDisabledCredential" : false
}
| キー |
型 |
内容 |
| userId |
Buffer |
取得するクレデンシャルのユーザーID。 |
| credentialId |
Buffer |
取得するクレデンシャルのクレデンシャルID。 |
| withDisabledUser |
boolean |
省略可(省略時はfalse)。無効化されたユーザーを含めるかどうか。 |
| withDisabledCredential |
boolean |
省略可(省略時はfalse)。無効化されたクレデンシャルを含めるかどうか。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credential" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
}
}
| キー |
型 |
内容 |
| user
| UserData |
ユーザー情報。 |
| credential
| CredentialData |
クレデンシャル情報。 |
想定されるエラー
NOT_FOUND : ユーザー情報・クレデンシャル情報が見つからなかった場合。
updateCredential
クレデンシャル情報を更新します。
リクエストパラメータ
{
"credential" : {
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
"credentialName" : "xxxxxxxx",
"credentialAttributes" : {
...
},
"disabled" : false,
"updated" : "2025-08-01T00:00:00.000Z"
},
"options" : {
"withUpdatedCheck" : false,
}
}
| キー |
型 |
内容 |
| credential |
CredentialDataUpdateParameter |
更新するクレデンシャル情報。(
CredentialData内の大半のプロパティは指定できません) |
| userId | Buffer | ユーザーID。 |
| credentialId | Buffer | クレデンシャルID。 |
| credentialName | string | クレデンシャル名。 |
| credentialAttributes | { [key : string] : any } | null | クレデンシャル属性。 |
| disabled | boolean | 無効フラグ。 |
| updated | Date | 更新日時。
withUpdatedCheckが有効な場合、登録されている更新日時とこのパラメータが異なる際にエラーを発生させる。 |
| options |
|
更新オプション。省略可。 |
| withUpdatedCheck | boolean |
updated値の一致を検証する場合
true。省略時は
false。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credential" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
}
}
| キー |
型 |
内容 |
| user
| UserData |
ユーザー情報。 |
| credential
| CredentialData |
更新されたクレデンシャル情報。 |
想定されるエラー
PARAMETER_ERROR : 各入力値の形式が正しくない場合。
NOT_FOUND : ユーザー・クレデンシャルが存在しない場合。
UPDATE_ERROR : withUpdatedCheckがtrueで、updatedが登録されている情報と異なる場合。
deleteCredential
クレデンシャル情報を削除します。
リクエストパラメータ
{
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx"
}
| キー |
型 |
内容 |
| userId | Buffer | 削除するクレデンシャルのユーザーID。 |
| credentialId | Buffer | 削除するクレデンシャルのクレデンシャルID。 |
レスポンスデータ
{
"user" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
...
},
"credential" : {
"rpId" : "xxx.xxx.xxx",
"userId" : "xxxxxxxxxxxxxxxx",
"credentialId" : "xxxxxxxxxxxxxxxx",
...
},
"signalUnknownCredentialOptions":{
"rpId" : "xxx.xxx.xxx",
"credentialId" : "xxxxxxxxxxxxxxxx"
}
}
想定されるエラー
NOT_FOUND : ユーザー・クレデンシャルが存在しない場合。