POST /webauthn-registration/api/v1/enroll

Enrolls a preregistered WebAuthn factor. This WebAuthn factor has a longer challenge timeout period to accommodate the fulfillment request process. As part of this operation, Okta generates elliptic curve (EC) key-pairs used to encrypt the factor PIN and enrollment data sent by the fulfillment provider.

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
userId String No

ID of an existing Okta user

yubicoTransportKeyJWK Object No

Elliptic curve key in JSON Web Key (JWK) format. It's used during enrollment to encrypt fulfillment requests to Yubico, or during activation to verify Yubico's JWS (JSON Web Signature) objects in fulfillment responses. The currently agreed protocol uses P-384.

yubicoTransportKeyJWK.kty String Yes

The type of public key

Valid values:

  • "EC"
yubicoTransportKeyJWK.kid String Yes

The unique identifier of the key

yubicoTransportKeyJWK.crv String Yes

The elliptic curve protocol

Valid values:

  • "P-384"
yubicoTransportKeyJWK.use String Yes

The intended use for the key. This value is either enc (encryption) during enrollment, when Okta uses the ECKeyJWK to encrypt requests to Yubico. Or it's sig (signature) during activation, when Okta uses the ECKeyJWK to verify the responses from Yubico.

Valid values:

  • "enc"
  • "sig"
yubicoTransportKeyJWK.x String Yes

The public x coordinate for the elliptic curve point

yubicoTransportKeyJWK.y String Yes

The public y coordinate for the elliptic curve point

enrollmentRpIds[] Array No

List of relying party hostnames to register on the YubiKey

fulfillmentProvider String No

Name of the fulfillment provider for the WebAuthn preregistration factor

Valid values:

  • "yubico"

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.