> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Signature

> Creates a new signature for signing messages or typed data.

**API scope required**: `wallets:signatures.create`



## OpenAPI

````yaml post /2025-06-09/wallets/{walletLocator}/signatures
openapi: 3.0.0
info:
  title: Crossmint Wallets API
  description: Crossmint Wallets API
  version: 1.0.0
  contact:
    name: Crossmint Support
    url: https://www.crossmint.com
    email: support@crossmint.com
servers:
  - url: https://staging.crossmint.com/api
    description: Staging environment (testnets)
  - url: https://www.crossmint.com/api
    description: Production environment (mainnets)
security: []
tags: []
paths:
  /2025-06-09/wallets/{walletLocator}/signatures:
    post:
      summary: Create Signature
      description: |-
        Creates a new signature for signing messages or typed data.

        **API scope required**: `wallets:signatures.create`
      operationId: WalletsV2025Controller-createSignatureRequest-2
      parameters:
        - name: X-API-KEY
          in: header
          description: API key required for authentication
          required: true
          schema:
            type: string
        - name: walletLocator
          required: true
          in: path
          description: >-
            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>`
          schema:
            type: string
        - name: x-idempotency-key
          required: false
          in: header
          description: Unique key to prevent duplicate signature creation
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSignatureV2025DTO'
      responses:
        '201':
          description: The signature has been successfully created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WalletsSignatureV2025ResponseDTO'
        '400':
          description: Returns an error if the signature type is not supported
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WalletV1Alpha2ErrorDTO'
        '404':
          description: Returns an error if a wallet with the specified locator not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WalletV1Alpha2ErrorDTO'
components:
  schemas:
    CreateSignatureV2025DTO:
      oneOf:
        - type: object
          properties:
            type:
              type: string
              enum:
                - message
            params:
              type: object
              properties:
                message:
                  type: string
                  description: The message in plain text to sign
                signer:
                  description: >-
                    The locator for the signer who will submit this signature.
                    Defaults to the wallet's admin signer.
                  type: string
                  title: Signer Locator
                  example: external-wallet:0x1234567890123456789012345678901234567890
                chain:
                  description: >-
                    The chain on which the signature will be submitted. Required
                    for EVM wallets, optional for others.
                  type: string
                  enum:
                    - arbitrum-sepolia
                    - arc-testnet
                    - avalanche-fuji
                    - curtis
                    - base-goerli
                    - base-sepolia
                    - bsc-testnet
                    - chiliz-spicy-testnet
                    - coti-testnet
                    - ethereum-goerli
                    - ethereum-sepolia
                    - hedera-testnet
                    - hypersonic-testnet
                    - lightlink-pegasus
                    - mantle-sepolia
                    - optimism-goerli
                    - optimism-sepolia
                    - polygon-amoy
                    - polygon-mumbai
                    - crossmint-private-testnet-ethereum
                    - crossmint-private-testnet-polygon
                    - rari-testnet
                    - scroll-sepolia
                    - sei-atlantic-2-testnet
                    - shape-sepolia
                    - skale-nebula-testnet
                    - soneium-minato-testnet
                    - space-testnet
                    - story-testnet
                    - verify-testnet
                    - viction-testnet
                    - xai-sepolia-testnet
                    - zkatana
                    - zkyoto
                    - zora-goerli
                    - zora-sepolia
                    - mode-sepolia
                    - u2u-nebulas
                    - zenchain-testnet
                    - abstract-testnet
                    - world-chain-sepolia
                    - plume-testnet
                    - flow-testnet
                    - tempo-testnet
                    - ethereum
                    - polygon
                    - bsc
                    - optimism
                    - arbitrum
                    - base
                    - zora
                    - arbitrumnova
                    - astar-zkevm
                    - apechain
                    - hedera
                    - coti
                    - lightlink
                    - mantle
                    - skale-nebula
                    - sei-pacific-1
                    - chiliz
                    - avalanche
                    - xai
                    - shape
                    - rari
                    - scroll
                    - viction
                    - mode
                    - space
                    - soneium
                    - story
                    - u2u-solaris
                    - abstract
                    - world-chain
                    - plume
                    - flow
                    - tempo
              required:
                - message
              description: Parameters for a message signature
          required:
            - type
            - params
          title: Message Signature
          description: Parameters for a message signature
        - type: object
          properties:
            type:
              type: string
              enum:
                - typed-data
            params:
              type: object
              properties:
                typedData:
                  type: object
                  properties:
                    domain:
                      type: object
                      properties:
                        name:
                          type: string
                        version:
                          type: string
                        chainId:
                          type: number
                        verifyingContract:
                          type: string
                          description: The recipient address for this transaction call
                        salt:
                          type: string
                          description: WebAuthn authenticator data as hex string
                      required:
                        - name
                        - version
                        - chainId
                        - verifyingContract
                    types:
                      type: object
                      additionalProperties:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                            type:
                              type: string
                          required:
                            - name
                            - type
                    primaryType:
                      type: string
                    message:
                      type: object
                      additionalProperties: true
                  required:
                    - domain
                    - types
                    - primaryType
                    - message
                chain:
                  type: string
                  enum:
                    - arbitrum-sepolia
                    - arc-testnet
                    - avalanche-fuji
                    - curtis
                    - base-goerli
                    - base-sepolia
                    - bsc-testnet
                    - chiliz-spicy-testnet
                    - coti-testnet
                    - ethereum-goerli
                    - ethereum-sepolia
                    - hedera-testnet
                    - hypersonic-testnet
                    - lightlink-pegasus
                    - mantle-sepolia
                    - optimism-goerli
                    - optimism-sepolia
                    - polygon-amoy
                    - polygon-mumbai
                    - crossmint-private-testnet-ethereum
                    - crossmint-private-testnet-polygon
                    - rari-testnet
                    - scroll-sepolia
                    - sei-atlantic-2-testnet
                    - shape-sepolia
                    - skale-nebula-testnet
                    - soneium-minato-testnet
                    - space-testnet
                    - story-testnet
                    - verify-testnet
                    - viction-testnet
                    - xai-sepolia-testnet
                    - zkatana
                    - zkyoto
                    - zora-goerli
                    - zora-sepolia
                    - mode-sepolia
                    - u2u-nebulas
                    - zenchain-testnet
                    - abstract-testnet
                    - world-chain-sepolia
                    - plume-testnet
                    - flow-testnet
                    - tempo-testnet
                    - ethereum
                    - polygon
                    - bsc
                    - optimism
                    - arbitrum
                    - base
                    - zora
                    - arbitrumnova
                    - astar-zkevm
                    - apechain
                    - hedera
                    - coti
                    - lightlink
                    - mantle
                    - skale-nebula
                    - sei-pacific-1
                    - chiliz
                    - avalanche
                    - xai
                    - shape
                    - rari
                    - scroll
                    - viction
                    - mode
                    - space
                    - soneium
                    - story
                    - u2u-solaris
                    - abstract
                    - world-chain
                    - plume
                    - flow
                    - tempo
                  description: The chain on which the signature will be submitted
                signer:
                  description: The locator for the signer who will approve this signature
                  type: string
                  title: Signer Locator
                  example: external-wallet:0x1234567890123456789012345678901234567890
                isSmartWalletSignature:
                  description: >-
                    Whether the signature corresponds to the smart wallet or to
                    the signer. If true, the signature will be wrapped with
                    ERC6492.
                  type: boolean
              required:
                - typedData
                - chain
              description: Parameters for a typed data signature
          required:
            - type
            - params
          title: Typed Data Signature
          description: Parameters for a typed data signature
        - type: object
          properties:
            type:
              type: string
              enum:
                - auth-entries
            params:
              type: object
              properties:
                authorizationEntries:
                  type: string
                  description: >-
                    Base64-encoded XDR array of all authorization entries from
                    the SEP-45 challenge (4-byte BE count prefix + concatenated
                    entry XDR)
                signer:
                  description: >-
                    The locator for the signer who will approve this entry.
                    Defaults to the wallet's admin signer.
                  type: string
                  title: Signer Locator
                  example: external-wallet:0x1234567890123456789012345678901234567890
              required:
                - authorizationEntries
              description: Parameters for signing Stellar authorization entries (SEP-45)
          required:
            - type
            - params
          title: Auth Entries Signature
          description: Parameters for signing Stellar authorization entries (SEP-45)
      description: >-
        Input schema for creating a new signature. The parameters vary based on
        the signature type.
      example:
        type: message
        params:
          message: Hello, world!
          signer: external-wallet:0xB17Ea8d34078424B9d7D126E444d5F2C3CC5c81E
          chain: ethereum
    WalletsSignatureV2025ResponseDTO:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the signature
        type:
          type: string
          enum:
            - message
            - typed-data
            - auth-entries
          description: The type of signature
        chainType:
          type: string
          enum:
            - evm
            - solana
            - aptos
            - sui
            - stellar
          description: The blockchain type of the wallet
        walletType:
          type: string
          enum:
            - smart
            - mpc
          description: The wallet type (smart or mpc)
        status:
          type: string
          enum:
            - awaiting-approval
            - pending
            - failed
            - success
          description: Current status of the signature
        params:
          anyOf:
            - type: object
              properties:
                message:
                  type: string
                  description: The message in plain text to sign
                signer:
                  description: >-
                    The full signer object who will submit this signature.
                    Defaults to the wallet's admin signer.
                  oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - external-wallet
                        address:
                          type: string
                          description: The address of the external wallet
                        locator:
                          type: string
                          description: The locator of the external wallet signer
                      required:
                        - type
                        - address
                        - locator
                      title: External Wallet Signer
                      description: Full External Wallet signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - passkey
                        id:
                          type: string
                          description: The ID of the passkey
                        locator:
                          type: string
                          description: The locator of the passkey signer
                      required:
                        - type
                        - id
                        - locator
                      title: Passkey Signer
                      description: Full Passkey signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - api-key
                        address:
                          type: string
                          description: The address of the api key
                        locator:
                          type: string
                          description: The locator of the api key signer
                      required:
                        - type
                        - address
                        - locator
                      title: API Key Signer
                      description: Full API Key signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - device
                        publicKey:
                          type: object
                          properties:
                            x:
                              type: string
                            'y':
                              type: string
                          required:
                            - x
                            - 'y'
                          description: The p256 public key of the device signer
                        locator:
                          type: string
                          description: The locator of the device signer
                        name:
                          description: Optional human-readable name for the device signer
                          type: string
                      required:
                        - type
                        - publicKey
                        - locator
                      title: Device Signer
                      description: Full Device signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - email
                        email:
                          type: string
                          format: email
                          pattern: >-
                            ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
                        locator:
                          type: string
                      required:
                        - type
                        - email
                        - locator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - phone
                        phone:
                          type: string
                        locator:
                          type: string
                      required:
                        - type
                        - phone
                        - locator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - server
                        address:
                          type: string
                        locator:
                          type: string
                      required:
                        - type
                        - address
                        - locator
                chain:
                  type: string
                  enum:
                    - arbitrum-sepolia
                    - arc-testnet
                    - avalanche-fuji
                    - curtis
                    - base-goerli
                    - base-sepolia
                    - bsc-testnet
                    - chiliz-spicy-testnet
                    - coti-testnet
                    - ethereum-goerli
                    - ethereum-sepolia
                    - hedera-testnet
                    - hypersonic-testnet
                    - lightlink-pegasus
                    - mantle-sepolia
                    - optimism-goerli
                    - optimism-sepolia
                    - polygon-amoy
                    - polygon-mumbai
                    - crossmint-private-testnet-ethereum
                    - crossmint-private-testnet-polygon
                    - rari-testnet
                    - scroll-sepolia
                    - sei-atlantic-2-testnet
                    - shape-sepolia
                    - skale-nebula-testnet
                    - soneium-minato-testnet
                    - space-testnet
                    - story-testnet
                    - verify-testnet
                    - viction-testnet
                    - xai-sepolia-testnet
                    - zkatana
                    - zkyoto
                    - zora-goerli
                    - zora-sepolia
                    - mode-sepolia
                    - u2u-nebulas
                    - zenchain-testnet
                    - abstract-testnet
                    - world-chain-sepolia
                    - plume-testnet
                    - flow-testnet
                    - tempo-testnet
                    - ethereum
                    - polygon
                    - bsc
                    - optimism
                    - arbitrum
                    - base
                    - zora
                    - arbitrumnova
                    - astar-zkevm
                    - apechain
                    - hedera
                    - coti
                    - lightlink
                    - mantle
                    - skale-nebula
                    - sei-pacific-1
                    - chiliz
                    - avalanche
                    - xai
                    - shape
                    - rari
                    - scroll
                    - viction
                    - mode
                    - space
                    - soneium
                    - story
                    - u2u-solaris
                    - abstract
                    - world-chain
                    - plume
                    - flow
                    - tempo
                  description: The chain on which the signature will be submitted
              required:
                - message
              title: Message signature parameters
              description: Parameters for a message signature
            - type: object
              properties:
                typedData:
                  type: object
                  properties:
                    domain:
                      type: object
                      properties:
                        name:
                          type: string
                        version:
                          type: string
                        chainId:
                          type: number
                        verifyingContract:
                          type: string
                          description: An EVM address string
                        salt:
                          type: string
                          description: WebAuthn authenticator data as hex string
                      required:
                        - name
                        - version
                        - chainId
                        - verifyingContract
                    types:
                      type: object
                      additionalProperties:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                            type:
                              type: string
                          required:
                            - name
                            - type
                    primaryType:
                      type: string
                    message:
                      type: object
                      additionalProperties: true
                  required:
                    - domain
                    - types
                    - primaryType
                    - message
                chain:
                  type: string
                  enum:
                    - arbitrum-sepolia
                    - arc-testnet
                    - avalanche-fuji
                    - curtis
                    - base-goerli
                    - base-sepolia
                    - bsc-testnet
                    - chiliz-spicy-testnet
                    - coti-testnet
                    - ethereum-goerli
                    - ethereum-sepolia
                    - hedera-testnet
                    - hypersonic-testnet
                    - lightlink-pegasus
                    - mantle-sepolia
                    - optimism-goerli
                    - optimism-sepolia
                    - polygon-amoy
                    - polygon-mumbai
                    - crossmint-private-testnet-ethereum
                    - crossmint-private-testnet-polygon
                    - rari-testnet
                    - scroll-sepolia
                    - sei-atlantic-2-testnet
                    - shape-sepolia
                    - skale-nebula-testnet
                    - soneium-minato-testnet
                    - space-testnet
                    - story-testnet
                    - verify-testnet
                    - viction-testnet
                    - xai-sepolia-testnet
                    - zkatana
                    - zkyoto
                    - zora-goerli
                    - zora-sepolia
                    - mode-sepolia
                    - u2u-nebulas
                    - zenchain-testnet
                    - abstract-testnet
                    - world-chain-sepolia
                    - plume-testnet
                    - flow-testnet
                    - tempo-testnet
                    - ethereum
                    - polygon
                    - bsc
                    - optimism
                    - arbitrum
                    - base
                    - zora
                    - arbitrumnova
                    - astar-zkevm
                    - apechain
                    - hedera
                    - coti
                    - lightlink
                    - mantle
                    - skale-nebula
                    - sei-pacific-1
                    - chiliz
                    - avalanche
                    - xai
                    - shape
                    - rari
                    - scroll
                    - viction
                    - mode
                    - space
                    - soneium
                    - story
                    - u2u-solaris
                    - abstract
                    - world-chain
                    - plume
                    - flow
                    - tempo
                  description: The chain on which the signature will be submitted
                signer:
                  description: The full signer object who will approve this signature
                  oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - external-wallet
                        address:
                          type: string
                          description: The address of the external wallet
                        locator:
                          type: string
                          description: The locator of the external wallet signer
                      required:
                        - type
                        - address
                        - locator
                      title: External Wallet Signer
                      description: Full External Wallet signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - passkey
                        id:
                          type: string
                          description: The ID of the passkey
                        locator:
                          type: string
                          description: The locator of the passkey signer
                      required:
                        - type
                        - id
                        - locator
                      title: Passkey Signer
                      description: Full Passkey signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - api-key
                        address:
                          type: string
                          description: The address of the api key
                        locator:
                          type: string
                          description: The locator of the api key signer
                      required:
                        - type
                        - address
                        - locator
                      title: API Key Signer
                      description: Full API Key signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - device
                        publicKey:
                          type: object
                          properties:
                            x:
                              type: string
                            'y':
                              type: string
                          required:
                            - x
                            - 'y'
                          description: The p256 public key of the device signer
                        locator:
                          type: string
                          description: The locator of the device signer
                        name:
                          description: Optional human-readable name for the device signer
                          type: string
                      required:
                        - type
                        - publicKey
                        - locator
                      title: Device Signer
                      description: Full Device signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - email
                        email:
                          type: string
                          format: email
                          pattern: >-
                            ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
                        locator:
                          type: string
                      required:
                        - type
                        - email
                        - locator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - phone
                        phone:
                          type: string
                        locator:
                          type: string
                      required:
                        - type
                        - phone
                        - locator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - server
                        address:
                          type: string
                        locator:
                          type: string
                      required:
                        - type
                        - address
                        - locator
                isSmartWalletSignature:
                  description: >-
                    Whether the signature corresponds to the smart wallet or to
                    the signer. If true, the signature will be wrapped with
                    ERC6492.
                  type: boolean
              required:
                - typedData
                - chain
              title: Typed data signature parameters
              description: Parameters for a typed data signature
            - type: object
              properties:
                authorizationEntries:
                  type: string
                  description: Base64-encoded XDR array of the authorization entries
                signer:
                  description: The full signer object who will approve this entry
                  oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - external-wallet
                        address:
                          type: string
                          description: The address of the external wallet
                        locator:
                          type: string
                          description: The locator of the external wallet signer
                      required:
                        - type
                        - address
                        - locator
                      title: External Wallet Signer
                      description: Full External Wallet signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - passkey
                        id:
                          type: string
                          description: The ID of the passkey
                        locator:
                          type: string
                          description: The locator of the passkey signer
                      required:
                        - type
                        - id
                        - locator
                      title: Passkey Signer
                      description: Full Passkey signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - api-key
                        address:
                          type: string
                          description: The address of the api key
                        locator:
                          type: string
                          description: The locator of the api key signer
                      required:
                        - type
                        - address
                        - locator
                      title: API Key Signer
                      description: Full API Key signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - device
                        publicKey:
                          type: object
                          properties:
                            x:
                              type: string
                            'y':
                              type: string
                          required:
                            - x
                            - 'y'
                          description: The p256 public key of the device signer
                        locator:
                          type: string
                          description: The locator of the device signer
                        name:
                          description: Optional human-readable name for the device signer
                          type: string
                      required:
                        - type
                        - publicKey
                        - locator
                      title: Device Signer
                      description: Full Device signer object
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - email
                        email:
                          type: string
                          format: email
                          pattern: >-
                            ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
                        locator:
                          type: string
                      required:
                        - type
                        - email
                        - locator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - phone
                        phone:
                          type: string
                        locator:
                          type: string
                      required:
                        - type
                        - phone
                        - locator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - server
                        address:
                          type: string
                        locator:
                          type: string
                      required:
                        - type
                        - address
                        - locator
              required:
                - authorizationEntries
              title: Auth entries signature parameters
              description: Parameters for Stellar authorization entries signature (SEP-45)
          description: Type-specific signature parameters
        approvals:
          type: object
          properties:
            pending:
              type: array
              items:
                type: object
                properties:
                  signer:
                    oneOf:
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - external-wallet
                          address:
                            type: string
                            description: The address of the external wallet
                          locator:
                            type: string
                            description: The locator of the external wallet signer
                        required:
                          - type
                          - address
                          - locator
                        title: External Wallet Signer
                        description: Full External Wallet signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - passkey
                          id:
                            type: string
                            description: The ID of the passkey
                          locator:
                            type: string
                            description: The locator of the passkey signer
                        required:
                          - type
                          - id
                          - locator
                        title: Passkey Signer
                        description: Full Passkey signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - api-key
                          address:
                            type: string
                            description: The address of the api key
                          locator:
                            type: string
                            description: The locator of the api key signer
                        required:
                          - type
                          - address
                          - locator
                        title: API Key Signer
                        description: Full API Key signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - device
                          publicKey:
                            type: object
                            properties:
                              x:
                                type: string
                              'y':
                                type: string
                            required:
                              - x
                              - 'y'
                            description: The p256 public key of the device signer
                          locator:
                            type: string
                            description: The locator of the device signer
                          name:
                            description: Optional human-readable name for the device signer
                            type: string
                        required:
                          - type
                          - publicKey
                          - locator
                        title: Device Signer
                        description: Full Device signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - email
                          email:
                            type: string
                            format: email
                            pattern: >-
                              ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
                          locator:
                            type: string
                        required:
                          - type
                          - email
                          - locator
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - phone
                          phone:
                            type: string
                          locator:
                            type: string
                        required:
                          - type
                          - phone
                          - locator
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - server
                          address:
                            type: string
                          locator:
                            type: string
                        required:
                          - type
                          - address
                          - locator
                    description: The full signer object who submitted this signature
                  message:
                    type: string
                    description: The message that needs to be signed
                required:
                  - signer
                  - message
              description: List of pending signatures
            submitted:
              type: array
              items:
                type: object
                properties:
                  signature:
                    type: string
                    description: The cryptographic signature
                  submittedAt:
                    anyOf:
                      - description: ISO 8601 formatted timestamp
                        type: number
                      - type: string
                    description: ISO timestamp when the signature was created
                  signer:
                    oneOf:
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - external-wallet
                          address:
                            type: string
                            description: The address of the external wallet
                          locator:
                            type: string
                            description: The locator of the external wallet signer
                        required:
                          - type
                          - address
                          - locator
                        title: External Wallet Signer
                        description: Full External Wallet signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - passkey
                          id:
                            type: string
                            description: The ID of the passkey
                          locator:
                            type: string
                            description: The locator of the passkey signer
                        required:
                          - type
                          - id
                          - locator
                        title: Passkey Signer
                        description: Full Passkey signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - api-key
                          address:
                            type: string
                            description: The address of the api key
                          locator:
                            type: string
                            description: The locator of the api key signer
                        required:
                          - type
                          - address
                          - locator
                        title: API Key Signer
                        description: Full API Key signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - device
                          publicKey:
                            type: object
                            properties:
                              x:
                                type: string
                              'y':
                                type: string
                            required:
                              - x
                              - 'y'
                            description: The p256 public key of the device signer
                          locator:
                            type: string
                            description: The locator of the device signer
                          name:
                            description: Optional human-readable name for the device signer
                            type: string
                        required:
                          - type
                          - publicKey
                          - locator
                        title: Device Signer
                        description: Full Device signer object
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - email
                          email:
                            type: string
                            format: email
                            pattern: >-
                              ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
                          locator:
                            type: string
                        required:
                          - type
                          - email
                          - locator
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - phone
                          phone:
                            type: string
                          locator:
                            type: string
                        required:
                          - type
                          - phone
                          - locator
                      - type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - server
                          address:
                            type: string
                          locator:
                            type: string
                        required:
                          - type
                          - address
                          - locator
                    description: The full signer object who submitted this signature
                  message:
                    type: string
                    description: The message that was signed
                  metadata:
                    description: Additional metadata about the signature submission
                    type: object
                    properties:
                      deviceInfo:
                        type: string
                      ipAddress:
                        type: string
                      userAgent:
                        type: string
                required:
                  - signature
                  - submittedAt
                  - signer
                  - message
              description: Record of all submitted signatures
            required:
              description: Number of required approvals for the transaction
              type: number
          description: >-
            Complete approval data including requirements, pending and submitted
            signatures
        createdAt:
          anyOf:
            - description: ISO 8601 formatted timestamp
              type: number
            - type: string
          description: ISO timestamp when the signature was created
        completedAt:
          description: ISO timestamp when the transaction reached finality
          anyOf:
            - description: ISO 8601 formatted timestamp
              type: number
            - type: string
        error:
          description: Error message if the signature fails
        outputSignature:
          description: The wallet's output signature of the request
          type: string
      required:
        - id
        - type
        - chainType
        - walletType
        - status
        - params
        - approvals
        - createdAt
    WalletV1Alpha2ErrorDTO:
      type: object
      properties:
        error:
          type: boolean
          enum:
            - true
        message:
          type: string
          description: Error message
          example: <error message>
      required:
        - error
        - message

````