MFAService
Begin Passkey Enrollment
Create passkey registration options for a new passkey.
Method
POST
Path
/v1/auth/mfa/passkeys:begin-enrollment
Visibility
Authentication
Session token
MFA Requirement
POST
/v1/auth/mfa/passkeys:begin-enrollment Request
Testnet
curl --request POST \ \
--url 'https://api.testnet.polyester.com/v1/auth/mfa/passkeys:begin-enrollment' \
--header 'Accept: */*' \
--header 'X-API-KEY-ID: YOUR_API_KEY_ID' \
--header 'X-API-TIMESTAMP: YOUR_API_TIMESTAMP' \
--header 'X-API-SIGNATURE: YOUR_API_SIGNATURE' \
--header 'Content-Type: application/json' \
--data '{
"label": "MacBook Touch ID"
}'Responses
{
"enrollmentId": "mfa_22222222222222222222222222222222",
"expiresAt": "2025-01-01T00:00:00Z",
"publicKey": {
"challenge": "Y2hhbGxlbmdlLWZvci1kb2Nz",
"rpId": "devnet.polyester.com"
}
} label string
Optional human-friendly label for the passkey. Maximum 128 characters.
enrollmentId string
Enrollment challenge identifier. Format: "mfa_" followed by 32 lowercase hex characters.
Example
mfa_22222222222222222222222222222222 1 field
2 fields
key string
TODO: description pending
6 fields
nullValue enum
Represents a null value.
NULL_VALUE
numberValue number
Represents a double value.
stringValue string
Represents a string value.
boolValue boolean
Represents a boolean value.
structValue object
Represents a structured value.
1 field
values object[]
Repeated field of dynamically typed values.
expiresAt string (date-time)
Time when this enrollment challenge expires.
Example
2025-01-01T00:00:00Z| Key | Status | Error | When |
|---|---|---|---|
| unauthenticated | 401 | Unauthenticated | Authentication required. |
| permission-denied | 403 | Permission Denied | Permission denied. |
| invalid-argument | 400 | Invalid Argument | Invalid argument. |
| not-found | 404 | Not Found | Not found. |
| unavailable | 503 | Unavailable | Service unavailable. |