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
: ユーザー・クレデンシャルが存在しない場合。