Skip to main content
POST
Create Delegated Signer

Headers

X-API-KEY
string
required

API key required for authentication

Path Parameters

walletLocator
string
required

A wallet locator can be of the format:

  • <walletAddress>
  • email:<email>:<chainType>[:<walletType>][:alias:<alias>] (walletType defaults to 'smart')
  • userId:<userId>:<chainType>[:<walletType>][:alias:<alias>] (white label user example)
  • phoneNumber:<phoneNumber>:<chainType>[:<walletType>][:alias:<alias>]
  • twitter:<handle>:<chainType>[:<walletType>][:alias:<alias>]
  • x:<handle>:<chainType>[:<walletType>][:alias:<alias>]
  • me:<chainType>[:<walletType>][:alias:<alias>] (Use when calling from the client side with a client API key)
  • chainType[:<walletType>]:alias:<alias>

Body

application/json

Parameters for creating a EVM delegated signer

signer
required

Configuration for a WebAuthn/Passkey signer that uses public key credentials for authentication

Example:
chain
any
required

The chain where the signer will be registered

scopes
Transfer · object[]

Optional array of scopes to restrict the signer's capabilities

Example:
expiresAt
string<date-time>

The expiry date of the signer in ISO 8601 format

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
deployImmediately
boolean

If true, returns a transaction to register the signer in the wallet. If false (default), it generates a signature and the signer will be registered on the following transaction.

Response

The delegated signer has been successfully created.

Complete delegated signer response including the signer and authorization transaction

type
enum<string>
required

Identifier for the Passkey signer type

Available options:
passkey
id
string
required

Credential ID from the WebAuthn registration response

name
string
required

Human-readable name for the passkey

publicKey
object
required

The public key coordinates from the WebAuthn credential

validatorContractVersion
string
required

ERC-7579 webAuthn validator contract version

locator
string
required

Unique identifier for locating this passkey signer

scopes
Transfer · object[]

Optional array of scopes restricting the signer's capabilities

Example:
expiresAt

The expiry date of the signer in ISO 8601 format

transaction
object

The transaction for the signer