# WebAuthnCreationOptions

> PublicKeyCredentialCreationOptionsJSON from WebAuthn Level 3.

`PublicKeyCredentialCreationOptionsJSON` from WebAuthn Level 3. Pass to `navigator.credentials.create({publicKey: PublicKeyCredential.parseCreationOptionsFromJSON(...)})`.

## Fields

| Field | Type | Description |
| --- | --- | --- |
| `challenge` * | string | base64url |
| `rp` * | object |  |
| `user` * | object |  |
| `pubKeyCredParams` * | array of object |  |
| `timeout` | integer |  |
| `authenticatorSelection` | object |  |
| `attestation` | string |  |
| `excludeCredentials` | array of object |  |

\* always present

## Example

```json
{
  "challenge": "string",
  "rp": {
    "id": "guv.dev",
    "name": "Guv"
  },
  "user": {
    "id": "string",
    "name": "string",
    "displayName": "string"
  },
  "pubKeyCredParams": [
    {}
  ],
  "timeout": 1,
  "authenticatorSelection": {},
  "attestation": "string",
  "excludeCredentials": [
    {}
  ]
}
```
