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

chain
enum<string>
required

The chain where the signer will be registered

Available options:
abstract,
abstract-testnet,
apechain,
arbitrum,
arbitrum-sepolia,
arbitrumnova,
arc-testnet,
avalanche,
avalanche-fuji,
base,
base-sepolia,
bsc,
curtis,
ethereum,
ethereum-sepolia,
flow,
flow-testnet,
mantle,
mantle-sepolia,
mode,
mode-sepolia,
optimism,
optimism-sepolia,
plume,
plume-testnet,
polygon,
polygon-amoy,
scroll,
scroll-sepolia,
sei-atlantic-2-testnet,
sei-pacific-1,
shape,
story,
story-testnet,
tempo,
tempo-testnet,
world-chain,
world-chain-sepolia,
zora,
zora-sepolia
signer
required

A signer locator that can be either a of format '' for external wallet type signers or ':'

Example:

"passkey:cWtP7gmZbd98HbKUuGXx5Q"

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.

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))$
scopes
Transfer · object[]

Optional array of scopes to restrict the signer's capabilities

Example:

Response

The delegated signer has been successfully created.

Complete delegated signer response including the signer and authorizations for each chain

address
required

The blockchain address of the custodial signer

locator
string
required

The locator of the signer

type
enum<string>
required

Identifier for API key signer type

Available options:
api-key
chains
object

Authorization for each chain, keyed by chain name. The value is either a signature request (signature flow) or an on-chain registration transaction (deployImmediately flow).

expiresAt

The expiry date of the signer in ISO 8601 format

scopes
Transfer · object[]

Optional array of scopes restricting the signer's capabilities

Example: