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))$

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