openapi: 3.1.0
info:
  title: revault-api
  description: A short description of what revault-api is
  version: 1.51.0
servers:
  - url: /v1/rest
paths:
  /auth/token:
    post:
      operationId: auth-authenticate
      summary: Authenticate
      description: Exchange API Key credentials for JWT tokens
      tags:
        - auth
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                workspace:
                  type: string
                  description: Target workspace
                apiKeyId:
                  type: string
                  description: API Key id
                apiKeySecret:
                  type: string
                  description: API Key secret
              required:
                - workspace
                - apiKeyId
                - apiKeySecret
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  accessToken:
                    type: string
                    description: JSON Web Token used to authenticate requests
                  expiresInSeconds:
                    type: number
                    description: JWT validity period (in seconds)
                  refreshToken:
                    type: string
                    description: Refresh token used to obtain new JWT
                  refreshExpiresInSeconds:
                    type: number
                    description: Refresh token validity period (in seconds)
                required:
                  - accessToken
                  - expiresInSeconds
                  - refreshToken
                  - refreshExpiresInSeconds
                additionalProperties: false
        "400": &a1
          description: Invalid input data
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/error.BAD_REQUEST"
        "401": &a2
          description: Authorization not provided
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/error.UNAUTHORIZED"
        "403": &a3
          description: Insufficient access
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/error.FORBIDDEN"
        "500": &a4
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/error.INTERNAL_SERVER_ERROR"
  /auth/token/refresh:
    post:
      operationId: auth-refreshToken
      summary: Refresh token
      description: Exchange refreshToken for JWT tokens
      tags:
        - auth
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                workspace:
                  type: string
                  description: Target workspace
                refreshToken:
                  type: string
                  description: Refresh token
              required:
                - workspace
                - refreshToken
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  accessToken:
                    type: string
                    description: JSON Web Token used to authenticate requests
                  expiresInSeconds:
                    type: number
                    description: JWT validity period (in seconds)
                  refreshToken:
                    type: string
                    description: Refresh token used to obtain new JWT
                  refreshExpiresInSeconds:
                    type: number
                    description: Refresh token validity period (in seconds)
                required:
                  - accessToken
                  - expiresInSeconds
                  - refreshToken
                  - refreshExpiresInSeconds
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /users:
    get:
      operationId: users-list
      summary: List users
      description: List users in the same workspace. Administrators & operators with
        `legacyViewAll` set to `true` can see the full list, other users can
        only see themselves.
      tags:
        - user
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: role
          schema:
            type: string
            enum:
              - ADMIN
              - OPERATOR
              - READ_ONLY_API_KEY
            description: User role
        - in: query
          name: deviceType
          schema:
            type: string
            enum:
              - PSD
              - SOFT_PSD
              - API
            description: User's device type
        - in: query
          name: status
          schema:
            type: string
            enum:
              - ACTIVE
              - INACTIVE
            description: User status
        - in: query
          name: sortBy
          schema:
            default: createdAt
            description: Sort by attribute
            type: string
            enum:
              - name
              - role
              - status
              - createdAt
              - updatedAt
        - in: query
          name: sortOrder
          schema:
            default: asc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
        - in: query
          name: ids
          schema:
            type: array
            items:
              type: string
            description: List of user IDs to filter by
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Internal unique identifier
                        legacyId:
                          type: number
                          description: Legacy internal unique identifier (for retro-compatibility)
                        legacyViewAll:
                          type: boolean
                          description: If true, user can read all resources on the workspace
                        workspaceName:
                          type: string
                          description: User's workspace name
                        name:
                          type: string
                          description: User name
                        deviceUserId:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: User's device ID (for non-API users)
                        deviceType:
                          type: string
                          enum:
                            - PSD
                            - SOFT_PSD
                            - API
                          description: User's device type
                        role:
                          type: string
                          enum:
                            - ADMIN
                            - OPERATOR
                            - READ_ONLY_API_KEY
                          description: User role
                        pubKey:
                          type: string
                          description: User public key
                        status:
                          type: string
                          enum:
                            - ACTIVE
                            - INACTIVE
                          description: User status
                        isSuspended:
                          type: boolean
                          description: Whether the user is suspended
                        createdAt:
                          description: Creation timestamp
                          type: string
                        updatedAt:
                          description: Last modification timestamp
                          type: string
                      required:
                        - id
                        - legacyId
                        - legacyViewAll
                        - workspaceName
                        - name
                        - deviceUserId
                        - deviceType
                        - role
                        - pubKey
                        - status
                        - isSuspended
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": &a5
          description: Not found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/error.NOT_FOUND"
        "500": *a4
  /users/{id}:
    get:
      operationId: users-findById
      summary: Get a single user
      description: Find a user by its ID. Use `me` to fetch current user. Operators
        can only see themselves (unless they have `legacyViewAll` set to
        `true`), fetching other users will yield Not Found error.
      tags:
        - user
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target user
          required: true
          description: Id of the target user
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Internal unique identifier
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  legacyViewAll:
                    type: boolean
                    description: If true, user can read all resources on the workspace
                  workspaceName:
                    type: string
                    description: User's workspace name
                  name:
                    type: string
                    description: User name
                  deviceUserId:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: User's device ID (for non-API users)
                  deviceType:
                    type: string
                    enum:
                      - PSD
                      - SOFT_PSD
                      - API
                    description: User's device type
                  role:
                    type: string
                    enum:
                      - ADMIN
                      - OPERATOR
                      - READ_ONLY_API_KEY
                    description: User role
                  pubKey:
                    type: string
                    description: User public key
                  status:
                    type: string
                    enum:
                      - ACTIVE
                      - INACTIVE
                    description: User status
                  isSuspended:
                    type: boolean
                    description: Whether the user is suspended
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                required:
                  - id
                  - legacyId
                  - legacyViewAll
                  - workspaceName
                  - name
                  - deviceUserId
                  - deviceType
                  - role
                  - pubKey
                  - status
                  - isSuspended
                  - createdAt
                  - updatedAt
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /users/{id}/reset-api-credentials:
    post:
      operationId: users-resetApiUserCredentials
      summary: Reset API user credentials
      description: Reset the API user credentials. This will invalidate all existing
        API keys and generate a new one.
      tags:
        - user
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target user
          required: true
          description: Id of the target user
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  apiKeyId:
                    type: string
                    description: API key ID
                  apiKeySecret:
                    type: string
                    description: API key secret
                required:
                  - apiKeyId
                  - apiKeySecret
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /permissions/allowed-actions:
    get:
      operationId: permissions-getAllowedActions
      summary: Get allowed actions
      description: Return actions allowed to the user on one or more resources.
      tags:
        - user
      security:
        - Authorization: []
      parameters:
        - in: query
          name: userId
          schema:
            default: me
            description: Id of the target user or `me` for the current user
            type: string
        - in: query
          name: resourceType
          schema:
            type: string
            enum:
              - Account
              - Entity
              - Group
              - Policy
              - Whitelist
              - TradelinkCustodian
              - TradelinkEntity
              - TradelinkPledge
              - User
              - UserRegistration
              - Workspace
              - WorkspaceRule
        - in: query
          name: resourceId
          schema:
            type: string
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  userId:
                    type: string
                    description: User ID
                  allowedActions:
                    type: array
                    items:
                      type: string
                      enum:
                        - READ
                        - EDIT
                        - SEND
                        - STAKE
                        - DEPLOY_CONTRACT
                        - EXECUTE_CONTRACT
                        - ACTIVATE_TOKEN
                        - RECEIVE
                        - SIGN_MESSAGE
                        - SIGN_DIGESTS
                        - TRADELINK_PLEDGE
                        - TRADELINK_REPLEDGE
                        - TRADELINK_FORCE_UNPLEDGE
                        - TRADELINK_SETTLE
                        - TRADELINK_WITHDRAW
                        - TRADELINK_ARBITRATE
                        - CREATE_ACCOUNT_WITH_POLICY
                    description: Allowed actions on resource
                required:
                  - userId
                  - allowedActions
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /permissions/resources:
    get:
      operationId: permissions-findAllowedResources
      summary: Find allowed resources
      description: Return resources on which the user is allowed to perform the
        requested action.
      tags:
        - user
      security:
        - Authorization: []
      parameters:
        - in: query
          name: userId
          schema:
            default: me
            description: Id of the target user or `me` for the current user
            type: string
        - in: query
          name: resourceType
          schema:
            type: string
            enum:
              - Account
              - Entity
              - Group
              - Policy
              - Whitelist
              - TradelinkCustodian
              - TradelinkEntity
              - TradelinkPledge
              - User
              - UserRegistration
              - Workspace
              - WorkspaceRule
        - in: query
          name: action
          schema:
            type: string
            enum:
              - READ
              - EDIT
              - SEND
              - STAKE
              - DEPLOY_CONTRACT
              - EXECUTE_CONTRACT
              - ACTIVATE_TOKEN
              - RECEIVE
              - SIGN_MESSAGE
              - SIGN_DIGESTS
              - TRADELINK_PLEDGE
              - TRADELINK_REPLEDGE
              - TRADELINK_FORCE_UNPLEDGE
              - TRADELINK_SETTLE
              - TRADELINK_WITHDRAW
              - TRADELINK_ARBITRATE
              - CREATE_ACCOUNT_WITH_POLICY
            description: Allowed action on the resource
          required: true
          description: Allowed action on the resource
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  userId:
                    type: string
                    description: User ID
                  action:
                    type: string
                    description: The requested action
                  resources:
                    type: array
                    items:
                      type: object
                      properties:
                        resourceType:
                          type: string
                          enum:
                            - Account
                            - Entity
                            - Group
                            - Policy
                            - Whitelist
                            - TradelinkCustodian
                            - TradelinkEntity
                            - TradelinkPledge
                            - User
                            - UserRegistration
                            - Workspace
                            - WorkspaceRule
                          description: Type of the resource
                        resourceId:
                          type: string
                          description: ID of resource on which the action is allowed
                      required:
                        - resourceType
                        - resourceId
                      additionalProperties: false
                required:
                  - userId
                  - action
                  - resources
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts:
    get:
      operationId: accounts-list
      summary: List accounts
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: status
          schema:
            type: string
            enum:
              - ACTIVE
              - INACTIVE
            description: Account status
        - in: query
          name: name
          schema:
            type: string
            description: Search by matching name
        - in: query
          name: governanceType
          schema:
            type: string
            enum:
              - CLASSIC
              - TRADELINK
              - RAW_SIGNING
            description: Account governance type
        - in: query
          name: allowedAction
          schema:
            type: string
            enum:
              - SEND
              - DEPLOY_CONTRACT
              - EXECUTE_CONTRACT
              - ACTIVATE_TOKEN
              - RECEIVE
              - STAKE
              - SIGN_MESSAGE
              - SIGN_DIGESTS
            description: Filter accounts by allowed action for current user
        - in: query
          name: sortBy
          schema:
            default: createdAt
            description: Sort by attribute
            type: string
            enum:
              - name
              - currency
              - index
              - createdAt
              - updatedAt
        - in: query
          name: sortOrder
          schema:
            default: asc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
        - in: query
          name: currency
          schema:
            type: string
            description: Filter accounts by currency
        - in: query
          name: index
          schema:
            type: number
            description: Filter accounts by account index
        - in: query
          name: contractAddress
          schema:
            anyOf:
              - type: string
              - type: "null"
        - in: query
          name: support
          schema:
            type: string
            enum:
              - standalone
              - legacy
            description: Filter accounts by support
        - in: query
          name: type
          schema:
            type: string
            enum:
              - BITCOIN_LIKE
              - CANTON_LIKE
              - CARDANO_LIKE
              - ETHEREUM_LIKE
              - GENERIC_LIKE
              - HEDERA_LIKE
              - POLKADOT_LIKE
              - RAW_SIGNING
              - RIPPLE_LIKE
              - SOLANA_LIKE
              - STELLAR_LIKE
              - SUI_LIKE
              - TEZOS_LIKE
              - TRON_LIKE
            description: Filter accounts by type
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Internal unique identifier
                        legacyId:
                          type: number
                          description: Legacy internal unique identifier (for retro-compatibility)
                        name:
                          type: string
                          description: Name
                        currency:
                          type: string
                          minLength: 1
                          maxLength: 40
                          pattern: ^\w+$
                          description: Will be deprecated soon, use network instead. Currency
                        network:
                          type: string
                          minLength: 1
                          maxLength: 40
                          pattern: ^\w+$
                          description: Network (Same as currency for now)
                        contractAddress:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Token contract address for Token account
                        tokenIdentifier:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Token identifier for Token account
                        index:
                          type: number
                          minimum: 0
                          description: BIP44 account index
                        derivationPath:
                          type: string
                          description: Derivation path
                        status:
                          type: string
                          enum:
                            - ACTIVE
                            - INACTIVE
                          description: Status
                        createdAt:
                          description: Creation timestamp
                          type: string
                        updatedAt:
                          description: Last modification timestamp
                          type: string
                        asset:
                          oneOf:
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: RAW_SIGNING
                                  description: Account type
                              required:
                                - type
                              additionalProperties: false
                              description: Raw signing account
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: BITCOIN_LIKE
                                  description: Account type
                                xpub:
                                  type: string
                                  description: xpub (extended public key)
                              required:
                                - type
                                - xpub
                              additionalProperties: false
                              description: Bitcoin-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: CANTON_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Canton-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: CARDANO_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Cardano-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: ETHEREUM_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                                contractAddress:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Will be deprecated, Use contractAddress at root level instead;
                                    Token contract address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Ethereum-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: GENERIC_LIKE
                                  description: Account type
                              required:
                                - type
                              additionalProperties: false
                              description: Generic-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: HEDERA_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                                isActivated:
                                  type: boolean
                                  description: Indicates if the account is activated
                              required:
                                - type
                                - address
                                - isActivated
                              additionalProperties: false
                              description: Hedera-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: POLKADOT_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Polkadot-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: RIPPLE_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Ripple-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: SOLANA_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                                contractAddress:
                                  anyOf:
                                    - type: string
                                      description: Will be deprecated, Use contractAddress at root level instead;
                                        Token contract address
                                    - type: "null"
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Solana-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: STELLAR_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Stellar-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: SUI_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Sui-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: TEZOS_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Tezos-like
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: TRON_LIKE
                                  description: Account type
                                address:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Account address
                                contractAddress:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Will be deprecated, Use contractAddress at root level instead;
                                    Token contract address
                              required:
                                - type
                                - address
                              additionalProperties: false
                              description: Tron-like
                          description: Account asset fields
                          type: object
                        governance:
                          oneOf:
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: CLASSIC
                                  description: Classic account governance
                                policyId:
                                  type: string
                                  description: Identifier of corresponding governance policy
                              required:
                                - type
                                - policyId
                              additionalProperties: false
                              description: Classic
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: RAW_SIGNING
                                  description: Raw signing account governance
                                policyId:
                                  type: string
                                  description: Identifier of corresponding governance policy
                              required:
                                - type
                                - policyId
                              additionalProperties: false
                              description: Raw Signing
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: TRADELINK
                                  description: Tradelink account governance
                                assetManagerId:
                                  type: string
                                  description: Identifier of corresponding asset manager
                                exchangeConfigs:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      exchangeId:
                                        type: string
                                        description: Tradelink exchange id
                                      repledgeAuthorized:
                                        type: boolean
                                        description: Determines whether this exchange is authorized to repledge on this
                                          account
                                      needsAssetManagerApprovalForSettlements:
                                        type: boolean
                                        description: Determines whether asset manager will "pre-approve" the settlement
                                          requests on this account
                                    required:
                                      - exchangeId
                                      - repledgeAuthorized
                                      - needsAssetManagerApprovalForSettlements
                                    additionalProperties: false
                                  description: Tradelink exchange configurations
                              required:
                                - type
                                - assetManagerId
                                - exchangeConfigs
                              additionalProperties: false
                              description: Tradelink
                          description: Governance fields
                          type: object
                      required:
                        - id
                        - legacyId
                        - name
                        - currency
                        - network
                        - contractAddress
                        - tokenIdentifier
                        - index
                        - derivationPath
                        - status
                        - createdAt
                        - updatedAt
                        - asset
                        - governance
                      additionalProperties: false
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}:
    get:
      operationId: accounts-findById
      summary: Get a single account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Internal unique identifier
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  name:
                    type: string
                    description: Name
                  currency:
                    type: string
                    minLength: 1
                    maxLength: 40
                    pattern: ^\w+$
                    description: Will be deprecated soon, use network instead. Currency
                  network:
                    type: string
                    minLength: 1
                    maxLength: 40
                    pattern: ^\w+$
                    description: Network (Same as currency for now)
                  contractAddress:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Token contract address for Token account
                  tokenIdentifier:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Token identifier for Token account
                  index:
                    type: number
                    minimum: 0
                    description: BIP44 account index
                  derivationPath:
                    type: string
                    description: Derivation path
                  status:
                    type: string
                    enum:
                      - ACTIVE
                      - INACTIVE
                    description: Status
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                  asset:
                    oneOf:
                      - type: object
                        properties:
                          type:
                            type: string
                            const: RAW_SIGNING
                            description: Account type
                        required:
                          - type
                        additionalProperties: false
                        description: Raw signing account
                      - type: object
                        properties:
                          type:
                            type: string
                            const: BITCOIN_LIKE
                            description: Account type
                          xpub:
                            type: string
                            description: xpub (extended public key)
                        required:
                          - type
                          - xpub
                        additionalProperties: false
                        description: Bitcoin-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: CANTON_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Canton-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: CARDANO_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Cardano-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: ETHEREUM_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                          contractAddress:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Will be deprecated, Use contractAddress at root level instead;
                              Token contract address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Ethereum-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: GENERIC_LIKE
                            description: Account type
                        required:
                          - type
                        additionalProperties: false
                        description: Generic-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: HEDERA_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                          isActivated:
                            type: boolean
                            description: Indicates if the account is activated
                        required:
                          - type
                          - address
                          - isActivated
                        additionalProperties: false
                        description: Hedera-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: POLKADOT_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Polkadot-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: RIPPLE_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Ripple-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: SOLANA_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                          contractAddress:
                            anyOf:
                              - type: string
                                description: Will be deprecated, Use contractAddress at root level instead;
                                  Token contract address
                              - type: "null"
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Solana-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: STELLAR_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Stellar-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: SUI_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Sui-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: TEZOS_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Tezos-like
                      - type: object
                        properties:
                          type:
                            type: string
                            const: TRON_LIKE
                            description: Account type
                          address:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Account address
                          contractAddress:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Will be deprecated, Use contractAddress at root level instead;
                              Token contract address
                        required:
                          - type
                          - address
                        additionalProperties: false
                        description: Tron-like
                    description: Account asset fields
                    type: object
                  governance:
                    oneOf:
                      - type: object
                        properties:
                          type:
                            type: string
                            const: CLASSIC
                            description: Classic account governance
                          policyId:
                            type: string
                            description: Identifier of corresponding governance policy
                        required:
                          - type
                          - policyId
                        additionalProperties: false
                        description: Classic
                      - type: object
                        properties:
                          type:
                            type: string
                            const: RAW_SIGNING
                            description: Raw signing account governance
                          policyId:
                            type: string
                            description: Identifier of corresponding governance policy
                        required:
                          - type
                          - policyId
                        additionalProperties: false
                        description: Raw Signing
                      - type: object
                        properties:
                          type:
                            type: string
                            const: TRADELINK
                            description: Tradelink account governance
                          assetManagerId:
                            type: string
                            description: Identifier of corresponding asset manager
                          exchangeConfigs:
                            type: array
                            items:
                              type: object
                              properties:
                                exchangeId:
                                  type: string
                                  description: Tradelink exchange id
                                repledgeAuthorized:
                                  type: boolean
                                  description: Determines whether this exchange is authorized to repledge on this
                                    account
                                needsAssetManagerApprovalForSettlements:
                                  type: boolean
                                  description: Determines whether asset manager will "pre-approve" the settlement
                                    requests on this account
                              required:
                                - exchangeId
                                - repledgeAuthorized
                                - needsAssetManagerApprovalForSettlements
                              additionalProperties: false
                            description: Tradelink exchange configurations
                        required:
                          - type
                          - assetManagerId
                          - exchangeConfigs
                        additionalProperties: false
                        description: Tradelink
                    description: Governance fields
                    type: object
                required:
                  - id
                  - legacyId
                  - name
                  - currency
                  - network
                  - contractAddress
                  - tokenIdentifier
                  - index
                  - derivationPath
                  - status
                  - createdAt
                  - updatedAt
                  - asset
                  - governance
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/pledges:
    get:
      operationId: accounts-listAccountPledges
      summary: List account Tradelink pledges
      tags:
        - account
        - tradelink
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        tradelinkId:
                          type: string
                          description: Unique identifier in Tradelink service
                        asset:
                          type: object
                          properties:
                            name:
                              type: string
                            magnitude:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                          required:
                            - name
                            - magnitude
                          additionalProperties: false
                        state:
                          type: string
                          enum:
                            - PLEDGE_READY
                            - PLEDGE_INCREMENT_PENDING_APPROVAL
                            - PLEDGE_APPROVED
                            - PLEDGE_REJECTED
                            - UNPLEDGE_PENDING_APPROVAL
                            - UNPLEDGE_APPROVED
                            - UNPLEDGE_REJECTED
                            - REPLEDGE_PENDING_APPROVAL
                            - REPLEDGE_APPROVED
                            - REPLEDGE_REJECTED
                            - ASSIGNED_TO_SETTLEMENT
                            - OUTBOUND_TRANSACTION_CONFIRMED
                            - OUTBOUND_TRANSACTION_FAILED
                            - RECOVERING_FROM_FAILURE
                            - PLEDGE_CONSUMED
                        isLocked:
                          type: boolean
                        amount:
                          type: string
                          description: Currently pledged amount
                        pending:
                          type: string
                          description: Requested pledge increment, not yet approved
                        repledge:
                          type: string
                          description: "TODO: describe this field"
                        exchangeTradelinkId:
                          type: string
                        accountId:
                          type: string
                      required:
                        - tradelinkId
                        - asset
                        - state
                        - isLocked
                        - amount
                        - pending
                        - repledge
                        - exchangeTradelinkId
                        - accountId
                      additionalProperties: false
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/transactions:
    get:
      operationId: accounts-listAccountTransactions
      summary: List account transactions
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
        - in: query
          name: cursor
          schema:
            type: string
            description: Optional cursor to get next pages (based on the `next` key on query
              response)
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  next:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Next page cursor
                  results:
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - BITCOIN_LIKE_SEND
                                - BITCOIN_LIKE_RECEIVE
                              description: Bitcoin-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - CANTON_LIKE_SEND
                                - CANTON_LIKE_SEND_TOKEN
                                - CANTON_LIKE_WITHDRAW
                                - CANTON_LIKE_RECEIVE
                                - CANTON_LIKE_PRE_APPROVAL
                              description: Canton-like transaction type
                            reason:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Optional reason attached to the onchain operation
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - reason
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - CARDANO_LIKE_SEND
                                - CARDANO_LIKE_RECEIVE
                                - CARDANO_LIKE_STAKING_REGISTER
                                - CARDANO_LIKE_STAKING_DEREGISTER
                                - CARDANO_LIKE_STAKING_DELEGATE
                                - CARDANO_LIKE_STAKING_WITHDRAW
                              description: Cardano-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - ETHEREUM_LIKE_SEND
                                - ETHEREUM_LIKE_RECEIVE
                              description: Ethereum-like transaction type
                            gasPrice:
                              type: string
                            gasLimit:
                              type: string
                            nonce:
                              type: string
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - gasPrice
                            - gasLimit
                            - nonce
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - ETHEREUM_LIKE_EXECUTE_CONTRACT
                                - ETHEREUM_LIKE_DEPLOY_CONTRACT
                              description: Ethereum-like transaction type
                            gasPrice:
                              type: string
                            gasLimit:
                              type: string
                            nonce:
                              type: string
                            contractData:
                              type: string
                              description: Contract deployment or contract execution data
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - gasPrice
                            - gasLimit
                            - nonce
                            - contractData
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - GENERIC_TRANSACTION
                              description: Generic transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - HEDERA_LIKE_SEND
                                - HEDERA_LIKE_RECEIVE
                                - HEDERA_LIKE_SEND_TOKEN
                                - HEDERA_LIKE_RECEIVE_TOKEN
                                - HEDERA_LIKE_STAKE
                                - HEDERA_LIKE_UNSTAKE
                              description: Hedera-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - POLKADOT_LIKE_SEND
                                - POLKADOT_LIKE_RECEIVE
                                - POLKADOT_LIKE_ADDPROXY
                                - POLKADOT_LIKE_REMOVEPROXY
                                - POLKADOT_LIKE_BOND
                                - POLKADOT_LIKE_REBOND
                                - POLKADOT_LIKE_BONDEXTRA
                                - POLKADOT_LIKE_UNBOND
                                - POLKADOT_LIKE_WITHDRAWUNBONDED
                                - POLKADOT_LIKE_SETCONTROLLER
                                - POLKADOT_LIKE_SETPAYEE
                                - POLKADOT_LIKE_PROXY
                                - POLKADOT_LIKE_ANONYMOUSPROXY
                                - POLKADOT_LIKE_KILLANONYMOUS
                                - POLKADOT_LIKE_PUREPROXY
                                - POLKADOT_LIKE_KILLPURE
                                - POLKADOT_LIKE_NOMINATE
                                - POLKADOT_LIKE_REWARD
                                - POLKADOT_LIKE_CHILL
                                - POLKADOT_LIKE_TRANSFERALL
                              description: Polkadot-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - RIPPLE_LIKE_SEND
                                - RIPPLE_LIKE_RECEIVE
                              description: Ripple-like transaction type
                            memos:
                              type: array
                              items:
                                type: string
                            destinationTag:
                              type: string
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - memos
                            - destinationTag
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - SOLANA_LIKE_SEND
                                - SOLANA_LIKE_RECEIVE
                                - SOLANA_LIKE_CREATE_DELEGATE_STAKE
                                - SOLANA_LIKE_DELEGATE_STAKE
                                - SOLANA_LIKE_WITHDRAW_STAKE
                                - SOLANA_LIKE_DEACTIVATE_STAKE
                                - SOLANA_LIKE_SPLIT_STAKE
                                - SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE
                                - SOLANA_LIKE_MERGE_STAKE
                                - SOLANA_LIKE_SEND_TOKEN
                                - SOLANA_LIKE_FUND_AND_SEND_TOKEN
                                - SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT
                              description: Solana-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - STELLAR_LIKE_SEND
                                - STELLAR_LIKE_RECEIVE
                              description: Stellar-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - SUI_LIKE_SEND
                                - SUI_LIKE_RECEIVE
                                - SUI_LIKE_SEND_TOKEN
                                - SUI_LIKE_RECEIVE_TOKEN
                                - SUI_LIKE_STAKE
                                - SUI_LIKE_UNSTAKE
                              description: Sui-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - TEZOS_LIKE_SEND
                                - TEZOS_LIKE_RECEIVE
                                - TEZOS_LIKE_REVEAL
                                - TEZOS_LIKE_DELEGATE
                                - TEZOS_LIKE_UNDELEGATE
                              description: Tezos-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              description: Internal unique identifier
                            hash:
                              type: string
                              description: Transaction hash
                            block:
                              type: object
                              properties:
                                height:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block height
                                time:
                                  anyOf:
                                    - type: string
                                    - type: "null"
                                  description: Transaction block time
                              required:
                                - height
                                - time
                              additionalProperties: false
                            status:
                              type: string
                              enum:
                                - SUCCESSFUL
                                - FAILED
                              description: Transaction status
                            confirmations:
                              type: string
                              description: Block confirmations
                            amount:
                              type: string
                              description: Transaction amount
                            fee:
                              type: string
                              description: Transaction fee
                            senders:
                              type: array
                              items:
                                type: string
                              description: Senders (can be multiple for UTXOs-based accounts)
                            recipients:
                              type: array
                              items:
                                type: string
                              description: Recipients (can be multiple for multi-output transactions)
                            type:
                              type: string
                              enum:
                                - TRON_LIKE_SEND
                                - TRON_LIKE_RECEIVE
                                - TRON_LIKE_SEND_TOKEN
                                - TRON_LIKE_RECEIVE_TOKEN
                              description: Tron-like transaction type
                            note:
                              anyOf:
                                - type: object
                                  properties:
                                    title:
                                      type: string
                                      description: Note title
                                    content:
                                      type: string
                                      description: Note content
                                  required:
                                    - title
                                    - content
                                  additionalProperties: false
                                - type: "null"
                              description: Optional transaction note
                            requestId:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Request ID associated with the transaction, if available
                          required:
                            - id
                            - hash
                            - block
                            - status
                            - confirmations
                            - amount
                            - fee
                            - senders
                            - recipients
                            - type
                            - note
                            - requestId
                          additionalProperties: false
                      type: object
                    description: Array of results
                required:
                  - next
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/estimate-fees:
    post:
      operationId: accounts-estimateFees
      summary: Estimate transaction fees
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/BitcoinLikeSendData"
                    - $ref: "#/components/schemas/CantonLikeSendData"
                    - $ref: "#/components/schemas/CantonLikeSendTokenData"
                    - $ref: "#/components/schemas/CantonLikeWithdrawData"
                    - $ref: "#/components/schemas/CantonLikeReceiveData"
                    - $ref: "#/components/schemas/CantonLikePreApprovalData"
                    - $ref: "#/components/schemas/CardanoSendData"
                    - $ref: "#/components/schemas/CardanoStakingDelegateData"
                    - $ref: "#/components/schemas/CardanoStakingDeregisterData"
                    - $ref: "#/components/schemas/CardanoStakingRegisterData"
                    - $ref: "#/components/schemas/CardanoStakingWithdrawData"
                    - $ref: "#/components/schemas/EthereumLikeDeployContractData"
                    - $ref: "#/components/schemas/EthereumLikeExecuteContractData"
                    - $ref: "#/components/schemas/EthereumLikeSendData"
                    - $ref: "#/components/schemas/GenericTransactionData"
                    - $ref: "#/components/schemas/HederaLikeSendData"
                    - $ref: "#/components/schemas/HederaLikeSendTokenData"
                    - $ref: "#/components/schemas/HederaLikeStakeData"
                    - $ref: "#/components/schemas/PolkadotLikeAddProxyData"
                    - $ref: "#/components/schemas/PolkadotLikeAnonymousProxyData"
                    - $ref: "#/components/schemas/PolkadotLikeBondData"
                    - $ref: "#/components/schemas/PolkadotLikeBondExtraData"
                    - $ref: "#/components/schemas/PolkadotLikeChillData"
                    - $ref: "#/components/schemas/PolkadotLikeKillAnonymousData"
                    - $ref: "#/components/schemas/PolkadotLikeRebondData"
                    - $ref: "#/components/schemas/PolkadotLikeRemoveProxyData"
                    - $ref: "#/components/schemas/PolkadotLikeSendData"
                    - $ref: "#/components/schemas/PolkadotLikeSetPayeeData"
                    - $ref: "#/components/schemas/PolkadotLikeUnbondData"
                    - $ref: "#/components/schemas/PolkadotLikeWithdrawUnbondedData"
                    - $ref: "#/components/schemas/RippleLikeSendData"
                    - $ref: "#/components/schemas/SolanaLikeCreateDelegateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeDeactivateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeDelegateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeMergeStakeData"
                    - $ref: "#/components/schemas/SolanaLikeSendData"
                    - $ref: "#/components/schemas/SolanaLikeSplitDeactivateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeSplitStakeData"
                    - $ref: "#/components/schemas/SolanaLikeWithdrawStakeData"
                    - $ref: "#/components/schemas/SolanaLikeSendTokenData"
                    - $ref: "#/components/schemas/SolanaLikeFundAndSendTokenData"
                    - $ref: "#/components/schemas/SolanaLikeCreateTokenAccountData"
                    - $ref: "#/components/schemas/StellarLikeSendData"
                    - $ref: "#/components/schemas/SuiLikeSendData"
                    - $ref: "#/components/schemas/SuiLikeTransferTokenData"
                    - $ref: "#/components/schemas/SuiLikeStakeData"
                    - $ref: "#/components/schemas/SuiLikeUnstakeData"
                    - $ref: "#/components/schemas/TezosLikeSendData"
                    - $ref: "#/components/schemas/TezosLikeDelegateData"
                    - $ref: "#/components/schemas/TezosLikeUndelegateData"
                    - $ref: "#/components/schemas/TronLikeSendData"
                    - $ref: "#/components/schemas/TronLikeSendTokenData"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      BITCOIN_LIKE_SEND: "#/components/schemas/BitcoinLikeSendData"
                      CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendData"
                      CANTON_LIKE_SEND_TOKEN: "#/components/schemas/CantonLikeSendTokenData"
                      CANTON_LIKE_WITHDRAW: "#/components/schemas/CantonLikeWithdrawData"
                      CANTON_LIKE_RECEIVE: "#/components/schemas/CantonLikeReceiveData"
                      CANTON_LIKE_PRE_APPROVAL: "#/components/schemas/CantonLikePreApprovalData"
                      CARDANO_LIKE_SEND: "#/components/schemas/CardanoSendData"
                      CARDANO_LIKE_STAKING_DELEGATE: "#/components/schemas/CardanoStakingDelegateData"
                      CARDANO_LIKE_STAKING_DEREGISTER: "#/components/schemas/CardanoStakingDeregisterData"
                      CARDANO_LIKE_STAKING_REGISTER: "#/components/schemas/CardanoStakingRegisterData"
                      CARDANO_LIKE_STAKING_WITHDRAW: "#/components/schemas/CardanoStakingWithdrawData"
                      ETHEREUM_LIKE_DEPLOY_CONTRACT: "#/components/schemas/EthereumLikeDeployContractData"
                      ETHEREUM_LIKE_EXECUTE_CONTRACT: "#/components/schemas/EthereumLikeExecuteContractData"
                      ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendData"
                      GENERIC_TRANSACTION: "#/components/schemas/GenericTransactionData"
                      HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendData"
                      HEDERA_LIKE_SEND_TOKEN: "#/components/schemas/HederaLikeSendTokenData"
                      HEDERA_LIKE_STAKE: "#/components/schemas/HederaLikeStakeData"
                      POLKADOT_LIKE_ADDPROXY: "#/components/schemas/PolkadotLikeAddProxyData"
                      POLKADOT_LIKE_ANONYMOUSPROXY: "#/components/schemas/PolkadotLikeAnonymousProxyData"
                      POLKADOT_LIKE_BOND: "#/components/schemas/PolkadotLikeBondData"
                      POLKADOT_LIKE_BONDEXTRA: "#/components/schemas/PolkadotLikeBondExtraData"
                      POLKADOT_LIKE_CHILL: "#/components/schemas/PolkadotLikeChillData"
                      POLKADOT_LIKE_KILLANONYMOUS: "#/components/schemas/PolkadotLikeKillAnonymousData"
                      POLKADOT_LIKE_REBOND: "#/components/schemas/PolkadotLikeRebondData"
                      POLKADOT_LIKE_REMOVEPROXY: "#/components/schemas/PolkadotLikeRemoveProxyData"
                      POLKADOT_LIKE_SEND: "#/components/schemas/PolkadotLikeSendData"
                      POLKADOT_LIKE_SETPAYEE: "#/components/schemas/PolkadotLikeSetPayeeData"
                      POLKADOT_LIKE_UNBOND: "#/components/schemas/PolkadotLikeUnbondData"
                      POLKADOT_LIKE_WITHDRAWUNBONDED: "#/components/schemas/PolkadotLikeWithdrawUnbondedData"
                      RIPPLE_LIKE_SEND: "#/components/schemas/RippleLikeSendData"
                      SOLANA_LIKE_CREATE_DELEGATE_STAKE: "#/components/schemas/SolanaLikeCreateDelegateStakeData"
                      SOLANA_LIKE_DEACTIVATE_STAKE: "#/components/schemas/SolanaLikeDeactivateStakeData"
                      SOLANA_LIKE_DELEGATE_STAKE: "#/components/schemas/SolanaLikeDelegateStakeData"
                      SOLANA_LIKE_MERGE_STAKE: "#/components/schemas/SolanaLikeMergeStakeData"
                      SOLANA_LIKE_SEND: "#/components/schemas/SolanaLikeSendData"
                      SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE: "#/components/schemas/SolanaLikeSplitDeactivateStakeData"
                      SOLANA_LIKE_SPLIT_STAKE: "#/components/schemas/SolanaLikeSplitStakeData"
                      SOLANA_LIKE_WITHDRAW_STAKE: "#/components/schemas/SolanaLikeWithdrawStakeData"
                      SOLANA_LIKE_SEND_TOKEN: "#/components/schemas/SolanaLikeSendTokenData"
                      SOLANA_LIKE_FUND_AND_SEND_TOKEN: "#/components/schemas/SolanaLikeFundAndSendTokenData"
                      SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT: "#/components/schemas/SolanaLikeCreateTokenAccountData"
                      STELLAR_LIKE_SEND: "#/components/schemas/StellarLikeSendData"
                      SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendData"
                      SUI_LIKE_SEND_TOKEN: "#/components/schemas/SuiLikeTransferTokenData"
                      SUI_LIKE_STAKE: "#/components/schemas/SuiLikeStakeData"
                      SUI_LIKE_UNSTAKE: "#/components/schemas/SuiLikeUnstakeData"
                      TEZOS_LIKE_SEND: "#/components/schemas/TezosLikeSendData"
                      TEZOS_LIKE_DELEGATE: "#/components/schemas/TezosLikeDelegateData"
                      TEZOS_LIKE_UNDELEGATE: "#/components/schemas/TezosLikeUndelegateData"
                      TRON_LIKE_SEND: "#/components/schemas/TronLikeSendData"
                      TRON_LIKE_SEND_TOKEN: "#/components/schemas/TronLikeSendTokenData"
              required:
                - transaction
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      type:
                        type: string
                        const: BITCOIN_LIKE
                      fee:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - fee
                    additionalProperties: false
                    description: Bitcoin-like fees
                  - type: object
                    properties:
                      type:
                        type: string
                        const: ETHEREUM_LIKE
                      baseFees:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                      gasLimit:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                      nonce:
                        type: string
                      priorityFees:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - baseFees
                      - gasLimit
                      - nonce
                      - priorityFees
                    additionalProperties: false
                    description: Ethereum-like fees
                  - type: object
                    properties:
                      type:
                        type: string
                        const: HEDERA_LIKE
                      fee:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - fee
                    additionalProperties: false
                    description: Hedera-like fees
                  - type: object
                    properties:
                      type:
                        type: string
                        const: RIPPLE_LIKE
                      fee:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - fee
                    additionalProperties: false
                    description: Ripple-like fees
                  - type: object
                    properties:
                      type:
                        type: string
                        const: STELLAR_LIKE
                      fee:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - fee
                    additionalProperties: false
                    description: Stellar-like fees
                  - type: object
                    properties:
                      type:
                        type: string
                        const: SUI_LIKE
                      fee:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - fee
                    additionalProperties: false
                    description: Sui-like fees
                  - type: object
                    properties:
                      type:
                        type: string
                        const: TEZOS_LIKE
                      fee:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - fee
                    additionalProperties: false
                    description: Tezos-like fees
                  - type: object
                    properties:
                      type:
                        type: string
                        const: TRON_LIKE
                      fee:
                        type: string
                        minLength: 1
                        pattern: ^(-?[1-9]\d*|0)$
                    required:
                      - type
                      - fee
                    additionalProperties: false
                    description: Tron-like fees
                type: object
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /accounts/{id}/addresses/{index}:
    get:
      operationId: accounts-getUtxoAccountAddressChallengeForApi
      summary: Securely get a verified address for an UTXO based account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
        - in: path
          name: index
          schema:
            type: integer
            minimum: 0
            maximum: 9007199254740991
            description: Index of the address to retrieve
          required: true
          description: Index of the address to retrieve
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: string
                description: JWT signed by the HSM, and containing the account address
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/address:
    get:
      operationId: accounts-getEoaAccountAddressChallengeForApi
      summary: Securely get a verified address for an EOA account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: string
                description: JWT signed by the HSM, and containing the account address
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/balance:
    get:
      operationId: accounts-getAccountBalance
      summary: Get balance of a single account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AccountLiveDataResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/parent-account-info:
    get:
      operationId: accounts-getParentAccountInfo
      summary: Get parent account info or own account info if there is no parent
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                allOf:
                  - $ref: "#/components/schemas/AccountLiveDataResponse"
                  - type: object
                    properties:
                      name:
                        type: string
                        description: Account name
                      network:
                        type: string
                        description: Account network
                    required:
                      - name
                      - network
                    additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/batch/balances:
    get:
      operationId: accounts-getAccountBalances
      summary: Get balances of multiple accounts
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: query
          name: ids
          schema:
            maxItems: 30
            type: array
            items:
              type: string
            description: Ids of the target accounts, maximum 30
          required: true
          description: Ids of the target accounts, maximum 30
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/AccountLiveDataResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/fresh-address:
    get:
      operationId: accounts-getFreshAddress
      summary: Get a fresh address of an account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  address:
                    type: string
                    description: Address
                  derivationPath:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Derivation path
                required:
                  - address
                  - derivationPath
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/stakes:
    get:
      operationId: accounts-listAccountStakes
      summary: List account stakes
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
        - in: query
          name: cursor
          schema:
            type: string
            description: Optional cursor to get next pages (based on the `next` key on query
              response)
        - in: query
          name: sortBy
          schema:
            default: total
            description: Sort by attribute
            type: string
            enum:
              - staked
              - rewards
              - total
        - in: query
          name: sortOrder
          schema:
            default: desc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  next:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Next page cursor
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          description: Staking position ID (if applicable)
                        validator:
                          type: string
                          minLength: 1
                          description: Validator address
                        state:
                          type: string
                          enum:
                            - ACTIVE
                            - INACTIVE
                            - ACTIVATING
                            - DEACTIVATING
                            - UNKNOWN
                          description: Stake state
                        staked:
                          type: string
                          description: Staked amount
                        rewards:
                          type: object
                          properties:
                            total:
                              type: string
                              description: Total rewards
                          required:
                            - total
                          additionalProperties: false
                      required:
                        - id
                        - validator
                        - state
                        - staked
                        - rewards
                      additionalProperties: false
                    description: Array of results
                required:
                  - next
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/staking-validators:
    get:
      operationId: accounts-listStakingValidators
      summary: List staking validators for account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
        - in: query
          name: cursor
          schema:
            type: string
            description: Optional cursor to get next pages (based on the `next` key on query
              response)
        - in: query
          name: sortBy
          schema:
            default: balance
            description: Sort by attribute
            type: string
            enum:
              - balance
        - in: query
          name: sortOrder
          schema:
            default: desc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  next:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Next page cursor
                  results:
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            address:
                              type: string
                              description: Validator address
                            apy:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator APY
                            balance:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator balance
                            commissionRate:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator commission rate
                            description:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Description
                            logo:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Logo URL
                            name:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator name
                            url:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator URL
                            type:
                              type: string
                              const: SUI_LIKE
                              description: Account type
                          required:
                            - address
                            - apy
                            - balance
                            - commissionRate
                            - description
                            - logo
                            - name
                            - url
                            - type
                          additionalProperties: false
                        - type: object
                          properties:
                            address:
                              type: string
                              description: Validator address
                            apy:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator APY
                            balance:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator balance
                            commissionRate:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator commission rate
                            description:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Description
                            logo:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Logo URL
                            name:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator name
                            url:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Validator URL
                            type:
                              type: string
                              const: HEDERA_LIKE
                              description: Account type
                            nodeId:
                              anyOf:
                                - type: string
                                  minLength: 1
                                  pattern: ^(-?[1-9]\d*|0)$
                                - type: "null"
                              description: Validator node ID
                          required:
                            - address
                            - apy
                            - balance
                            - commissionRate
                            - description
                            - logo
                            - name
                            - url
                            - type
                            - nodeId
                          additionalProperties: false
                      type: object
                    description: Array of results
                required:
                  - next
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/canton/pre-approval-state:
    get:
      operationId: accounts-canton-getPreApprovalState
      summary: Get pre-approval state of a Canton account
      tags:
        - account
        - canton
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target Canton account
          required: true
          description: Id of the target Canton account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      enabled:
                        type: boolean
                        const: true
                        description: Pre-approval is enabled
                      contractId:
                        type: string
                        description: ID of the pre-approval contract
                      expiresAt:
                        description: Timestamp when the pre-approval expires and becomes invalid
                        type: string
                      lastRenewedAt:
                        description: Timestamp of the most recent renewal of the pre-approval
                        type: string
                      provider:
                        type: string
                        description: Validator that issued and manages the pre-approval
                      recipient:
                        type: string
                        description: Party that authorizes the pre-approval to receive transfers
                      validFrom:
                        description: Timestamp when the pre-approval becomes effective
                        type: string
                    required:
                      - enabled
                      - contractId
                      - expiresAt
                      - lastRenewedAt
                      - provider
                      - recipient
                      - validFrom
                    additionalProperties: false
                  - type: object
                    properties:
                      enabled:
                        type: boolean
                        const: false
                        description: Pre-approval is not enabled
                    required:
                      - enabled
                    additionalProperties: false
                description: Pre-approval state of the account
                type: object
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /accounts/{id}/canton/transfer-proposals:
    get:
      operationId: accounts-canton-getTransferProposals
      summary: Get transfer proposals to a Canton account
      tags:
        - account
        - canton
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target Canton account
          required: true
          description: Id of the target Canton account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/CantonTransferProposalOutput"
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /signed-digests:
    get:
      operationId: signedDigests-list
      summary: List signed digests by account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: accountId
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Unique identifier
                        items:
                          type: array
                          items:
                            type: object
                            properties:
                              digest:
                                type: string
                                pattern: ^[0-9a-fA-F]+$
                                description: The hex string digest to sign
                              derivationPath:
                                type: string
                                minLength: 1
                                description: The derivation path with which to sign the digest
                              signature:
                                type: object
                                properties:
                                  digest:
                                    anyOf:
                                      - type: string
                                      - type: "null"
                                    description: Signed digest
                                  derivationPath:
                                    anyOf:
                                      - type: string
                                      - type: "null"
                                    description: Derivation path used to sign the digest
                                  r:
                                    type: string
                                    format: base64
                                    contentEncoding: base64
                                    pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                                    description: Base64 encoded signature r coordinate
                                  s:
                                    type: string
                                    format: base64
                                    contentEncoding: base64
                                    pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                                    description: Base64 encoded signature s coordinate
                                  v:
                                    anyOf:
                                      - anyOf:
                                          - type: number
                                            const: 0
                                          - type: number
                                            const: 1
                                      - type: "null"
                                    description: Ecdsa only, signature recovery value
                                  der:
                                    type: string
                                    pattern: ^[0-9a-fA-F]+$
                                    description: Hex string encoded DER signature format (for eddsa, concatenation
                                      of r & s)
                                  pubkey:
                                    anyOf:
                                      - type: string
                                        pattern: ^[0-9a-fA-F]+$
                                      - type: "null"
                                    description: Public key for signature verification, 32 or 33 bytes
                                required:
                                  - digest
                                  - derivationPath
                                  - r
                                  - s
                                  - v
                                  - der
                                  - pubkey
                                additionalProperties: false
                                description: Signature of the digest
                            required:
                              - digest
                              - derivationPath
                              - signature
                            additionalProperties: false
                          description: Digests and signatures
                        createdById:
                          type: string
                          description: ID of the creator
                        createdAt:
                          description: Creation timestamp
                          type: string
                      required:
                        - id
                        - items
                        - createdById
                        - createdAt
                      additionalProperties: false
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /signed-digests/{id}:
    get:
      operationId: signedDigests-findById
      summary: Get signed digests
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the signed digests
          required: true
          description: Id of the signed digests
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Unique identifier
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        digest:
                          type: string
                          pattern: ^[0-9a-fA-F]+$
                          description: The hex string digest to sign
                        derivationPath:
                          type: string
                          minLength: 1
                          description: The derivation path with which to sign the digest
                        signature:
                          type: object
                          properties:
                            digest:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Signed digest
                            derivationPath:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Derivation path used to sign the digest
                            r:
                              type: string
                              format: base64
                              contentEncoding: base64
                              pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                              description: Base64 encoded signature r coordinate
                            s:
                              type: string
                              format: base64
                              contentEncoding: base64
                              pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                              description: Base64 encoded signature s coordinate
                            v:
                              anyOf:
                                - anyOf:
                                    - type: number
                                      const: 0
                                    - type: number
                                      const: 1
                                - type: "null"
                              description: Ecdsa only, signature recovery value
                            der:
                              type: string
                              pattern: ^[0-9a-fA-F]+$
                              description: Hex string encoded DER signature format (for eddsa, concatenation
                                of r & s)
                            pubkey:
                              anyOf:
                                - type: string
                                  pattern: ^[0-9a-fA-F]+$
                                - type: "null"
                              description: Public key for signature verification, 32 or 33 bytes
                          required:
                            - digest
                            - derivationPath
                            - r
                            - s
                            - v
                            - der
                            - pubkey
                          additionalProperties: false
                          description: Signature of the digest
                      required:
                        - digest
                        - derivationPath
                        - signature
                      additionalProperties: false
                    description: Digests and signatures
                  createdById:
                    type: string
                    description: ID of the creator
                  createdAt:
                    description: Creation timestamp
                    type: string
                required:
                  - id
                  - items
                  - createdById
                  - createdAt
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /signed-messages:
    get:
      operationId: signedMessages-list
      summary: List signed messages by account
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: accountId
          schema:
            type: string
            description: Id of the target account
          required: true
          description: Id of the target account
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      $ref: "#/components/schemas/SignedMessageResponse"
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /signed-messages/{id}:
    get:
      operationId: signedMessages-findById
      summary: Get a single signed message
      tags:
        - account
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the signed message
          required: true
          description: Id of the signed message
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SignedMessageResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /groups:
    get:
      operationId: groups-list
      summary: List groups
      description: List groups in the same workspace.
      tags:
        - group
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: status
          schema:
            type: string
            enum:
              - ACTIVE
              - INACTIVE
            description: Group status
        - in: query
          name: sortBy
          schema:
            default: createdAt
            description: Sort by attribute
            type: string
            enum:
              - name
              - status
              - createdAt
              - updatedAt
        - in: query
          name: sortOrder
          schema:
            default: asc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Internal unique identifier
                        legacyId:
                          type: number
                          description: Legacy internal unique identifier (for retro-compatibility)
                        name:
                          type: string
                          description: Group name
                        description:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Group description
                        status:
                          type: string
                          enum:
                            - ACTIVE
                            - INACTIVE
                          description: Group status
                        members:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: string
                                description: Internal unique identifier
                              legacyId:
                                type: number
                                description: Legacy internal unique identifier (for retro-compatibility)
                              legacyViewAll:
                                type: boolean
                                description: If true, user can read all resources on the workspace
                              workspaceName:
                                type: string
                                description: User's workspace name
                              name:
                                type: string
                                description: User name
                              deviceUserId:
                                anyOf:
                                  - type: string
                                  - type: "null"
                                description: User's device ID (for non-API users)
                              deviceType:
                                type: string
                                enum:
                                  - PSD
                                  - SOFT_PSD
                                  - API
                                description: User's device type
                              role:
                                type: string
                                enum:
                                  - ADMIN
                                  - OPERATOR
                                  - READ_ONLY_API_KEY
                                description: User role
                              pubKey:
                                type: string
                                description: User public key
                              status:
                                type: string
                                enum:
                                  - ACTIVE
                                  - INACTIVE
                                description: User status
                              isSuspended:
                                type: boolean
                                description: Whether the user is suspended
                              createdAt:
                                description: Creation timestamp
                                type: string
                              updatedAt:
                                description: Last modification timestamp
                                type: string
                            required:
                              - id
                              - legacyId
                              - legacyViewAll
                              - workspaceName
                              - name
                              - deviceUserId
                              - deviceType
                              - role
                              - pubKey
                              - status
                              - isSuspended
                              - createdAt
                              - updatedAt
                            additionalProperties: false
                          description: Group members
                        createdAt:
                          description: Creation timestamp
                          type: string
                        updatedAt:
                          description: Last modification timestamp
                          type: string
                      required:
                        - id
                        - legacyId
                        - name
                        - description
                        - status
                        - members
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /groups/{id}:
    get:
      operationId: groups-findById
      summary: Get a single group
      description: Find a group by ID.
      tags:
        - group
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target group
          required: true
          description: Id of the target group
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Internal unique identifier
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  name:
                    type: string
                    description: Group name
                  description:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group description
                  status:
                    type: string
                    enum:
                      - ACTIVE
                      - INACTIVE
                    description: Group status
                  members:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Internal unique identifier
                        legacyId:
                          type: number
                          description: Legacy internal unique identifier (for retro-compatibility)
                        legacyViewAll:
                          type: boolean
                          description: If true, user can read all resources on the workspace
                        workspaceName:
                          type: string
                          description: User's workspace name
                        name:
                          type: string
                          description: User name
                        deviceUserId:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: User's device ID (for non-API users)
                        deviceType:
                          type: string
                          enum:
                            - PSD
                            - SOFT_PSD
                            - API
                          description: User's device type
                        role:
                          type: string
                          enum:
                            - ADMIN
                            - OPERATOR
                            - READ_ONLY_API_KEY
                          description: User role
                        pubKey:
                          type: string
                          description: User public key
                        status:
                          type: string
                          enum:
                            - ACTIVE
                            - INACTIVE
                          description: User status
                        isSuspended:
                          type: boolean
                          description: Whether the user is suspended
                        createdAt:
                          description: Creation timestamp
                          type: string
                        updatedAt:
                          description: Last modification timestamp
                          type: string
                      required:
                        - id
                        - legacyId
                        - legacyViewAll
                        - workspaceName
                        - name
                        - deviceUserId
                        - deviceType
                        - role
                        - pubKey
                        - status
                        - isSuspended
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Group members
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                required:
                  - id
                  - legacyId
                  - name
                  - description
                  - status
                  - members
                  - createdAt
                  - updatedAt
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /whitelists:
    get:
      operationId: whitelists-list
      summary: List whitelists
      description: List whitelists in the same workspace.
      tags:
        - whitelist
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: status
          schema:
            type: string
            enum:
              - ACTIVE
              - INACTIVE
            description: Whitelist status
        - in: query
          name: sortBy
          schema:
            default: createdAt
            description: Sort by attribute
            type: string
            enum:
              - name
              - status
              - createdAt
              - updatedAt
        - in: query
          name: sortOrder
          schema:
            default: asc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      $ref: "#/components/schemas/WhitelistResponse"
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /whitelists/{id}:
    get:
      operationId: whitelists-findById
      summary: Get a single whitelist
      description: Find a whitelist by ID.
      tags:
        - whitelist
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target group
          required: true
          description: Id of the target group
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/WhitelistResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /policies:
    get:
      operationId: policies-list
      summary: List policies
      tags:
        - policy
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: name
          schema:
            type: string
            description: Search by matching name
        - in: query
          name: isPrivate
          schema:
            default: false
            type: boolean
            description: Search private policies
        - in: query
          name: sortBy
          schema:
            default: createdAt
            description: Sort by attribute
            type: string
            enum:
              - name
              - createdAt
              - updatedAt
        - in: query
          name: sortOrder
          schema:
            default: asc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      $ref: "#/components/schemas/PolicyResponse"
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /policies/{id}:
    get:
      operationId: policies-findById
      summary: Get a single policy
      tags:
        - policy
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target policy
          required: true
          description: Id of the target policy
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PolicyResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /entities:
    get:
      operationId: entities-list
      summary: List entities
      description: List entities in the same workspace.
      tags:
        - entity
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: status
          schema:
            type: string
            enum:
              - ACTIVE
              - INACTIVE
            description: Entity status
        - in: query
          name: sortBy
          schema:
            default: createdAt
            description: Sort by attribute
            type: string
            enum:
              - name
              - status
              - createdAt
              - updatedAt
        - in: query
          name: sortOrder
          schema:
            default: asc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Entity ID
                        legacyId:
                          type: number
                          description: Legacy internal unique identifier (for retro-compatibility)
                        name:
                          type: string
                          description: Entity name
                        status:
                          type: string
                          enum:
                            - ACTIVE
                            - INACTIVE
                          description: Entity status
                        accountIds:
                          type: array
                          items:
                            type: string
                          description: Accounts in this entity
                        memberIds:
                          type: array
                          items:
                            type: string
                          description: Users in this entity
                        createdAt:
                          description: Creation timestamp
                          type: string
                        updatedAt:
                          description: Last modification timestamp
                          type: string
                      required:
                        - id
                        - legacyId
                        - name
                        - status
                        - accountIds
                        - memberIds
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /entities/{id}:
    get:
      operationId: entities-findById
      summary: Get a single entity
      description: Find an entity by ID.
      tags:
        - entity
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the target entity
          required: true
          description: Id of the target entity
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Entity ID
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  name:
                    type: string
                    description: Entity name
                  status:
                    type: string
                    enum:
                      - ACTIVE
                      - INACTIVE
                    description: Entity status
                  accountIds:
                    type: array
                    items:
                      type: string
                    description: Accounts in this entity
                  memberIds:
                    type: array
                    items:
                      type: string
                    description: Users in this entity
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                required:
                  - id
                  - legacyId
                  - name
                  - status
                  - accountIds
                  - memberIds
                  - createdAt
                  - updatedAt
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /requests:
    get:
      operationId: requests-list
      summary: List requests
      tags:
        - request
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: type
          schema:
            anyOf:
              - type: array
                items:
                  type: string
                  enum:
                    - UPDATE_QUORUM
                    - CREATE_TRANSACTION
                    - SIGN_MESSAGE
                    - SIGN_DIGESTS
                    - CREATE_ACCOUNT
                    - EDIT_ACCOUNT
                    - CREATE_GROUP
                    - EDIT_GROUP
                    - REVOKE_GROUP
                    - CREATE_WHITELIST
                    - EDIT_WHITELIST
                    - CREATE_ENTITY
                    - EDIT_ENTITY
                    - REVOKE_ENTITY
                    - CREATE_PSD_USER
                    - CREATE_API_USER
                    - CREATE_API_USER_ACCESS
                    - REVOKE_USER
                    - EDIT_WORKSPACE_RULE
                    - CREATE_SCICONFIG
                    - EDIT_SCICONFIG
                    - CREATE_API_KEY
                    - EDIT_API_KEY
                    - REVOKE_API_KEY
                    - CREATE_POLICY
                    - EDIT_POLICY
                    - EDIT_TOKEN_RULE
                    - TRADELINK_CREATE_CUSTODIAN
                    - TRADELINK_EDIT_CUSTODIAN
                    - TRADELINK_CREATE_EXCHANGE
                    - TRADELINK_EDIT_EXCHANGE
                    - TRADELINK_CREATE_ASSET_MANAGER
                    - TRADELINK_EDIT_ASSET_MANAGER
                    - TRADELINK_ACTIVATE_ACCOUNT
                    - TRADELINK_ADJUST_PLEDGE
                    - TRADELINK_CREATE_SETTLEMENT
                    - TRADELINK_FORCE_UNPLEDGE
                    - TRADELINK_ARBITRATE
                    - TRADELINK_WITHDRAW
                    - TRADELINK_REPLEDGE
                description: Multiple types
              - type: string
                enum:
                  - UPDATE_QUORUM
                  - CREATE_TRANSACTION
                  - SIGN_MESSAGE
                  - SIGN_DIGESTS
                  - CREATE_ACCOUNT
                  - EDIT_ACCOUNT
                  - CREATE_GROUP
                  - EDIT_GROUP
                  - REVOKE_GROUP
                  - CREATE_WHITELIST
                  - EDIT_WHITELIST
                  - CREATE_ENTITY
                  - EDIT_ENTITY
                  - REVOKE_ENTITY
                  - CREATE_PSD_USER
                  - CREATE_API_USER
                  - CREATE_API_USER_ACCESS
                  - REVOKE_USER
                  - EDIT_WORKSPACE_RULE
                  - CREATE_SCICONFIG
                  - EDIT_SCICONFIG
                  - CREATE_API_KEY
                  - EDIT_API_KEY
                  - REVOKE_API_KEY
                  - CREATE_POLICY
                  - EDIT_POLICY
                  - EDIT_TOKEN_RULE
                  - TRADELINK_CREATE_CUSTODIAN
                  - TRADELINK_EDIT_CUSTODIAN
                  - TRADELINK_CREATE_EXCHANGE
                  - TRADELINK_EDIT_EXCHANGE
                  - TRADELINK_CREATE_ASSET_MANAGER
                  - TRADELINK_EDIT_ASSET_MANAGER
                  - TRADELINK_ACTIVATE_ACCOUNT
                  - TRADELINK_ADJUST_PLEDGE
                  - TRADELINK_CREATE_SETTLEMENT
                  - TRADELINK_FORCE_UNPLEDGE
                  - TRADELINK_ARBITRATE
                  - TRADELINK_WITHDRAW
                  - TRADELINK_REPLEDGE
                description: Single type
            description: Search by request type
        - in: query
          name: state
          schema:
            anyOf:
              - type: array
                items:
                  type: string
                  enum:
                    - INITIAL
                    - PENDING_APPROVAL
                    - EXECUTING
                    - EXECUTED
                    - FAILED
                    - ABORTED
                    - BLOCKED
                    - EXPIRED
                    - STUCK
                description: Multiple states
              - type: string
                enum:
                  - INITIAL
                  - PENDING_APPROVAL
                  - EXECUTING
                  - EXECUTED
                  - FAILED
                  - ABORTED
                  - BLOCKED
                  - EXPIRED
                  - STUCK
                description: Single state
            description: Search by request state
        - in: query
          name: targetId
          schema:
            type: string
            description: Search by target ID
        - in: query
          name: createdBy
          schema:
            type: string
            description: Search by request creator (user ID or 'me')
        - in: query
          name: reviewedBy
          schema:
            type: string
            description: Search by user who has already reviewed (user ID or 'me')
        - in: query
          name: pendingBy
          schema:
            type: string
            description: Search by user who has a pending review for the request (user ID or
              'me')
        - in: query
          name: sortBy
          schema:
            default: createdAt
            description: Sort by attribute
            type: string
            enum:
              - state
              - expiresAt
              - createdAt
              - updatedAt
        - in: query
          name: sortOrder
          schema:
            default: asc
            description: Sort order
            type: string
            enum:
              - asc
              - desc
        - in: query
          name: fromDate
          schema:
            description: Search by createdAt >= this date (inclusive)
            type: string
        - in: query
          name: toDate
          schema:
            description: Search by createdAt <= this date (inclusive)
            type: string
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      $ref: "#/components/schemas/VaultRequestResponse"
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /requests/{id}:
    get:
      operationId: requests-findById
      summary: Get a request by ID
      tags:
        - request
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the request
          required: true
          description: Id of the request
        - in: query
          name: withInflight
          schema:
            default: false
            description: Include extra inflight information
            type: boolean
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VaultRequestResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /requests/{id}/challenge:
    get:
      operationId: requests-getChallenge
      summary: Get the challenge of the specified request for current user
      tags:
        - request
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the request
          required: true
          description: Id of the request
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  pubKey:
                    type: string
                    description: Public key of the current user
                  challenge:
                    oneOf:
                      - type: object
                        properties:
                          challengeType:
                            type: string
                            const: PSD
                          wActions:
                            type: array
                            items:
                              type: string
                            description: Wrapped blobs that describe the screens to display
                          handshake:
                            type: string
                            description: Handshake for the HSM <-> PSD communication
                          handshakeAttestation:
                            type: object
                            properties:
                              codeHash:
                                type: string
                                format: base64
                                contentEncoding: base64
                                pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                                description: Hash of the executable that generated this certificate
                              attestationPub:
                                type: string
                                format: base64
                                contentEncoding: base64
                                pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                                description: Attestation public key
                              certificate:
                                type: string
                                format: base64
                                contentEncoding: base64
                                pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                                description: Certificate bytes
                              signature:
                                type: string
                                format: base64
                                contentEncoding: base64
                                pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                                description: Certificate signature
                            required:
                              - codeHash
                              - attestationPub
                              - certificate
                              - signature
                            additionalProperties: false
                            description: Handshake attestation to verify secure channel between HSM & PSD
                          partitionId:
                            type: string
                            description: HSM partition id (maybe not useful)
                        required:
                          - challengeType
                          - wActions
                          - handshake
                          - handshakeAttestation
                          - partitionId
                        additionalProperties: false
                      - type: object
                        properties:
                          challengeType:
                            type: string
                            const: API
                          payload:
                            type: object
                            properties:
                              approve:
                                type: string
                                description: JSON payload to sign (as JWS) to approve
                              reject:
                                type: string
                                description: JSON payload to sign (as JWS) to reject
                            required:
                              - approve
                              - reject
                            additionalProperties: false
                            description: JSON payload to approve and to reject
                        required:
                          - challengeType
                          - payload
                        additionalProperties: false
                      - type: object
                        properties:
                          challengeType:
                            type: string
                            const: SOFT
                        required:
                          - challengeType
                        additionalProperties: false
                    description: Challenge data to sign with the user's private key
                    type: object
                required:
                  - pubKey
                  - challenge
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /requests/transaction/sui:
    post:
      operationId: requests-createSuiTransaction
      summary: Create a Sui transaction request
      tags:
        - request
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                accountId:
                  type: string
                  minLength: 1
                  description: Target account id
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/SuiLikeSendData"
                    - $ref: "#/components/schemas/SuiLikeTransferTokenData"
                    - $ref: "#/components/schemas/SuiLikeStakeData"
                    - $ref: "#/components/schemas/SuiLikeUnstakeData"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendData"
                      SUI_LIKE_SEND_TOKEN: "#/components/schemas/SuiLikeTransferTokenData"
                      SUI_LIKE_STAKE: "#/components/schemas/SuiLikeStakeData"
                      SUI_LIKE_UNSTAKE: "#/components/schemas/SuiLikeUnstakeData"
                note:
                  description: Optional request note
                  type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
              required:
                - accountId
                - transaction
              description: Transaction request data
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    const: CREATE_TRANSACTION
                  data:
                    type: object
                    properties:
                      accountId:
                        type: string
                      transaction:
                        oneOf:
                          - $ref: "#/components/schemas/SuiLikeSendDataOutput"
                          - $ref: "#/components/schemas/SuiLikeTransferTokenDataOutput"
                          - $ref: "#/components/schemas/SuiLikeStakeDataOutput"
                          - $ref: "#/components/schemas/SuiLikeUnstakeDataOutput"
                        type: object
                        discriminator:
                          propertyName: type
                          mapping:
                            SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendDataOutput"
                            SUI_LIKE_SEND_TOKEN: "#/components/schemas/SuiLikeTransferTokenDataOutput"
                            SUI_LIKE_STAKE: "#/components/schemas/SuiLikeStakeDataOutput"
                            SUI_LIKE_UNSTAKE: "#/components/schemas/SuiLikeUnstakeDataOutput"
                    required:
                      - accountId
                      - transaction
                    additionalProperties: false
                  id:
                    type: string
                    description: Request unique identifier
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  state:
                    type: string
                    enum:
                      - INITIAL
                      - PENDING_APPROVAL
                      - EXECUTING
                      - EXECUTED
                      - FAILED
                      - ABORTED
                      - BLOCKED
                      - EXPIRED
                      - STUCK
                    description: Request state
                  reviewSteps:
                    type: array
                    items:
                      type: object
                      properties:
                        stageName:
                          type: string
                          pattern: ^\w+$
                          description: The review stage name
                        quorum:
                          type: integer
                          minimum: 1
                          maximum: 9007199254740991
                          description: Quorum for the review step
                      required:
                        - stageName
                        - quorum
                      additionalProperties: false
                    description: Request review steps
                  currentStepIndex:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                    description: Index of the current approval step
                  expiresAt:
                    description: Request expiration date
                    type: string
                  expiredAt:
                    description: "Deprecated: use expiresAt"
                    type: string
                  targetId:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Optional ID of the target object
                  note:
                    anyOf:
                      - type: object
                        properties:
                          title:
                            type: string
                            description: Note title
                          content:
                            type: string
                            description: Note content
                        required:
                          - title
                          - content
                        additionalProperties: false
                      - type: "null"
                    description: Optional request note
                  reviews:
                    type: array
                    items:
                      type: object
                      properties:
                        stepIndex:
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                          description: Index of the governance step in the request workflow
                        userId:
                          type: string
                          description: Reviewer id
                        groupName:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Group name if the reviewer was part of an operator group
                        status:
                          type: string
                          enum:
                            - PENDING
                            - QUEUED
                            - APPROVED
                            - REJECTED
                            - OBSOLETE
                          description: Review status
                        createdAt:
                          description: Created date
                          type: string
                        updatedAt:
                          description: Updated date
                          type: string
                      required:
                        - stepIndex
                        - userId
                        - groupName
                        - status
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Requests reviews
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                  createdById:
                    type: string
                    description: ID of the user who created the request
                  inflight:
                    description: Extra information if the request is currently being processed
                    type: object
                    properties:
                      lastError:
                        anyOf:
                          - type: string
                          - type: "null"
                        description: Error message from the last failure
                      numFailed:
                        type: integer
                        minimum: -9007199254740991
                        maximum: 9007199254740991
                        description: Number of failures so far
                      retryAfter:
                        description: Date after which next retry is scheduled
                        type: string
                    required:
                      - lastError
                      - numFailed
                      - retryAfter
                    additionalProperties: false
                required:
                  - type
                  - data
                  - id
                  - legacyId
                  - state
                  - reviewSteps
                  - currentStepIndex
                  - expiresAt
                  - targetId
                  - note
                  - reviews
                  - createdAt
                  - updatedAt
                  - createdById
                additionalProperties: false
                description: Transaction request
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /requests/transaction/ethereum:
    post:
      operationId: requests-createEthTransaction
      summary: Create an Ethereum transaction request
      tags:
        - request
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                accountId:
                  type: string
                  minLength: 1
                  description: Target account id
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/EthereumLikeDeployContractData"
                    - $ref: "#/components/schemas/EthereumLikeExecuteContractData"
                    - $ref: "#/components/schemas/EthereumLikeSendData"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      ETHEREUM_LIKE_DEPLOY_CONTRACT: "#/components/schemas/EthereumLikeDeployContractData"
                      ETHEREUM_LIKE_EXECUTE_CONTRACT: "#/components/schemas/EthereumLikeExecuteContractData"
                      ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendData"
                note:
                  description: Optional request note
                  type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
              required:
                - accountId
                - transaction
              description: Transaction request data
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    const: CREATE_TRANSACTION
                  data:
                    type: object
                    properties:
                      accountId:
                        type: string
                      transaction:
                        oneOf:
                          - $ref: "#/components/schemas/EthereumLikeDeployContractDataOutput"
                          - $ref: "#/components/schemas/EthereumLikeExecuteContractDataOutput"
                          - $ref: "#/components/schemas/EthereumLikeSendDataOutput"
                        type: object
                        discriminator:
                          propertyName: type
                          mapping:
                            ETHEREUM_LIKE_DEPLOY_CONTRACT: "#/components/schemas/EthereumLikeDeployContract\
                              DataOutput"
                            ETHEREUM_LIKE_EXECUTE_CONTRACT: "#/components/schemas/EthereumLikeExecuteContra\
                              ctDataOutput"
                            ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendDataOutput"
                    required:
                      - accountId
                      - transaction
                    additionalProperties: false
                  id:
                    type: string
                    description: Request unique identifier
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  state:
                    type: string
                    enum:
                      - INITIAL
                      - PENDING_APPROVAL
                      - EXECUTING
                      - EXECUTED
                      - FAILED
                      - ABORTED
                      - BLOCKED
                      - EXPIRED
                      - STUCK
                    description: Request state
                  reviewSteps:
                    type: array
                    items:
                      type: object
                      properties:
                        stageName:
                          type: string
                          pattern: ^\w+$
                          description: The review stage name
                        quorum:
                          type: integer
                          minimum: 1
                          maximum: 9007199254740991
                          description: Quorum for the review step
                      required:
                        - stageName
                        - quorum
                      additionalProperties: false
                    description: Request review steps
                  currentStepIndex:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                    description: Index of the current approval step
                  expiresAt:
                    description: Request expiration date
                    type: string
                  expiredAt:
                    description: "Deprecated: use expiresAt"
                    type: string
                  targetId:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Optional ID of the target object
                  note:
                    anyOf:
                      - type: object
                        properties:
                          title:
                            type: string
                            description: Note title
                          content:
                            type: string
                            description: Note content
                        required:
                          - title
                          - content
                        additionalProperties: false
                      - type: "null"
                    description: Optional request note
                  reviews:
                    type: array
                    items:
                      type: object
                      properties:
                        stepIndex:
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                          description: Index of the governance step in the request workflow
                        userId:
                          type: string
                          description: Reviewer id
                        groupName:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Group name if the reviewer was part of an operator group
                        status:
                          type: string
                          enum:
                            - PENDING
                            - QUEUED
                            - APPROVED
                            - REJECTED
                            - OBSOLETE
                          description: Review status
                        createdAt:
                          description: Created date
                          type: string
                        updatedAt:
                          description: Updated date
                          type: string
                      required:
                        - stepIndex
                        - userId
                        - groupName
                        - status
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Requests reviews
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                  createdById:
                    type: string
                    description: ID of the user who created the request
                  inflight:
                    description: Extra information if the request is currently being processed
                    type: object
                    properties:
                      lastError:
                        anyOf:
                          - type: string
                          - type: "null"
                        description: Error message from the last failure
                      numFailed:
                        type: integer
                        minimum: -9007199254740991
                        maximum: 9007199254740991
                        description: Number of failures so far
                      retryAfter:
                        description: Date after which next retry is scheduled
                        type: string
                    required:
                      - lastError
                      - numFailed
                      - retryAfter
                    additionalProperties: false
                required:
                  - type
                  - data
                  - id
                  - legacyId
                  - state
                  - reviewSteps
                  - currentStepIndex
                  - expiresAt
                  - targetId
                  - note
                  - reviews
                  - createdAt
                  - updatedAt
                  - createdById
                additionalProperties: false
                description: Transaction request
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /requests/transaction/hedera:
    post:
      operationId: requests-createHederaTransaction
      summary: Create a Hedera transaction request
      tags:
        - request
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                accountId:
                  type: string
                  minLength: 1
                  description: Target account id
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/HederaLikeSendData"
                    - $ref: "#/components/schemas/HederaLikeSendTokenData"
                    - $ref: "#/components/schemas/HederaLikeStakeData"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendData"
                      HEDERA_LIKE_SEND_TOKEN: "#/components/schemas/HederaLikeSendTokenData"
                      HEDERA_LIKE_STAKE: "#/components/schemas/HederaLikeStakeData"
                note:
                  description: Optional request note
                  type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
              required:
                - accountId
                - transaction
              description: Transaction request data
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    const: CREATE_TRANSACTION
                  data:
                    type: object
                    properties:
                      accountId:
                        type: string
                      transaction:
                        oneOf:
                          - $ref: "#/components/schemas/HederaLikeSendDataOutput"
                          - $ref: "#/components/schemas/HederaLikeSendTokenDataOutput"
                          - $ref: "#/components/schemas/HederaLikeStakeDataOutput"
                        type: object
                        discriminator:
                          propertyName: type
                          mapping:
                            HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendDataOutput"
                            HEDERA_LIKE_SEND_TOKEN: "#/components/schemas/HederaLikeSendTokenDataOutput"
                            HEDERA_LIKE_STAKE: "#/components/schemas/HederaLikeStakeDataOutput"
                    required:
                      - accountId
                      - transaction
                    additionalProperties: false
                  id:
                    type: string
                    description: Request unique identifier
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  state:
                    type: string
                    enum:
                      - INITIAL
                      - PENDING_APPROVAL
                      - EXECUTING
                      - EXECUTED
                      - FAILED
                      - ABORTED
                      - BLOCKED
                      - EXPIRED
                      - STUCK
                    description: Request state
                  reviewSteps:
                    type: array
                    items:
                      type: object
                      properties:
                        stageName:
                          type: string
                          pattern: ^\w+$
                          description: The review stage name
                        quorum:
                          type: integer
                          minimum: 1
                          maximum: 9007199254740991
                          description: Quorum for the review step
                      required:
                        - stageName
                        - quorum
                      additionalProperties: false
                    description: Request review steps
                  currentStepIndex:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                    description: Index of the current approval step
                  expiresAt:
                    description: Request expiration date
                    type: string
                  expiredAt:
                    description: "Deprecated: use expiresAt"
                    type: string
                  targetId:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Optional ID of the target object
                  note:
                    anyOf:
                      - type: object
                        properties:
                          title:
                            type: string
                            description: Note title
                          content:
                            type: string
                            description: Note content
                        required:
                          - title
                          - content
                        additionalProperties: false
                      - type: "null"
                    description: Optional request note
                  reviews:
                    type: array
                    items:
                      type: object
                      properties:
                        stepIndex:
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                          description: Index of the governance step in the request workflow
                        userId:
                          type: string
                          description: Reviewer id
                        groupName:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Group name if the reviewer was part of an operator group
                        status:
                          type: string
                          enum:
                            - PENDING
                            - QUEUED
                            - APPROVED
                            - REJECTED
                            - OBSOLETE
                          description: Review status
                        createdAt:
                          description: Created date
                          type: string
                        updatedAt:
                          description: Updated date
                          type: string
                      required:
                        - stepIndex
                        - userId
                        - groupName
                        - status
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Requests reviews
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                  createdById:
                    type: string
                    description: ID of the user who created the request
                  inflight:
                    description: Extra information if the request is currently being processed
                    type: object
                    properties:
                      lastError:
                        anyOf:
                          - type: string
                          - type: "null"
                        description: Error message from the last failure
                      numFailed:
                        type: integer
                        minimum: -9007199254740991
                        maximum: 9007199254740991
                        description: Number of failures so far
                      retryAfter:
                        description: Date after which next retry is scheduled
                        type: string
                    required:
                      - lastError
                      - numFailed
                      - retryAfter
                    additionalProperties: false
                required:
                  - type
                  - data
                  - id
                  - legacyId
                  - state
                  - reviewSteps
                  - currentStepIndex
                  - expiresAt
                  - targetId
                  - note
                  - reviews
                  - createdAt
                  - updatedAt
                  - createdById
                additionalProperties: false
                description: Transaction request
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /requests/transaction/canton:
    post:
      operationId: requests-createCantonTransaction
      summary: Create a Canton transaction request
      tags:
        - request
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                accountId:
                  type: string
                  minLength: 1
                  description: Target account id
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/CantonLikeSendData"
                    - $ref: "#/components/schemas/CantonLikeSendTokenData"
                    - $ref: "#/components/schemas/CantonLikeWithdrawData"
                    - $ref: "#/components/schemas/CantonLikeReceiveData"
                    - $ref: "#/components/schemas/CantonLikePreApprovalData"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendData"
                      CANTON_LIKE_SEND_TOKEN: "#/components/schemas/CantonLikeSendTokenData"
                      CANTON_LIKE_WITHDRAW: "#/components/schemas/CantonLikeWithdrawData"
                      CANTON_LIKE_RECEIVE: "#/components/schemas/CantonLikeReceiveData"
                      CANTON_LIKE_PRE_APPROVAL: "#/components/schemas/CantonLikePreApprovalData"
                note:
                  description: Optional request note
                  type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
              required:
                - accountId
                - transaction
              description: Transaction request data
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    const: CREATE_TRANSACTION
                  data:
                    type: object
                    properties:
                      accountId:
                        type: string
                      transaction:
                        oneOf:
                          - $ref: "#/components/schemas/CantonLikeSendDataOutput"
                          - $ref: "#/components/schemas/CantonLikeSendTokenDataOutput"
                          - $ref: "#/components/schemas/CantonLikeWithdrawDataOutput"
                          - $ref: "#/components/schemas/CantonLikeReceiveDataOutput"
                          - $ref: "#/components/schemas/CantonLikePreApprovalDataOutput"
                        type: object
                        discriminator:
                          propertyName: type
                          mapping:
                            CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendDataOutput"
                            CANTON_LIKE_SEND_TOKEN: "#/components/schemas/CantonLikeSendTokenDataOutput"
                            CANTON_LIKE_WITHDRAW: "#/components/schemas/CantonLikeWithdrawDataOutput"
                            CANTON_LIKE_RECEIVE: "#/components/schemas/CantonLikeReceiveDataOutput"
                            CANTON_LIKE_PRE_APPROVAL: "#/components/schemas/CantonLikePreApprovalDataOutput"
                    required:
                      - accountId
                      - transaction
                    additionalProperties: false
                  id:
                    type: string
                    description: Request unique identifier
                  legacyId:
                    type: number
                    description: Legacy internal unique identifier (for retro-compatibility)
                  state:
                    type: string
                    enum:
                      - INITIAL
                      - PENDING_APPROVAL
                      - EXECUTING
                      - EXECUTED
                      - FAILED
                      - ABORTED
                      - BLOCKED
                      - EXPIRED
                      - STUCK
                    description: Request state
                  reviewSteps:
                    type: array
                    items:
                      type: object
                      properties:
                        stageName:
                          type: string
                          pattern: ^\w+$
                          description: The review stage name
                        quorum:
                          type: integer
                          minimum: 1
                          maximum: 9007199254740991
                          description: Quorum for the review step
                      required:
                        - stageName
                        - quorum
                      additionalProperties: false
                    description: Request review steps
                  currentStepIndex:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                    description: Index of the current approval step
                  expiresAt:
                    description: Request expiration date
                    type: string
                  expiredAt:
                    description: "Deprecated: use expiresAt"
                    type: string
                  targetId:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Optional ID of the target object
                  note:
                    anyOf:
                      - type: object
                        properties:
                          title:
                            type: string
                            description: Note title
                          content:
                            type: string
                            description: Note content
                        required:
                          - title
                          - content
                        additionalProperties: false
                      - type: "null"
                    description: Optional request note
                  reviews:
                    type: array
                    items:
                      type: object
                      properties:
                        stepIndex:
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                          description: Index of the governance step in the request workflow
                        userId:
                          type: string
                          description: Reviewer id
                        groupName:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Group name if the reviewer was part of an operator group
                        status:
                          type: string
                          enum:
                            - PENDING
                            - QUEUED
                            - APPROVED
                            - REJECTED
                            - OBSOLETE
                          description: Review status
                        createdAt:
                          description: Created date
                          type: string
                        updatedAt:
                          description: Updated date
                          type: string
                      required:
                        - stepIndex
                        - userId
                        - groupName
                        - status
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Requests reviews
                  createdAt:
                    description: Creation timestamp
                    type: string
                  updatedAt:
                    description: Last modification timestamp
                    type: string
                  createdById:
                    type: string
                    description: ID of the user who created the request
                  inflight:
                    description: Extra information if the request is currently being processed
                    type: object
                    properties:
                      lastError:
                        anyOf:
                          - type: string
                          - type: "null"
                        description: Error message from the last failure
                      numFailed:
                        type: integer
                        minimum: -9007199254740991
                        maximum: 9007199254740991
                        description: Number of failures so far
                      retryAfter:
                        description: Date after which next retry is scheduled
                        type: string
                    required:
                      - lastError
                      - numFailed
                      - retryAfter
                    additionalProperties: false
                required:
                  - type
                  - data
                  - id
                  - legacyId
                  - state
                  - reviewSteps
                  - currentStepIndex
                  - expiresAt
                  - targetId
                  - note
                  - reviews
                  - createdAt
                  - updatedAt
                  - createdById
                additionalProperties: false
                description: Transaction request
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /requests/create-account:
    post:
      operationId: requests-createAccount
      summary: Create an account
      tags:
        - request
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 40
                  description: Account name
                currency:
                  type: string
                  minLength: 1
                  maxLength: 40
                  pattern: ^\w+$
                  description: Will be deprecated soon, use network instead. Currency
                index:
                  description: Account index
                  type: number
                  minimum: 0
                contractAddress:
                  anyOf:
                    - type: string
                      minLength: 1
                    - type: "null"
                  description: Token issuer
                tokenIdentifier:
                  anyOf:
                    - type: string
                      minLength: 1
                    - type: "null"
                  description: Token identifier
                policyId:
                  type: string
                  minLength: 1
                  description: Account policy
              required:
                - name
                - currency
                - contractAddress
                - tokenIdentifier
                - policyId
              description: Create account request data (for API admin only)
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VaultRequestResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /requests/sign-digests:
    post:
      operationId: requests-signDigests
      summary: Sign digests
      tags:
        - request
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                accountId:
                  type: string
                  minLength: 1
                  description: Target account id
                digests:
                  type: array
                  items:
                    type: object
                    properties:
                      digest:
                        type: string
                        pattern: ^[0-9a-fA-F]+$
                        description: The hex string digest to sign
                      derivationPath:
                        type: string
                        minLength: 1
                        description: The derivation path with which to sign the digest
                    required:
                      - digest
                      - derivationPath
                  description: The digests to sign
              required:
                - accountId
                - digests
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VaultRequestResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /requests/{id}/approve:
    post:
      operationId: requests-approve
      summary: Approve a request from the current user
      tags:
        - request
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: ID of the request to approve
          required: true
          description: ID of the request to approve
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  oneOf:
                    - type: object
                      properties:
                        challengeType:
                          type: string
                          enum:
                            - PSD
                            - API
                          description: Challenge type
                        signature:
                          type: string
                          minLength: 1
                          description: Challenge signature
                      required:
                        - challengeType
                        - signature
                    - type: object
                      properties:
                        challengeType:
                          type: string
                          enum:
                            - SOFT
                          description: Challenge type
                      required:
                        - challengeType
                  type: object
              required:
                - data
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VaultRequestResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /requests/{id}/reject:
    post:
      operationId: requests-reject
      summary: Reject a request from the current user
      tags:
        - request
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: ID of the request to reject
          required: true
          description: ID of the request to reject
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  anyOf:
                    - type: object
                      properties:
                        signature:
                          type: string
                          minLength: 1
                        challengeType:
                          type: string
                          const: API
                      required:
                        - signature
                        - challengeType
                    - type: "null"
                  description: Response to the challenge
              required:
                - data
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VaultRequestResponse"
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
  /assets/currencies:
    get:
      operationId: assets-currencies
      summary: List currencies
      tags:
        - assets
      security:
        - Authorization: []
      parameters:
        - in: query
          name: cursor
          schema:
            type: string
            description: Optional cursor to get next pages (based on the `next` key on query
              response)
        - in: query
          name: search
          schema:
            type: string
            description: Search by name, ticker
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  next:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Next page cursor
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Asset identifier
                        name:
                          type: string
                          description: Asset name
                        ticker:
                          type: string
                          description: Asset ticker
                        type:
                          type: string
                          enum:
                            - BITCOIN_LIKE
                            - CANTON_LIKE
                            - CARDANO_LIKE
                            - ETHEREUM_LIKE
                            - GENERIC_LIKE
                            - HEDERA_LIKE
                            - POLKADOT_LIKE
                            - RAW_SIGNING
                            - RIPPLE_LIKE
                            - SOLANA_LIKE
                            - STELLAR_LIKE
                            - SUI_LIKE
                            - TEZOS_LIKE
                            - TRON_LIKE
                          description: Asset type
                        units:
                          type: array
                          items:
                            type: object
                            properties:
                              code:
                                type: string
                                description: "Unit denomination, e.g: wei, Gwei, etc."
                              name:
                                type: string
                                description: Full name
                              magnitude:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                                description: Number of decimals place
                            required:
                              - code
                              - name
                              - magnitude
                            additionalProperties: false
                            description: Asset units
                          description: Asset units
                      required:
                        - id
                        - name
                        - ticker
                        - type
                        - units
                      additionalProperties: false
                    description: Array of results
                required:
                  - next
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /assets/tokens:
    get:
      operationId: assets-tokens
      summary: List tokens
      tags:
        - assets
      security:
        - Authorization: []
      parameters:
        - in: query
          name: cursor
          schema:
            type: string
            description: Optional cursor to get next pages (based on the `next` key on query
              response)
        - in: query
          name: search
          schema:
            type: string
            description: Search by name, ticker, or contract address
        - in: query
          name: network
          schema:
            type: string
            description: TODO
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  next:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Next page cursor
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Asset identifier
                        name:
                          type: string
                          description: Asset name
                        ticker:
                          type: string
                          description: Asset ticker
                        type:
                          type: string
                          enum:
                            - BITCOIN_LIKE
                            - CANTON_LIKE
                            - CARDANO_LIKE
                            - ETHEREUM_LIKE
                            - GENERIC_LIKE
                            - HEDERA_LIKE
                            - POLKADOT_LIKE
                            - RAW_SIGNING
                            - RIPPLE_LIKE
                            - SOLANA_LIKE
                            - STELLAR_LIKE
                            - SUI_LIKE
                            - TEZOS_LIKE
                            - TRON_LIKE
                          description: Asset type
                        units:
                          type: array
                          items:
                            type: object
                            properties:
                              code:
                                type: string
                                description: "Unit denomination, e.g: wei, Gwei, etc."
                              name:
                                type: string
                                description: Full name
                              magnitude:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                                description: Number of decimals place
                            required:
                              - code
                              - name
                              - magnitude
                            additionalProperties: false
                            description: Asset units
                          description: Asset units
                        contractAddress:
                          type: string
                          description: Token contract address
                        currency:
                          type: string
                          description: Parent currency
                      required:
                        - id
                        - name
                        - ticker
                        - type
                        - units
                        - contractAddress
                        - currency
                      additionalProperties: false
                    description: Array of results
                required:
                  - next
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /tradelink/network:
    get:
      operationId: tradelink-getNetwork
      summary: Get Tradelink network instance
      description: Get the materialized Tradelink Network configuration of workspace
      tags:
        - tradelink
      security:
        - Authorization: []
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      custodian:
                        type: object
                        properties:
                          id:
                            type: string
                          settlement:
                            type: array
                            items:
                              type: object
                              properties:
                                quorum:
                                  type: number
                                  minimum: 0
                                  description: Number of required approvals for the step
                                userIds:
                                  type: array
                                  items:
                                    type: string
                                    minLength: 1
                                  description: User ids in the step
                              required:
                                - quorum
                                - userIds
                              additionalProperties: false
                              description: Review step with users
                          withdraw:
                            type: array
                            items:
                              type: object
                              properties:
                                quorum:
                                  type: number
                                  minimum: 0
                                  description: Number of required approvals for the step
                                userIds:
                                  type: array
                                  items:
                                    type: string
                                    minLength: 1
                                  description: User ids in the step
                              required:
                                - quorum
                                - userIds
                              additionalProperties: false
                              description: Review step with users
                          arbitration:
                            type: array
                            items:
                              type: object
                              properties:
                                quorum:
                                  type: number
                                  minimum: 0
                                  description: Number of required approvals for the step
                                userIds:
                                  type: array
                                  items:
                                    type: string
                                    minLength: 1
                                  description: User ids in the step
                              required:
                                - quorum
                                - userIds
                              additionalProperties: false
                              description: Review step with users
                        required:
                          - id
                          - settlement
                          - withdraw
                          - arbitration
                        additionalProperties: false
                      exchanges:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - ASSET_MANAGER
                                - EXCHANGE
                            id:
                              type: string
                            tradelinkId:
                              type: string
                            groups:
                              type: array
                              items:
                                type: object
                                properties:
                                  quorum:
                                    type: number
                                    minimum: 0
                                    description: Number of required approvals for the step
                                  userIds:
                                    type: array
                                    items:
                                      type: string
                                      minLength: 1
                                    description: User ids in the step
                                required:
                                  - quorum
                                  - userIds
                                additionalProperties: false
                                description: Review step with users
                            whitelist:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    minLength: 1
                                  currency:
                                    type: string
                                    minLength: 1
                                    maxLength: 40
                                    pattern: ^\w+$
                                    description: Will be deprecated soon, use network instead. Currency
                                  address:
                                    type: string
                                    minLength: 1
                                required:
                                  - name
                                  - currency
                                  - address
                                additionalProperties: false
                          required:
                            - type
                            - id
                            - tradelinkId
                            - groups
                            - whitelist
                          additionalProperties: false
                      assetManagers:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - ASSET_MANAGER
                                - EXCHANGE
                            id:
                              type: string
                            tradelinkId:
                              type: string
                            groups:
                              type: array
                              items:
                                type: object
                                properties:
                                  quorum:
                                    type: number
                                    minimum: 0
                                    description: Number of required approvals for the step
                                  userIds:
                                    type: array
                                    items:
                                      type: string
                                      minLength: 1
                                    description: User ids in the step
                                required:
                                  - quorum
                                  - userIds
                                additionalProperties: false
                                description: Review step with users
                            whitelist:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    minLength: 1
                                  currency:
                                    type: string
                                    minLength: 1
                                    maxLength: 40
                                    pattern: ^\w+$
                                    description: Will be deprecated soon, use network instead. Currency
                                  address:
                                    type: string
                                    minLength: 1
                                required:
                                  - name
                                  - currency
                                  - address
                                additionalProperties: false
                          required:
                            - type
                            - id
                            - tradelinkId
                            - groups
                            - whitelist
                          additionalProperties: false
                    required:
                      - custodian
                      - exchanges
                      - assetManagers
                    additionalProperties: false
                  - type: "null"
        "401": *a2
        "403": *a3
        "500": *a4
  /tradelink/network/blueprint:
    get:
      operationId: tradelink-getNetworkBlueprint
      summary: Get Tradelink network blueprint
      description: Get the Tradelink network blueprint with all available Network
        configuration options
      tags:
        - tradelink
      security:
        - Authorization: []
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      tradelinkId:
                        type: string
                      workspaceName:
                        type: string
                        minLength: 1
                        maxLength: 20
                        pattern: ^[a-z0-9]+$
                      custodian:
                        type: object
                        properties:
                          tradelinkId:
                            type: string
                            description: Unique identifier in Tradelink service
                          name:
                            type: string
                            description: Name
                          code:
                            type: string
                            description: Code
                          logoUrl:
                            type: string
                            description: Logo URL
                        required:
                          - tradelinkId
                          - name
                          - code
                          - logoUrl
                        additionalProperties: false
                      assetManagers:
                        type: array
                        items:
                          type: object
                          properties:
                            tradelinkId:
                              type: string
                              description: Unique identifier in Tradelink service
                            name:
                              type: string
                              description: Name
                            code:
                              type: string
                              description: Code
                            logoUrl:
                              type: string
                              description: Logo URL
                          required:
                            - tradelinkId
                            - name
                            - code
                            - logoUrl
                          additionalProperties: false
                      exchanges:
                        type: array
                        items:
                          type: object
                          properties:
                            tradelinkId:
                              type: string
                              description: Unique identifier in Tradelink service
                            name:
                              type: string
                              description: Name
                            code:
                              type: string
                              description: Code
                            logoUrl:
                              type: string
                              description: Logo URL
                          required:
                            - tradelinkId
                            - name
                            - code
                            - logoUrl
                          additionalProperties: false
                    required:
                      - tradelinkId
                      - workspaceName
                      - custodian
                      - assetManagers
                      - exchanges
                    additionalProperties: false
                  - type: "null"
        "401": *a2
        "403": *a3
        "500": *a4
  /tradelink/settlements:
    get:
      operationId: tradelink-listSettlements
      summary: Get Tradelink settlements
      description: Get the Tradelink settlements for the workspace
      tags:
        - tradelink
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
        - in: query
          name: pledgeId
          schema:
            type: string
        - in: query
          name: accountId
          schema:
            type: string
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Settlement ID
                        pledgeId:
                          type: string
                          description: Pledge ID associated with the settlement
                        state:
                          type: string
                          enum:
                            - REGISTERED
                            - PENDING_REPLEDGE_CREATION_APPROVAL
                            - PENDING_REPLEDGE_APPROVAL
                            - PENDING_CREATION_APPROVAL
                            - PENDING_PRE_APPROVAL
                            - PRE_APPROVED
                            - APPROVED
                            - REJECTED
                            - CONFIRMED
                            - FAILED
                            - CANCELED
                          description: State of the settlement
                        outboundTransactionHash:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Outbound transaction hash of the settlement
                        accountId:
                          type: string
                          description: Account ID associated with the settlement
                        exchangeId:
                          type: string
                          description: Exchange ID associated with the settlement
                      required:
                        - id
                        - pledgeId
                        - state
                        - outboundTransactionHash
                        - accountId
                        - exchangeId
                      additionalProperties: false
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /tradelink/settlements/{settlementId}:
    get:
      operationId: tradelink-getSettlement
      summary: Get Tradelink settlement
      description: Get a Tradelink settlement by its Id
      tags:
        - tradelink
      security:
        - Authorization: []
      parameters:
        - in: path
          name: settlementId
          schema:
            type: string
          required: true
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Settlement ID
                  pledgeId:
                    type: string
                    description: Pledge ID associated with the settlement
                  state:
                    type: string
                    enum:
                      - REGISTERED
                      - PENDING_REPLEDGE_CREATION_APPROVAL
                      - PENDING_REPLEDGE_APPROVAL
                      - PENDING_CREATION_APPROVAL
                      - PENDING_PRE_APPROVAL
                      - PRE_APPROVED
                      - APPROVED
                      - REJECTED
                      - CONFIRMED
                      - FAILED
                      - CANCELED
                    description: State of the settlement
                  outboundTransactionHash:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Outbound transaction hash of the settlement
                  accountId:
                    type: string
                    description: Account ID associated with the settlement
                  exchangeId:
                    type: string
                    description: Exchange ID associated with the settlement
                required:
                  - id
                  - pledgeId
                  - state
                  - outboundTransactionHash
                  - accountId
                  - exchangeId
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /pki/chain-certificate:
    get:
      operationId: pki-getChainCertificate
      summary: Get the PKI certificate chain
      tags:
        - pki
      security:
        - Authorization: []
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                description: Chain certificate response containing certificate files
        "401": *a2
        "403": *a3
        "500": *a4
  /tasks:
    get:
      operationId: userTasks-list
      summary: List user tasks
      tags:
        - userTask
      security:
        - Authorization: []
      parameters:
        - in: query
          name: page
          schema:
            default: 1
            description: Which page to fetch
            type: integer
            minimum: 1
            maximum: 9007199254740991
        - in: query
          name: pageSize
          schema:
            default: 30
            description: Page size to use
            type: integer
            minimum: 1
            maximum: 30
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  page:
                    type: number
                    description: Current page
                  next:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Next page or null if there is none
                  prev:
                    anyOf:
                      - type: number
                      - type: "null"
                    description: Previous page or null if there is none
                  pageSize:
                    type: number
                    description: Max count of items per page
                  total:
                    type: number
                    description: Total count of items
                  results:
                    type: array
                    items:
                      allOf:
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              pattern: ^[\w-]+$
                              description: Task ID
                            status:
                              type: string
                              enum:
                                - PENDING
                                - COMPLETED
                                - FAILED
                              description: Entity status
                            createdById:
                              type: string
                              minLength: 1
                              pattern: ^[\w-]+$
                              description: Created by user ID
                            doneAt:
                              anyOf:
                                - type: string
                                - type: "null"
                              description: Done timestamp
                            createdAt:
                              description: Creation timestamp
                              type: string
                            updatedAt:
                              description: Last modification timestamp
                              type: string
                          required:
                            - id
                            - status
                            - createdById
                            - doneAt
                            - createdAt
                            - updatedAt
                          additionalProperties: false
                        - oneOf:
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: EXPORT_REQUESTS_TO_CSV
                                  description: Task type
                                input:
                                  type: object
                                  properties:
                                    requestType:
                                      type: string
                                      enum:
                                        - UPDATE_QUORUM
                                        - CREATE_TRANSACTION
                                        - SIGN_MESSAGE
                                        - SIGN_DIGESTS
                                        - CREATE_ACCOUNT
                                        - EDIT_ACCOUNT
                                        - CREATE_GROUP
                                        - EDIT_GROUP
                                        - REVOKE_GROUP
                                        - CREATE_WHITELIST
                                        - EDIT_WHITELIST
                                        - CREATE_ENTITY
                                        - EDIT_ENTITY
                                        - REVOKE_ENTITY
                                        - CREATE_PSD_USER
                                        - CREATE_API_USER
                                        - CREATE_API_USER_ACCESS
                                        - REVOKE_USER
                                        - EDIT_WORKSPACE_RULE
                                        - CREATE_SCICONFIG
                                        - EDIT_SCICONFIG
                                        - CREATE_API_KEY
                                        - EDIT_API_KEY
                                        - REVOKE_API_KEY
                                        - CREATE_POLICY
                                        - EDIT_POLICY
                                        - EDIT_TOKEN_RULE
                                        - TRADELINK_CREATE_CUSTODIAN
                                        - TRADELINK_EDIT_CUSTODIAN
                                        - TRADELINK_CREATE_EXCHANGE
                                        - TRADELINK_EDIT_EXCHANGE
                                        - TRADELINK_CREATE_ASSET_MANAGER
                                        - TRADELINK_EDIT_ASSET_MANAGER
                                        - TRADELINK_ACTIVATE_ACCOUNT
                                        - TRADELINK_ADJUST_PLEDGE
                                        - TRADELINK_CREATE_SETTLEMENT
                                        - TRADELINK_FORCE_UNPLEDGE
                                        - TRADELINK_ARBITRATE
                                        - TRADELINK_WITHDRAW
                                        - TRADELINK_REPLEDGE
                                    fromDate:
                                      type: string
                                    toDate:
                                      type: string
                                  additionalProperties: false
                                  description: Task input
                                result:
                                  anyOf:
                                    - oneOf:
                                        - type: object
                                          properties:
                                            success:
                                              type: boolean
                                              const: true
                                            output:
                                              type: object
                                              properties:
                                                numExported:
                                                  type: integer
                                                  minimum: 0
                                                  maximum: 9007199254740991
                                                outputUrl:
                                                  type: string
                                                  format: uri
                                              required:
                                                - numExported
                                                - outputUrl
                                              additionalProperties: false
                                          required:
                                            - success
                                            - output
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            success:
                                              type: boolean
                                              const: false
                                            message:
                                              type: string
                                          required:
                                            - success
                                            - message
                                          additionalProperties: false
                                      type: object
                                    - type: "null"
                                  description: Task result
                              required:
                                - type
                                - input
                                - result
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  const: PING
                                  description: Task type
                                input:
                                  type: object
                                  properties:
                                    ping:
                                      type: string
                                  required:
                                    - ping
                                  additionalProperties: false
                                  description: Task input
                                result:
                                  anyOf:
                                    - oneOf:
                                        - type: object
                                          properties:
                                            success:
                                              type: boolean
                                              const: true
                                            output:
                                              type: object
                                              properties:
                                                pong:
                                                  type: string
                                                  const: pong
                                              required:
                                                - pong
                                              additionalProperties: false
                                          required:
                                            - success
                                            - output
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            success:
                                              type: boolean
                                              const: false
                                            message:
                                              type: string
                                          required:
                                            - success
                                            - message
                                          additionalProperties: false
                                      type: object
                                    - type: "null"
                                  description: Task result
                              required:
                                - type
                                - input
                                - result
                              additionalProperties: false
                          type: object
                    description: Array of results
                required:
                  - page
                  - next
                  - prev
                  - pageSize
                  - total
                  - results
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /tasks/{id}:
    get:
      operationId: userTasks-findById
      summary: Get user task by ID
      tags:
        - userTask
      security:
        - Authorization: []
      parameters:
        - in: path
          name: id
          schema:
            type: string
            description: Id of the user task
          required: true
          description: Id of the user task
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                allOf:
                  - type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                        pattern: ^[\w-]+$
                        description: Task ID
                      status:
                        type: string
                        enum:
                          - PENDING
                          - COMPLETED
                          - FAILED
                        description: Entity status
                      createdById:
                        type: string
                        minLength: 1
                        pattern: ^[\w-]+$
                        description: Created by user ID
                      doneAt:
                        anyOf:
                          - type: string
                          - type: "null"
                        description: Done timestamp
                      createdAt:
                        description: Creation timestamp
                        type: string
                      updatedAt:
                        description: Last modification timestamp
                        type: string
                    required:
                      - id
                      - status
                      - createdById
                      - doneAt
                      - createdAt
                      - updatedAt
                    additionalProperties: false
                  - oneOf:
                      - type: object
                        properties:
                          type:
                            type: string
                            const: EXPORT_REQUESTS_TO_CSV
                            description: Task type
                          input:
                            type: object
                            properties:
                              requestType:
                                type: string
                                enum:
                                  - UPDATE_QUORUM
                                  - CREATE_TRANSACTION
                                  - SIGN_MESSAGE
                                  - SIGN_DIGESTS
                                  - CREATE_ACCOUNT
                                  - EDIT_ACCOUNT
                                  - CREATE_GROUP
                                  - EDIT_GROUP
                                  - REVOKE_GROUP
                                  - CREATE_WHITELIST
                                  - EDIT_WHITELIST
                                  - CREATE_ENTITY
                                  - EDIT_ENTITY
                                  - REVOKE_ENTITY
                                  - CREATE_PSD_USER
                                  - CREATE_API_USER
                                  - CREATE_API_USER_ACCESS
                                  - REVOKE_USER
                                  - EDIT_WORKSPACE_RULE
                                  - CREATE_SCICONFIG
                                  - EDIT_SCICONFIG
                                  - CREATE_API_KEY
                                  - EDIT_API_KEY
                                  - REVOKE_API_KEY
                                  - CREATE_POLICY
                                  - EDIT_POLICY
                                  - EDIT_TOKEN_RULE
                                  - TRADELINK_CREATE_CUSTODIAN
                                  - TRADELINK_EDIT_CUSTODIAN
                                  - TRADELINK_CREATE_EXCHANGE
                                  - TRADELINK_EDIT_EXCHANGE
                                  - TRADELINK_CREATE_ASSET_MANAGER
                                  - TRADELINK_EDIT_ASSET_MANAGER
                                  - TRADELINK_ACTIVATE_ACCOUNT
                                  - TRADELINK_ADJUST_PLEDGE
                                  - TRADELINK_CREATE_SETTLEMENT
                                  - TRADELINK_FORCE_UNPLEDGE
                                  - TRADELINK_ARBITRATE
                                  - TRADELINK_WITHDRAW
                                  - TRADELINK_REPLEDGE
                              fromDate:
                                type: string
                              toDate:
                                type: string
                            additionalProperties: false
                            description: Task input
                          result:
                            anyOf:
                              - oneOf:
                                  - type: object
                                    properties:
                                      success:
                                        type: boolean
                                        const: true
                                      output:
                                        type: object
                                        properties:
                                          numExported:
                                            type: integer
                                            minimum: 0
                                            maximum: 9007199254740991
                                          outputUrl:
                                            type: string
                                            format: uri
                                        required:
                                          - numExported
                                          - outputUrl
                                        additionalProperties: false
                                    required:
                                      - success
                                      - output
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      success:
                                        type: boolean
                                        const: false
                                      message:
                                        type: string
                                    required:
                                      - success
                                      - message
                                    additionalProperties: false
                                type: object
                              - type: "null"
                            description: Task result
                        required:
                          - type
                          - input
                          - result
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            type: string
                            const: PING
                            description: Task type
                          input:
                            type: object
                            properties:
                              ping:
                                type: string
                            required:
                              - ping
                            additionalProperties: false
                            description: Task input
                          result:
                            anyOf:
                              - oneOf:
                                  - type: object
                                    properties:
                                      success:
                                        type: boolean
                                        const: true
                                      output:
                                        type: object
                                        properties:
                                          pong:
                                            type: string
                                            const: pong
                                        required:
                                          - pong
                                        additionalProperties: false
                                    required:
                                      - success
                                      - output
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      success:
                                        type: boolean
                                        const: false
                                      message:
                                        type: string
                                    required:
                                      - success
                                      - message
                                    additionalProperties: false
                                type: object
                              - type: "null"
                            description: Task result
                        required:
                          - type
                          - input
                          - result
                        additionalProperties: false
                    type: object
        "400": *a1
        "401": *a2
        "403": *a3
        "404": *a5
        "500": *a4
  /compliance/check-transaction:
    post:
      operationId: compliance-checkTransaction
      summary: Check transaction compliance
      description: Check if transaction is not breaching compliance rules.
      tags:
        - compliance
      security:
        - Authorization: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                accountId:
                  type: string
                  description: Id of the target account
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/BitcoinLikeSendData"
                    - $ref: "#/components/schemas/CantonLikeSendData"
                    - $ref: "#/components/schemas/CantonLikeSendTokenData"
                    - $ref: "#/components/schemas/CantonLikeWithdrawData"
                    - $ref: "#/components/schemas/CantonLikeReceiveData"
                    - $ref: "#/components/schemas/CantonLikePreApprovalData"
                    - $ref: "#/components/schemas/CardanoSendData"
                    - $ref: "#/components/schemas/CardanoStakingDelegateData"
                    - $ref: "#/components/schemas/CardanoStakingDeregisterData"
                    - $ref: "#/components/schemas/CardanoStakingRegisterData"
                    - $ref: "#/components/schemas/CardanoStakingWithdrawData"
                    - $ref: "#/components/schemas/EthereumLikeDeployContractData"
                    - $ref: "#/components/schemas/EthereumLikeExecuteContractData"
                    - $ref: "#/components/schemas/EthereumLikeSendData"
                    - $ref: "#/components/schemas/GenericTransactionData"
                    - $ref: "#/components/schemas/HederaLikeSendData"
                    - $ref: "#/components/schemas/HederaLikeSendTokenData"
                    - $ref: "#/components/schemas/HederaLikeStakeData"
                    - $ref: "#/components/schemas/PolkadotLikeAddProxyData"
                    - $ref: "#/components/schemas/PolkadotLikeAnonymousProxyData"
                    - $ref: "#/components/schemas/PolkadotLikeBondData"
                    - $ref: "#/components/schemas/PolkadotLikeBondExtraData"
                    - $ref: "#/components/schemas/PolkadotLikeChillData"
                    - $ref: "#/components/schemas/PolkadotLikeKillAnonymousData"
                    - $ref: "#/components/schemas/PolkadotLikeRebondData"
                    - $ref: "#/components/schemas/PolkadotLikeRemoveProxyData"
                    - $ref: "#/components/schemas/PolkadotLikeSendData"
                    - $ref: "#/components/schemas/PolkadotLikeSetPayeeData"
                    - $ref: "#/components/schemas/PolkadotLikeUnbondData"
                    - $ref: "#/components/schemas/PolkadotLikeWithdrawUnbondedData"
                    - $ref: "#/components/schemas/RippleLikeSendData"
                    - $ref: "#/components/schemas/SolanaLikeCreateDelegateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeDeactivateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeDelegateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeMergeStakeData"
                    - $ref: "#/components/schemas/SolanaLikeSendData"
                    - $ref: "#/components/schemas/SolanaLikeSplitDeactivateStakeData"
                    - $ref: "#/components/schemas/SolanaLikeSplitStakeData"
                    - $ref: "#/components/schemas/SolanaLikeWithdrawStakeData"
                    - $ref: "#/components/schemas/SolanaLikeSendTokenData"
                    - $ref: "#/components/schemas/SolanaLikeFundAndSendTokenData"
                    - $ref: "#/components/schemas/SolanaLikeCreateTokenAccountData"
                    - $ref: "#/components/schemas/StellarLikeSendData"
                    - $ref: "#/components/schemas/SuiLikeSendData"
                    - $ref: "#/components/schemas/SuiLikeTransferTokenData"
                    - $ref: "#/components/schemas/SuiLikeStakeData"
                    - $ref: "#/components/schemas/SuiLikeUnstakeData"
                    - $ref: "#/components/schemas/TezosLikeSendData"
                    - $ref: "#/components/schemas/TezosLikeDelegateData"
                    - $ref: "#/components/schemas/TezosLikeUndelegateData"
                    - $ref: "#/components/schemas/TronLikeSendData"
                    - $ref: "#/components/schemas/TronLikeSendTokenData"
                  description: Transaction data to be checked
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      BITCOIN_LIKE_SEND: "#/components/schemas/BitcoinLikeSendData"
                      CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendData"
                      CANTON_LIKE_SEND_TOKEN: "#/components/schemas/CantonLikeSendTokenData"
                      CANTON_LIKE_WITHDRAW: "#/components/schemas/CantonLikeWithdrawData"
                      CANTON_LIKE_RECEIVE: "#/components/schemas/CantonLikeReceiveData"
                      CANTON_LIKE_PRE_APPROVAL: "#/components/schemas/CantonLikePreApprovalData"
                      CARDANO_LIKE_SEND: "#/components/schemas/CardanoSendData"
                      CARDANO_LIKE_STAKING_DELEGATE: "#/components/schemas/CardanoStakingDelegateData"
                      CARDANO_LIKE_STAKING_DEREGISTER: "#/components/schemas/CardanoStakingDeregisterData"
                      CARDANO_LIKE_STAKING_REGISTER: "#/components/schemas/CardanoStakingRegisterData"
                      CARDANO_LIKE_STAKING_WITHDRAW: "#/components/schemas/CardanoStakingWithdrawData"
                      ETHEREUM_LIKE_DEPLOY_CONTRACT: "#/components/schemas/EthereumLikeDeployContractData"
                      ETHEREUM_LIKE_EXECUTE_CONTRACT: "#/components/schemas/EthereumLikeExecuteContractData"
                      ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendData"
                      GENERIC_TRANSACTION: "#/components/schemas/GenericTransactionData"
                      HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendData"
                      HEDERA_LIKE_SEND_TOKEN: "#/components/schemas/HederaLikeSendTokenData"
                      HEDERA_LIKE_STAKE: "#/components/schemas/HederaLikeStakeData"
                      POLKADOT_LIKE_ADDPROXY: "#/components/schemas/PolkadotLikeAddProxyData"
                      POLKADOT_LIKE_ANONYMOUSPROXY: "#/components/schemas/PolkadotLikeAnonymousProxyData"
                      POLKADOT_LIKE_BOND: "#/components/schemas/PolkadotLikeBondData"
                      POLKADOT_LIKE_BONDEXTRA: "#/components/schemas/PolkadotLikeBondExtraData"
                      POLKADOT_LIKE_CHILL: "#/components/schemas/PolkadotLikeChillData"
                      POLKADOT_LIKE_KILLANONYMOUS: "#/components/schemas/PolkadotLikeKillAnonymousData"
                      POLKADOT_LIKE_REBOND: "#/components/schemas/PolkadotLikeRebondData"
                      POLKADOT_LIKE_REMOVEPROXY: "#/components/schemas/PolkadotLikeRemoveProxyData"
                      POLKADOT_LIKE_SEND: "#/components/schemas/PolkadotLikeSendData"
                      POLKADOT_LIKE_SETPAYEE: "#/components/schemas/PolkadotLikeSetPayeeData"
                      POLKADOT_LIKE_UNBOND: "#/components/schemas/PolkadotLikeUnbondData"
                      POLKADOT_LIKE_WITHDRAWUNBONDED: "#/components/schemas/PolkadotLikeWithdrawUnbondedData"
                      RIPPLE_LIKE_SEND: "#/components/schemas/RippleLikeSendData"
                      SOLANA_LIKE_CREATE_DELEGATE_STAKE: "#/components/schemas/SolanaLikeCreateDelegateStakeData"
                      SOLANA_LIKE_DEACTIVATE_STAKE: "#/components/schemas/SolanaLikeDeactivateStakeData"
                      SOLANA_LIKE_DELEGATE_STAKE: "#/components/schemas/SolanaLikeDelegateStakeData"
                      SOLANA_LIKE_MERGE_STAKE: "#/components/schemas/SolanaLikeMergeStakeData"
                      SOLANA_LIKE_SEND: "#/components/schemas/SolanaLikeSendData"
                      SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE: "#/components/schemas/SolanaLikeSplitDeactivateStakeData"
                      SOLANA_LIKE_SPLIT_STAKE: "#/components/schemas/SolanaLikeSplitStakeData"
                      SOLANA_LIKE_WITHDRAW_STAKE: "#/components/schemas/SolanaLikeWithdrawStakeData"
                      SOLANA_LIKE_SEND_TOKEN: "#/components/schemas/SolanaLikeSendTokenData"
                      SOLANA_LIKE_FUND_AND_SEND_TOKEN: "#/components/schemas/SolanaLikeFundAndSendTokenData"
                      SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT: "#/components/schemas/SolanaLikeCreateTokenAccountData"
                      STELLAR_LIKE_SEND: "#/components/schemas/StellarLikeSendData"
                      SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendData"
                      SUI_LIKE_SEND_TOKEN: "#/components/schemas/SuiLikeTransferTokenData"
                      SUI_LIKE_STAKE: "#/components/schemas/SuiLikeStakeData"
                      SUI_LIKE_UNSTAKE: "#/components/schemas/SuiLikeUnstakeData"
                      TEZOS_LIKE_SEND: "#/components/schemas/TezosLikeSendData"
                      TEZOS_LIKE_DELEGATE: "#/components/schemas/TezosLikeDelegateData"
                      TEZOS_LIKE_UNDELEGATE: "#/components/schemas/TezosLikeUndelegateData"
                      TRON_LIKE_SEND: "#/components/schemas/TronLikeSendData"
                      TRON_LIKE_SEND_TOKEN: "#/components/schemas/TronLikeSendTokenData"
              required:
                - accountId
                - transaction
      responses:
        "200":
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    anyOf:
                      - type: string
                        const: OK
                      - type: string
                        const: SANCTIONED
                    description: Sanction compliance result.
                required:
                  - result
                additionalProperties: false
        "400": *a1
        "401": *a2
        "403": *a3
        "500": *a4
components:
  schemas:
    BitcoinLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: BITCOIN_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
            feePerByte:
              description: Fee per byte
              anyOf:
                - type: string
                  minLength: 1
                  pattern: ^([1-9]\d*|0)$
                - type: "null"
          required:
            - type
          description: Bitcoin-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Bitcoin-like send data
    CantonLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        executeBeforeSeconds:
          description: Execute before seconds
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Optional reason attached to the onchain operation
        type:
          type: string
          const: CANTON_LIKE_SEND
      required:
        - amount
        - currency
        - recipient
        - reason
        - type
      description: Canton-like send data
    CantonLikeSendTokenData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        executeBeforeSeconds:
          description: Execute before seconds
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Optional reason attached to the onchain operation
        type:
          type: string
          const: CANTON_LIKE_SEND_TOKEN
      required:
        - amount
        - currency
        - recipient
        - reason
        - type
      description: Canton-like send token data
    CantonLikeWithdrawData:
      type: object
      properties:
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transfer currency
        transferProposal:
          $ref: "#/components/schemas/CantonTransferProposal"
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Reason of the verdict
        type:
          type: string
          const: CANTON_LIKE_WITHDRAW
      required:
        - currency
        - transferProposal
        - reason
        - type
      description: Canton-like withdraw data
    CantonTransferProposal:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transfer amount
        contractId:
          type: string
          description: ID of the transfer-proposal contract
        instrumentAdmin:
          type: string
          description: Issuer of the instrument being transferred
        instrumentId:
          type: string
          description: ID of the instrument being transferred
        expiresAtMicros:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Expiration timestamp in microseconds
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Optional reason attached to the transfer
        sender:
          type: string
          description: Party proposing to send the asset
        recipient:
          type: string
          description: Intended recipient of the proposed transfer
      required:
        - amount
        - contractId
        - instrumentAdmin
        - instrumentId
        - expiresAtMicros
        - reason
        - sender
        - recipient
      description: A pending asset-transfer request
    CantonLikeReceiveData:
      type: object
      properties:
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transfer currency
        transferProposal:
          $ref: "#/components/schemas/CantonTransferProposal"
        verdict:
          type: string
          enum:
            - ACCEPT
            - REJECT
          description: Accept or reject the transfer
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Reason of the verdict
        type:
          type: string
          const: CANTON_LIKE_RECEIVE
      required:
        - currency
        - transferProposal
        - verdict
        - reason
        - type
      description: Canton-like receive data
    CantonLikePreApprovalData:
      type: object
      properties:
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        recipient:
          type: string
          minLength: 1
          description: Recipient party on which to enable pre-approval
        type:
          type: string
          const: CANTON_LIKE_PRE_APPROVAL
      required:
        - currency
        - recipient
        - type
      description: Canton-like pre-approval data
    CardanoSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: CARDANO_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Cardano-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Cardano-like send data
    CardanoStakingDelegateData:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_DELEGATE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Cardano-like fee strategy
        stakePoolId:
          type: string
          minLength: 1
          maxLength: 100
          description: ""
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - stakePoolId
      description: Cardano-like staking delegate
    CardanoStakingDeregisterData:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_DEREGISTER
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Cardano-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to deregister
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - amount
      description: Cardano-like staking deregister data
    CardanoStakingRegisterData:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_REGISTER
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Cardano-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to register
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - amount
      description: Cardano-like staking register data
    CardanoStakingWithdrawData:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_WITHDRAW
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Cardano-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to withdraw
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - amount
      description: Cardano-like staking withdraw data
    EthereumLikeDeployContractData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          const: "0x0000000000000000000000000000000000000000"
        type:
          type: string
          const: ETHEREUM_LIKE_DEPLOY_CONTRACT
        contractData:
          description: Contract data in hexadecimal format
          type: string
          pattern: ^(?:0x|0X)?[a-fA-F0-9]+$
        feeStrategy:
          $ref: "#/components/schemas/EthereumLikeFeeStrategy"
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - contractData
        - feeStrategy
      description: Ethereum-like deploy contract data
    EthereumLikeFeeStrategy:
      anyOf:
        - type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
            gasPrice:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Gas price
            gasLimit:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Gas limit
          required:
            - type
            - gasPrice
            - gasLimit
          description: Ethereum-like legacy fee strategy
        - type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
            maxPriorityFeePerGas:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Maximum priority fee per gas
            maxFeePerGas:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Maximum fee per gas (base + priority)
            gasLimit:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Gas limit
          required:
            - type
            - maxPriorityFeePerGas
            - maxFeePerGas
            - gasLimit
          description: Ethereum-like EIP-1559 fee strategy
      description: Ethereum-like fee strategy
    EthereumLikeExecuteContractData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: ETHEREUM_LIKE_EXECUTE_CONTRACT
        contractData:
          description: Contract call data in hexadecimal format
          type: string
          pattern: ^(?:0x|0X)?[a-fA-F0-9]+$
        feeStrategy:
          $ref: "#/components/schemas/EthereumLikeFeeStrategy"
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - contractData
        - feeStrategy
      description: Ethereum-like execute contract data
    EthereumLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: ETHEREUM_LIKE_SEND
        feeStrategy:
          $ref: "#/components/schemas/EthereumLikeFeeStrategy"
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Ethereum-like send data
    GenericTransactionData:
      type: object
      properties:
        type:
          type: string
          const: GENERIC_TRANSACTION
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        rawTx:
          type: string
          description: Raw tx
      required:
        - type
        - currency
        - rawTx
      description: Generic transaction data
    HederaLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: HEDERA_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Hedera-like send data
    HederaLikeSendTokenData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: HEDERA_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Hedera-like send token data
    HederaLikeStakeData:
      type: object
      properties:
        type:
          type: string
          const: HEDERA_LIKE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        nodeId:
          type: string
          minLength: 1
          pattern: ^(-?[1-9]\d*|0)$
          description: Node ID to delegate to
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
      required:
        - type
        - currency
        - nodeId
        - maxFee
        - feeStrategy
      description: Hedera-like stake data
    PolkadotLikeAddProxyData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_ADDPROXY
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        kind:
          type: string
          const: Staking
          description: Proxy kind
        proxy:
          type: string
          description: Proxy address
      required:
        - type
        - currency
        - kind
        - proxy
      description: Polkadot-like add proxy data
    PolkadotLikeAnonymousProxyData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_ANONYMOUSPROXY
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      description: Polkadot-like anonymous proxy data
    PolkadotLikeBondData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_BOND
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        payee:
          type: string
          enum:
            - Staked
            - Stash
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - payee
        - amount
      description: Polkadot-like bond data
    PolkadotLikeBondExtraData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_BONDEXTRA
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - amount
      description: Polkadot-like bond extra data
    PolkadotLikeChillData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_CHILL
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      description: Polkadot-like chill data
    PolkadotLikeKillAnonymousData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_KILLANONYMOUS
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      description: Polkadot-like kill anonymous data
    PolkadotLikeRebondData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_REBOND
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - amount
      description: Polkadot-like rebond data
    PolkadotLikeRemoveProxyData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_REMOVEPROXY
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        kind:
          type: string
          const: Staking
        proxy:
          type: string
          description: Proxy address
      required:
        - type
        - currency
        - kind
        - proxy
      description: Polkadot-like remove proxy data
    PolkadotLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: POLKADOT_LIKE_SEND
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
      description: Polkadot-like send data
    PolkadotLikeSetPayeeData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_SETPAYEE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        payee:
          type: string
          enum:
            - Staked
            - Stash
      required:
        - type
        - currency
        - payee
      description: Polkadot-like set payee data
    PolkadotLikeUnbondData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_UNBOND
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - amount
      description: Polkadot-like unbond data
    PolkadotLikeWithdrawUnbondedData:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_WITHDRAWUNBONDED
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      description: Polkadot-like withdraw unbonded data
    RippleLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: RIPPLE_LIKE_SEND
        destinationTag:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^(-?[1-9]\d*|0)$
            - type: "null"
          description: Destination tag
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          description: Ripple-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - destinationTag
        - feeStrategy
      description: Ripple-like send data
    SolanaLikeCreateDelegateStakeData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          description: Delegated vote address
        type:
          type: string
          const: SOLANA_LIKE_CREATE_DELEGATE_STAKE
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Solana-like create delegate stake data
    SolanaLikeDeactivateStakeData:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_DEACTIVATE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      description: Solana-like deactivate stake data
    SolanaLikeDelegateStakeData:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_DELEGATE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          description: Delegated vote address
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - recipient
        - stakeAccount
        - feeStrategy
      description: Solana-like delegate stake data
    SolanaLikeMergeStakeData:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_MERGE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        mergeSrcAccount:
          type: string
          description: Source stake address
        mergeDstAccount:
          type: string
          description: Destination stake address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - mergeSrcAccount
        - mergeDstAccount
        - feeStrategy
      description: Solana-like merge stake data
    SolanaLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SOLANA_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Solana-like send data
    SolanaLikeSplitDeactivateStakeData:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - type
        - amount
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      description: Solana-like split deactivate stake data
    SolanaLikeSplitStakeData:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_SPLIT_STAKE
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - type
        - amount
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      description: Solana-like split stake data
    SolanaLikeWithdrawStakeData:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_WITHDRAW_STAKE
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - type
        - amount
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      description: Solana-like withdraw stake data
    SolanaLikeSendTokenData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SOLANA_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Solana-like send token data
    SolanaLikeFundAndSendTokenData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SOLANA_LIKE_FUND_AND_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Solana-like fund token account and send token data
    SolanaLikeCreateTokenAccountData:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
      description: Solana-like create token account
    StellarLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: STELLAR_LIKE_SEND
        memo:
          anyOf:
            - oneOf:
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_TEXT
                    value:
                      type: string
                      maxLength: 28
                      description: Text memo (at most a 28 bytes string)
                  required:
                    - type
                    - value
                  description: Text memo
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_ID
                    value:
                      type: string
                      minLength: 1
                      pattern: ^(-?[1-9]\d*|0)$
                      description: Id memo (unsigned 64 bits integer)
                  required:
                    - type
                    - value
                  description: Id memo
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_HASH
                    value:
                      type: string
                      maxLength: 128
                      pattern: ^[a-fA-F0-9]+$
                      description: Transaction hash memo (64 bytes hexadecimal string)
                  required:
                    - type
                    - value
                  description: Hash memo
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_RETURN
                    value:
                      type: string
                      maxLength: 128
                      pattern: ^[a-fA-F0-9]+$
                      description: A 64 bytes hexadecimal string intended to be interpreted as the
                        hash of the transaction the sender is refunding.
                  required:
                    - type
                    - value
                  description: Return memo
              type: object
            - type: "null"
          description: Stellar memo
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Stellar-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - memo
        - feeStrategy
      description: Stellar-like send data
    SuiLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SUI_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Sui-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Sui-like send data
    SuiLikeTransferTokenData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SUI_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Sui-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Sui-like transfer token data
    SuiLikeStakeData:
      type: object
      properties:
        type:
          type: string
          const: SUI_LIKE_STAKE
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Sui-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        validator:
          type: string
          minLength: 1
          description: Validator address
      required:
        - type
        - feeStrategy
        - amount
        - currency
        - maxFee
        - validator
      description: Sui-like stake data
    SuiLikeUnstakeData:
      type: object
      properties:
        type:
          type: string
          const: SUI_LIKE_UNSTAKE
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Sui-like fee strategy
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakedSuiId:
          type: string
          minLength: 1
          description: Staked object to (partially?) unstake
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to unstake from the position
        useAllAmount:
          type: boolean
          description: Whether to unstake the full amount (triggers different sets of
            transaction commands)
      required:
        - type
        - feeStrategy
        - currency
        - maxFee
        - stakedSuiId
        - amount
        - useAllAmount
      description: Sui-like unstake data
    TezosLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: TEZOS_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          description: Tezos-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Tezos-like send data
    TezosLikeDelegateData:
      type: object
      properties:
        type:
          type: string
          const: TEZOS_LIKE_DELEGATE
        amount:
          description: "Deprecated: DO NOT USE!"
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          description: Tezos-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - recipient
        - feeStrategy
      description: Tezos-like delegate data
    TezosLikeUndelegateData:
      type: object
      properties:
        type:
          type: string
          const: TEZOS_LIKE_UNDELEGATE
        amount:
          description: "Deprecated: DO NOT USE!"
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          description: "Deprecated: DO NOT USE!"
          type: string
          minLength: 1
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          description: Tezos-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
      description: Tezos-like undelegate data
    TronLikeSendData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: TRON_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Tron-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Tron-like send data
    TronLikeSendTokenData:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: TRON_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          description: Tron-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      description: Tron-like send token data
    error.BAD_REQUEST:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Invalid input data
        code:
          type: string
          description: The error code
          example: BAD_REQUEST
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Invalid input data error (400)
      description: The error information
      example:
        code: BAD_REQUEST
        message: Invalid input data
        issues: []
    error.UNAUTHORIZED:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Authorization not provided
        code:
          type: string
          description: The error code
          example: UNAUTHORIZED
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Authorization not provided error (401)
      description: The error information
      example:
        code: UNAUTHORIZED
        message: Authorization not provided
        issues: []
    error.FORBIDDEN:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Insufficient access
        code:
          type: string
          description: The error code
          example: FORBIDDEN
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Insufficient access error (403)
      description: The error information
      example:
        code: FORBIDDEN
        message: Insufficient access
        issues: []
    error.INTERNAL_SERVER_ERROR:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Internal server error
        code:
          type: string
          description: The error code
          example: INTERNAL_SERVER_ERROR
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Internal server error error (500)
      description: The error information
      example:
        code: INTERNAL_SERVER_ERROR
        message: Internal server error
        issues: []
    error.NOT_FOUND:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Not found
        code:
          type: string
          description: The error code
          example: NOT_FOUND
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Not found error (404)
      description: The error information
      example:
        code: NOT_FOUND
        message: Not found
        issues: []
    AccountLiveDataResponse:
      oneOf:
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: RAW_SIGNING
              description: Account type
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Raw signing account
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: BITCOIN_LIKE
              description: Account type
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Bitcoin-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: CANTON_LIKE
              description: Account type
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Canton-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: CARDANO_LIKE
              description: Account type
            staking:
              anyOf:
                - type: object
                  properties:
                    staked:
                      type: string
                      description: Staked balance
                  required:
                    - staked
                  additionalProperties: false
                - type: "null"
              description: Cardano-like staking data
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Cardano-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: ETHEREUM_LIKE
              description: Account type
            staking:
              anyOf:
                - type: object
                  properties:
                    totalStaking:
                      type: string
                      description: Total staked amount
                    totalRewards:
                      type: string
                      description: Total of rewards
                    availableRewards:
                      type: string
                      description: Available rewards
                    networkApy:
                      type: number
                      description: Network APY
                  required:
                    - totalStaking
                    - totalRewards
                    - availableRewards
                    - networkApy
                  additionalProperties: false
                - type: "null"
              description: Ethereum-like staking data
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Ethereum-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: GENERIC_LIKE
              description: Account type
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Generic-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: HEDERA_LIKE
              description: Account type
            staking:
              anyOf:
                - type: object
                  properties:
                    totalStaked:
                      type: string
                      description: Total staked amount
                    totalRewards:
                      type: string
                      description: Total of rewards
                  required:
                    - totalStaked
                    - totalRewards
                  additionalProperties: false
                - type: "null"
              description: Hedera-like staking data
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Hedera-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: POLKADOT_LIKE
              description: Account type
            staking:
              anyOf:
                - type: object
                  properties:
                    info:
                      type: object
                      properties:
                        controllerAddress:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Controller address
                        rewardsDestination:
                          anyOf:
                            - type: string
                            - type: "null"
                          description: Rewards destination
                        proxies:
                          type: array
                          items:
                            type: string
                          description: Proxies
                        legacyStaking:
                          type: boolean
                          description: True if account uses legacy staking
                        isNominator:
                          type: boolean
                          description: True if is nominator
                      required:
                        - controllerAddress
                        - rewardsDestination
                        - proxies
                        - legacyStaking
                        - isNominator
                      additionalProperties: false
                    balances:
                      type: object
                      properties:
                        free:
                          type: string
                          description: Free balance
                        reserved:
                          type: string
                          description: Reserved balance
                        frozen:
                          type: string
                          description: Frozen balance
                        bonded:
                          type: string
                          description: Bonded balance
                        available:
                          type: string
                          description: Available balance
                        unbonding:
                          type: array
                          items:
                            type: object
                            properties:
                              amount:
                                type: string
                                description: Amount
                              waiting_time:
                                type: string
                                description: Waiting time
                            required:
                              - amount
                              - waiting_time
                            additionalProperties: false
                          description: Unbonding balances
                        unbonded:
                          type: array
                          items:
                            type: object
                            properties:
                              amount:
                                type: string
                                description: Amount
                              waiting_time:
                                type: string
                                description: Waiting time
                            required:
                              - amount
                              - waiting_time
                            additionalProperties: false
                          description: Unbonded balances
                        totalUnbonding:
                          type: string
                          description: Total unbonding
                        totalUnbonded:
                          type: string
                          description: Total unbonded
                      required:
                        - free
                        - reserved
                        - frozen
                        - bonded
                        - available
                        - unbonding
                        - unbonded
                        - totalUnbonding
                        - totalUnbonded
                      additionalProperties: false
                    anonymousProxy:
                      anyOf:
                        - type: object
                          properties:
                            address:
                              type: string
                              description: Address
                            createdAt:
                              type: string
                              description: Creation date
                            isController:
                              type: boolean
                              description: True if is controller
                            isMain:
                              type: boolean
                              description: True if is main
                            balances:
                              anyOf:
                                - type: object
                                  properties:
                                    free:
                                      type: string
                                      description: Anonymous proxy free balance
                                    reserved:
                                      type: string
                                      description: Anonymous proxy reserved balance
                                    frozen:
                                      type: string
                                      description: Anonymous proxy frozen balance
                                    bonded:
                                      type: string
                                      description: Anonymous proxy bonded balance
                                    available:
                                      type: string
                                      description: Anonymous proxy available balance
                                    total:
                                      type: string
                                      description: Anonymous proxy total balance
                                  required:
                                    - free
                                    - reserved
                                    - frozen
                                    - bonded
                                    - available
                                    - total
                                  additionalProperties: false
                                - type: "null"
                            blockHeight:
                              type: string
                              description: Anonymous proxy block height
                            extIndex:
                              type: string
                              description: Ext index
                            index:
                              type: string
                              description: Index
                            kind:
                              type: string
                              description: Kind
                          required:
                            - address
                            - createdAt
                            - isController
                            - isMain
                            - balances
                            - blockHeight
                            - extIndex
                            - index
                            - kind
                          additionalProperties: false
                        - type: "null"
                      description: Anonymous proxy
                  required:
                    - info
                    - balances
                    - anonymousProxy
                  additionalProperties: false
                - type: "null"
              description: Polkadot-like staking data
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Polkadot-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: RIPPLE_LIKE
              description: Account type
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Ripple-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: SOLANA_LIKE
              description: Account type
            staking:
              anyOf:
                - type: object
                  properties:
                    staked:
                      type: string
                      description: Staked balance
                    rewards:
                      type: object
                      properties:
                        total:
                          type: string
                          description: Total rewards
                        last7:
                          type: string
                          description: Rewards on last 7 days
                        last30:
                          type: string
                          description: Rewards on last 30 days
                      required:
                        - total
                        - last7
                        - last30
                      additionalProperties: false
                    stakes:
                      type: array
                      items:
                        type: object
                        properties:
                          uid:
                            type: string
                          baseAccountUid:
                            type: string
                          pubKey:
                            type: string
                            description: Public key
                          validatorPubKey:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Validator public key
                          initialAmount:
                            type: string
                            description: Initial amount
                          activeAmount:
                            type: string
                            description: Active amount
                          inactiveAmount:
                            type: string
                            description: Inactive amount
                          totalBalance:
                            type: string
                            description: Total balance
                          creationDate:
                            type: string
                            description: Creation date
                          activationEpoch:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Activation epoch
                          activationDate:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Activation date
                          deactivationEpoch:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Deactivation epoch
                          deactivationDate:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Deactivation date
                          status:
                            type: string
                            enum:
                              - not_sync
                              - activating
                              - activated
                              - deactivating
                              - deactivated
                              - deleted
                            description: Staking account status
                          rentExemptReserve:
                            type: string
                            description: Rent exempt reserve
                          withdrawableAmount:
                            type: string
                            description: Withdrawable amount
                          totalRewards:
                            type: string
                            description: Total rewards
                          creationTxHash:
                            anyOf:
                              - type: string
                              - type: "null"
                            description: Creation transaction hash
                          actionsTxHashes:
                            type: array
                            items:
                              type: string
                            description: Actions transactions hashes
                        required:
                          - uid
                          - baseAccountUid
                          - pubKey
                          - validatorPubKey
                          - initialAmount
                          - activeAmount
                          - inactiveAmount
                          - totalBalance
                          - creationDate
                          - activationEpoch
                          - activationDate
                          - deactivationEpoch
                          - deactivationDate
                          - status
                          - rentExemptReserve
                          - withdrawableAmount
                          - totalRewards
                          - creationTxHash
                          - actionsTxHashes
                        additionalProperties: false
                  required:
                    - staked
                    - rewards
                    - stakes
                  additionalProperties: false
                - type: "null"
              description: Solana-like staking data
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Solana-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: STELLAR_LIKE
              description: Account type
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Stellar-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: SUI_LIKE
              description: Account type
            staking:
              anyOf:
                - type: object
                  properties:
                    totalStaked:
                      type: string
                      description: Total staked amount
                    totalRewards:
                      type: string
                      description: Total of rewards
                  required:
                    - totalStaked
                    - totalRewards
                  additionalProperties: false
                - type: "null"
              description: Sui-like staking data
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Sui-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: TEZOS_LIKE
              description: Account type
            staking:
              anyOf:
                - type: object
                  properties:
                    delegations:
                      type: array
                      items:
                        type: object
                        properties:
                          address:
                            type: string
                        required:
                          - address
                        additionalProperties: false
                  required:
                    - delegations
                  additionalProperties: false
                - type: "null"
              description: Tezos-like staking data
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Tezos-like
        - type: object
          properties:
            id:
              type: string
              description: Account internal unique identifier
            balance:
              type: object
              properties:
                total:
                  type: string
                  description: Total balance
                pending:
                  type: string
                  description: Pending balance
              required:
                - total
                - pending
              additionalProperties: false
              description: Balance fields
            type:
              type: string
              const: TRON_LIKE
              description: Account type
          required:
            - id
            - balance
            - type
          additionalProperties: false
          description: Tron-like
      description: Account live data
      type: object
    SignedMessageResponse:
      allOf:
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier
            address:
              type: string
              description: Address of the signing key
            derivationPath:
              type: string
              description: Derivation path of the signing key
            signature:
              type: object
              properties:
                digest:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Signed digest
                derivationPath:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Derivation path used to sign the digest
                r:
                  type: string
                  format: base64
                  contentEncoding: base64
                  pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                  description: Base64 encoded signature r coordinate
                s:
                  type: string
                  format: base64
                  contentEncoding: base64
                  pattern: ^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$
                  description: Base64 encoded signature s coordinate
                v:
                  anyOf:
                    - anyOf:
                        - type: number
                          const: 0
                        - type: number
                          const: 1
                    - type: "null"
                  description: Ecdsa only, signature recovery value
                der:
                  type: string
                  pattern: ^[0-9a-fA-F]+$
                  description: Hex string encoded DER signature format (for eddsa, concatenation
                    of r & s)
                pubkey:
                  anyOf:
                    - type: string
                      pattern: ^[0-9a-fA-F]+$
                    - type: "null"
                  description: Public key for signature verification, 32 or 33 bytes
              required:
                - digest
                - derivationPath
                - r
                - s
                - v
                - der
                - pubkey
              additionalProperties: false
              description: Signature of the message
            createdById:
              type: string
              description: ID of the creator
            createdAt:
              description: Creation timestamp
              type: string
          required:
            - id
            - address
            - derivationPath
            - signature
            - createdById
            - createdAt
          additionalProperties: false
        - oneOf:
            - type: object
              properties:
                type:
                  type: string
                  const: EIP191
                data:
                  $ref: "#/components/schemas/MessageHexData"
              required:
                - type
                - data
              additionalProperties: false
            - type: object
              properties:
                type:
                  type: string
                  const: EIP712
                data:
                  $ref: "#/components/schemas/Eip712Data"
              required:
                - type
                - data
              additionalProperties: false
            - type: object
              properties:
                type:
                  type: string
                  const: CIP8
                data:
                  $ref: "#/components/schemas/MessageHexData"
                signingKey:
                  type: string
                  enum:
                    - PAYMENT
                    - STAKE
                  description: CIP-8 signing key
              required:
                - type
                - data
                - signingKey
              additionalProperties: false
            - type: object
              properties:
                type:
                  type: string
                  const: BIP137
                data:
                  $ref: "#/components/schemas/MessageHexData"
              required:
                - type
                - data
              additionalProperties: false
          type: object
      description: Signed message
    MessageHexData:
      type: string
      minLength: 1
      pattern: ^[0-9a-fA-F]+$
      description: Hex data string to sign
    Eip712Data:
      type: object
      properties:
        types:
          type: object
          propertyNames:
            type: string
          additionalProperties:
            type: array
            items:
              type: object
              properties:
                name:
                  type: string
                type:
                  type: string
              required:
                - name
                - type
              additionalProperties: false
          description: EIP-712 types
        primaryType:
          type: string
          description: EIP-712 primary type
        domain:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
          description: EIP-712 domain
        message:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
          description: EIP-712 message
      required:
        - types
        - primaryType
        - domain
        - message
      additionalProperties: false
      description: EIP-712 data to sign
    WhitelistResponse:
      type: object
      properties:
        id:
          type: string
          description: Internal unique identifier
        legacyId:
          type: number
          description: Legacy internal unique identifier (for retro-compatibility)
        name:
          type: string
          description: Whitelist name
        status:
          type: string
          enum:
            - ACTIVE
            - INACTIVE
          description: Whitelist status
        addresses:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
                minLength: 1
                maxLength: 50
                description: Address name
              currency:
                type: string
                minLength: 1
                maxLength: 40
                pattern: ^\w+$
                description: Address currency
              address:
                type: string
                minLength: 1
                maxLength: 200
                description: Address value
              destinationTags:
                description: List of destination tags (applicable for Ripple currency)
                type: array
                items:
                  type: string
                  minLength: 1
                  pattern: ^\w+$
            required:
              - name
              - currency
              - address
            additionalProperties: false
        createdAt:
          description: Creation timestamp
          type: string
        updatedAt:
          description: Last modification timestamp
          type: string
        description:
          anyOf:
            - type: string
            - type: "null"
          description: Whitelist description
      required:
        - id
        - legacyId
        - name
        - status
        - addresses
        - createdAt
        - updatedAt
        - description
      additionalProperties: false
      description: Whitelist
    PolicyResponse:
      type: object
      properties:
        id:
          type: string
          description: Internal unique identifier
        legacyId:
          type: number
          description: Legacy internal unique identifier (for retro-compatibility)
        name:
          type: string
          description: Policy name
        description:
          anyOf:
            - type: string
            - type: "null"
          description: Policy description
        currency:
          anyOf:
            - type: string
              minLength: 1
              maxLength: 40
              pattern: ^\w+$
              description: Will be deprecated soon, use network instead. Currency
            - type: "null"
        network:
          anyOf:
            - type: string
              minLength: 1
              maxLength: 40
              pattern: ^\w+$
              description: Network (Same as currency for now)
            - type: "null"
        isPrivate:
          type: boolean
          description: Whether the policy is private
        rules:
          type: array
          items:
            $ref: "#/components/schemas/GovRuleResponse"
          description: List of governance rules
        whitelists:
          type: array
          items:
            $ref: "#/components/schemas/WhitelistResponse"
          description: Related whitelists
        users:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                description: Internal unique identifier
              legacyId:
                type: number
                description: Legacy internal unique identifier (for retro-compatibility)
              legacyViewAll:
                type: boolean
                description: If true, user can read all resources on the workspace
              workspaceName:
                type: string
                description: User's workspace name
              name:
                type: string
                description: User name
              deviceUserId:
                anyOf:
                  - type: string
                  - type: "null"
                description: User's device ID (for non-API users)
              deviceType:
                type: string
                enum:
                  - PSD
                  - SOFT_PSD
                  - API
                description: User's device type
              role:
                type: string
                enum:
                  - ADMIN
                  - OPERATOR
                  - READ_ONLY_API_KEY
                description: User role
              pubKey:
                type: string
                description: User public key
              status:
                type: string
                enum:
                  - ACTIVE
                  - INACTIVE
                description: User status
              isSuspended:
                type: boolean
                description: Whether the user is suspended
              createdAt:
                description: Creation timestamp
                type: string
              updatedAt:
                description: Last modification timestamp
                type: string
            required:
              - id
              - legacyId
              - legacyViewAll
              - workspaceName
              - name
              - deviceUserId
              - deviceType
              - role
              - pubKey
              - status
              - isSuspended
              - createdAt
              - updatedAt
            additionalProperties: false
          description: Referenced users
        groups:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                description: Internal unique identifier
              legacyId:
                type: number
                description: Legacy internal unique identifier (for retro-compatibility)
              name:
                type: string
                description: Group name
              description:
                anyOf:
                  - type: string
                  - type: "null"
                description: Group description
              status:
                type: string
                enum:
                  - ACTIVE
                  - INACTIVE
                description: Group status
              createdAt:
                description: Creation timestamp
                type: string
              updatedAt:
                description: Last modification timestamp
                type: string
              memberIds:
                type: array
                items:
                  type: string
                description: List of member user IDs
            required:
              - id
              - legacyId
              - name
              - description
              - status
              - createdAt
              - updatedAt
              - memberIds
            additionalProperties: false
          description: Referenced groups
        createdAt:
          description: Creation timestamp
          type: string
        updatedAt:
          description: Last modification timestamp
          type: string
      required:
        - id
        - legacyId
        - name
        - description
        - currency
        - network
        - isPrivate
        - rules
        - whitelists
        - users
        - groups
        - createdAt
        - updatedAt
      additionalProperties: false
      description: Account policy
    GovRuleResponse:
      type: object
      properties:
        reviewSteps:
          minItems: 1
          type: array
          items:
            anyOf:
              - type: object
                properties:
                  quorum:
                    type: number
                    minimum: 0
                    description: Number of required approvals for the step
                  userIds:
                    type: array
                    items:
                      type: string
                      minLength: 1
                    description: User ids in the step
                required:
                  - quorum
                  - userIds
                additionalProperties: false
                description: Review step with users
              - type: object
                properties:
                  quorum:
                    type: number
                    minimum: 0
                    description: Number of required approvals for the step
                  groupId:
                    type: string
                    minLength: 1
                    description: Group id in the step
                required:
                  - quorum
                  - groupId
                additionalProperties: false
                description: Review step with group
          description: Review steps
        threshold:
          type: object
          properties:
            min:
              anyOf:
                - type: string
                  minLength: 1
                  pattern: ^([1-9]\d*|0)$
                - type: "null"
              description: Minimum transaction amount
            max:
              anyOf:
                - type: string
                  minLength: 1
                  pattern: ^([1-9]\d*|0)$
                - type: "null"
              description: Maximum transaction amount
          required:
            - min
            - max
          additionalProperties: false
          description: Threshold for the transaction value
        whitelistIds:
          type: array
          items:
            type: string
            minLength: 1
          description: IDs of whitelists for the recipient address
        operationType:
          type: string
          enum:
            - SEND
            - DEPLOY_CONTRACT
            - EXECUTE_CONTRACT
            - ACTIVATE_TOKEN
            - RECEIVE
            - STAKE
            - SIGN_MESSAGE
            - SIGN_DIGESTS
          description: Allowed action
      required:
        - reviewSteps
        - operationType
      additionalProperties: false
      description: Governance rule
    VaultRequestResponse:
      oneOf:
        - type: object
          properties:
            type:
              type: string
              const: UPDATE_QUORUM
            data:
              type: object
              properties:
                quorum:
                  type: integer
                  minimum: 2
                  maximum: 9007199254740991
                  description: Workspace quorum
              required:
                - quorum
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: UPDATE_QUORUM request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_TRANSACTION
            data:
              $ref: "#/components/schemas/CreateTransactionRequestData"
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_TRANSACTION request
        - type: object
          properties:
            type:
              type: string
              const: SIGN_MESSAGE
            data:
              type: object
              properties:
                message:
                  oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          const: EIP191
                        data:
                          $ref: "#/components/schemas/MessageHexData"
                      required:
                        - type
                        - data
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: EIP712
                        data:
                          $ref: "#/components/schemas/Eip712Data"
                      required:
                        - type
                        - data
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: CIP8
                        data:
                          $ref: "#/components/schemas/MessageHexData"
                        signingKey:
                          type: string
                          enum:
                            - PAYMENT
                            - STAKE
                          description: CIP-8 signing key
                      required:
                        - type
                        - data
                        - signingKey
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: BIP137
                        data:
                          $ref: "#/components/schemas/MessageHexData"
                      required:
                        - type
                        - data
                      additionalProperties: false
                  description: Message to sign
                  type: object
                accountId:
                  type: string
                  minLength: 1
                  description: Target account id
                address:
                  type: string
                  minLength: 1
                  description: Address with which to sign the message
                derivationPath:
                  type: string
                  minLength: 1
                  description: Derivation path of the signing address
              required:
                - message
                - accountId
                - address
                - derivationPath
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: SIGN_MESSAGE request
        - type: object
          properties:
            type:
              type: string
              const: SIGN_DIGESTS
            data:
              type: object
              properties:
                accountId:
                  type: string
                  minLength: 1
                  description: Target account id
                digests:
                  type: array
                  items:
                    type: object
                    properties:
                      digest:
                        type: string
                        pattern: ^[0-9a-fA-F]+$
                        description: The hex string digest to sign
                      derivationPath:
                        type: string
                        minLength: 1
                        description: The derivation path with which to sign the digest
                    required:
                      - digest
                      - derivationPath
                    additionalProperties: false
                  description: The digests to sign
              required:
                - accountId
                - digests
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: SIGN_DIGESTS request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_ACCOUNT
            data:
              $ref: "#/components/schemas/CreateAccountRequestData"
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_ACCOUNT request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_ACCOUNT
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              $ref: "#/components/schemas/EditAccountRequestData"
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_ACCOUNT request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_TOKEN_RULE
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                parentAccountId:
                  type: string
                  minLength: 1
                  description: Parent account unique ID
                contractAddress:
                  type: string
                  minLength: 1
                  description: Token contract address
                rules:
                  type: array
                  items:
                    $ref: "#/components/schemas/ClassicGovRuleData"
                  description: Account governance rules
              required:
                - parentAccountId
                - contractAddress
                - rules
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_TOKEN_RULE request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_GROUP
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: Group name
                description:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Group description
                members:
                  type: array
                  items:
                    type: string
                  description: List of group members ids
              required:
                - name
                - description
                - members
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_GROUP request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_GROUP
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: Group name
                description:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Group description
                members:
                  type: array
                  items:
                    type: string
                  description: List of group members ids
              required:
                - name
                - description
                - members
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_GROUP request
        - type: object
          properties:
            type:
              type: string
              const: REVOKE_GROUP
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties: {}
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: REVOKE_GROUP request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_WHITELIST
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 45
                  description: Whitelist name
                description:
                  anyOf:
                    - type: string
                    - type: "null"
                addresses:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        minLength: 1
                        maxLength: 50
                      currency:
                        type: string
                        minLength: 1
                        maxLength: 40
                        pattern: ^\w+$
                        description: Will be deprecated soon, use network instead. Currency
                      address:
                        type: string
                        minLength: 1
                        maxLength: 200
                      destinationTags:
                        type: array
                        items:
                          type: string
                          minLength: 1
                          pattern: ^\w+$
                    required:
                      - name
                      - currency
                      - address
                    additionalProperties: false
                type:
                  type: string
                  enum:
                    - TRANSACTION
                    - SMART_CONTRACT
              required:
                - name
                - description
                - addresses
                - type
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_WHITELIST request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_WHITELIST
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 45
                  description: Whitelist name
                addresses:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        minLength: 1
                        maxLength: 50
                      currency:
                        type: string
                        minLength: 1
                        maxLength: 40
                        pattern: ^\w+$
                        description: Will be deprecated soon, use network instead. Currency
                      address:
                        type: string
                        minLength: 1
                        maxLength: 200
                      destinationTags:
                        type: array
                        items:
                          type: string
                          minLength: 1
                          pattern: ^\w+$
                    required:
                      - name
                      - currency
                      - address
                    additionalProperties: false
              required:
                - name
                - addresses
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_WHITELIST request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_ENTITY
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: Entity name
                accountIds:
                  type: array
                  items:
                    type: string
                  description: List of Account IDs
                memberIds:
                  type: array
                  items:
                    type: string
                  description: List of User IDs
              required:
                - name
                - accountIds
                - memberIds
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_ENTITY request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_ENTITY
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: Entity name
                accountIds:
                  type: array
                  items:
                    type: string
                  description: List of Account IDs
                memberIds:
                  type: array
                  items:
                    type: string
                  description: List of User IDs
              required:
                - name
                - accountIds
                - memberIds
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_ENTITY request
        - type: object
          properties:
            type:
              type: string
              const: REVOKE_ENTITY
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties: {}
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: REVOKE_ENTITY request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_PSD_USER
            data:
              type: object
              properties:
                registrationId:
                  type: string
                  description: User registration ID
              required:
                - registrationId
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_PSD_USER request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_API_USER
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: User name
                pubKey:
                  type: string
                  pattern: ^04[0-9a-fA-F]{128}$
                  description: Public key, uncompressed secp256r1 format
                role:
                  type: string
                  enum:
                    - ADMIN
                    - OPERATOR
                  description: User role
                viewAll:
                  type: boolean
                  description: View all data
              required:
                - name
                - pubKey
                - role
              additionalProperties: false
              description: Create API user request data
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_API_USER request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_API_USER_ACCESS
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: User name
              required:
                - name
              additionalProperties: false
              description: Create API user credential request data
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_API_USER_ACCESS request
        - type: object
          properties:
            type:
              type: string
              const: REVOKE_USER
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties: {}
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: REVOKE_USER request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_WORKSPACE_RULE
            data:
              type: object
              properties:
                permission:
                  type: string
                  enum:
                    - CREATE_ACCOUNT_WITH_POLICY
                  description: Granted permissions
                reviewConfig:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of admin review steps
              required:
                - permission
                - reviewConfig
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_WORKSPACE_RULE request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_SCICONFIG
            data:
              type: object
              properties:
                account:
                  type: string
                  description: Account UUID
                config:
                  type: object
                  properties:
                    dapps:
                      anyOf:
                        - type: array
                          items:
                            type: string
                        - type: "null"
                      description: Allowed DApps, null allows all
                    customContractCallEnabled:
                      type: boolean
                      description: Allow non-DApp SCI
                  required:
                    - dapps
                    - customContractCallEnabled
                  additionalProperties: false
              required:
                - account
                - config
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_SCICONFIG request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_SCICONFIG
            data:
              type: object
              properties:
                config:
                  type: object
                  properties:
                    dapps:
                      anyOf:
                        - type: array
                          items:
                            type: string
                        - type: "null"
                      description: Allowed DApps, null allows all
                    customContractCallEnabled:
                      type: boolean
                      description: Allow non-DApp SCI
                  required:
                    - dapps
                    - customContractCallEnabled
                  additionalProperties: false
              required:
                - config
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_SCICONFIG request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_API_KEY
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: API key name
                entities:
                  type: array
                  items:
                    type: string
                  description: List of related entities ids
                scopes:
                  type: object
                  properties: {}
                  additionalProperties: false
                  description: FIXME to be precised
              required:
                - name
                - entities
                - scopes
              additionalProperties: false
              description: Create read-only API key request data
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_API_KEY request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_API_KEY
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: API key name
                entities:
                  type: array
                  items:
                    type: string
                  description: List of related entities ids
                scopes:
                  type: object
                  properties: {}
                  additionalProperties: false
                  description: FIXME to be precised
              required:
                - name
                - entities
                - scopes
              additionalProperties: false
              description: Edit read-only API key request data
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_API_KEY request
        - type: object
          properties:
            type:
              type: string
              const: REVOKE_API_KEY
            data:
              type: object
              properties: {}
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: REVOKE_API_KEY request
        - type: object
          properties:
            type:
              type: string
              const: CREATE_POLICY
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: Policy name
                description:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Description
                currency:
                  anyOf:
                    - type: string
                      minLength: 1
                      maxLength: 40
                      pattern: ^\w+$
                      description: Currency
                    - type: "null"
                govRules:
                  type: array
                  items:
                    $ref: "#/components/schemas/ClassicGovRuleData"
                  description: Governance rules
              required:
                - name
                - description
                - currency
                - govRules
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: CREATE_POLICY request
        - type: object
          properties:
            type:
              type: string
              const: EDIT_POLICY
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 19
                  description: Policy name
                description:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Description
                govRules:
                  type: array
                  items:
                    $ref: "#/components/schemas/ClassicGovRuleData"
                  description: Governance rules
              required:
                - name
                - description
                - govRules
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: EDIT_POLICY request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_ACTIVATE_ACCOUNT
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: "null"
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_ACTIVATE_ACCOUNT request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_CREATE_CUSTODIAN
            data:
              type: object
              properties:
                settlement:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of settlement review steps
                withdraw:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of withdraw review steps
                arbitration:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of arbitration review steps
              required:
                - settlement
                - withdraw
                - arbitration
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_CREATE_CUSTODIAN request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_EDIT_CUSTODIAN
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                settlement:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of settlement review steps
                withdraw:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of withdraw review steps
                arbitration:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of arbitration review steps
              required:
                - settlement
                - withdraw
                - arbitration
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_EDIT_CUSTODIAN request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_CREATE_EXCHANGE
            data:
              type: object
              properties:
                tradelinkId:
                  type: string
                  minLength: 1
                groups:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of asset manager review groups
                whitelist:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        minLength: 1
                      currency:
                        type: string
                        minLength: 1
                        maxLength: 40
                        pattern: ^\w+$
                        description: Will be deprecated soon, use network instead. Currency
                      address:
                        type: string
                        minLength: 1
                    required:
                      - name
                      - currency
                      - address
                    additionalProperties: false
                  description: List of asset manager whitelisted addresses
              required:
                - tradelinkId
                - groups
                - whitelist
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_CREATE_EXCHANGE request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_EDIT_EXCHANGE
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                tradelinkId:
                  type: string
                  minLength: 1
                groups:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of asset manager review groups
                whitelist:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        minLength: 1
                      currency:
                        type: string
                        minLength: 1
                        maxLength: 40
                        pattern: ^\w+$
                        description: Will be deprecated soon, use network instead. Currency
                      address:
                        type: string
                        minLength: 1
                    required:
                      - name
                      - currency
                      - address
                    additionalProperties: false
                  description: List of asset manager whitelisted addresses
              required:
                - tradelinkId
                - groups
                - whitelist
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_EDIT_EXCHANGE request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_CREATE_ASSET_MANAGER
            data:
              type: object
              properties:
                tradelinkId:
                  type: string
                  minLength: 1
                groups:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of asset manager review groups
                whitelist:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        minLength: 1
                      currency:
                        type: string
                        minLength: 1
                        maxLength: 40
                        pattern: ^\w+$
                        description: Will be deprecated soon, use network instead. Currency
                      address:
                        type: string
                        minLength: 1
                    required:
                      - name
                      - currency
                      - address
                    additionalProperties: false
                  description: List of asset manager whitelisted addresses
              required:
                - tradelinkId
                - groups
                - whitelist
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_CREATE_ASSET_MANAGER request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_EDIT_ASSET_MANAGER
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            data:
              type: object
              properties:
                tradelinkId:
                  type: string
                  minLength: 1
                groups:
                  type: array
                  items:
                    type: object
                    properties:
                      quorum:
                        type: number
                        minimum: 0
                        description: Number of required approvals for the step
                      userIds:
                        type: array
                        items:
                          type: string
                          minLength: 1
                        description: User ids in the step
                    required:
                      - quorum
                      - userIds
                    additionalProperties: false
                    description: Review step with users
                  description: List of asset manager review groups
                whitelist:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        minLength: 1
                      currency:
                        type: string
                        minLength: 1
                        maxLength: 40
                        pattern: ^\w+$
                        description: Will be deprecated soon, use network instead. Currency
                      address:
                        type: string
                        minLength: 1
                    required:
                      - name
                      - currency
                      - address
                    additionalProperties: false
                  description: List of asset manager whitelisted addresses
              required:
                - tradelinkId
                - groups
                - whitelist
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - targetId
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_EDIT_ASSET_MANAGER request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_ADJUST_PLEDGE
            data:
              type: object
              properties:
                accountId:
                  type: string
                  description: Account id
                exchangeId:
                  type: string
                  description: Exchange id
                amount:
                  type: string
                  minLength: 1
                  pattern: ^(-?[1-9]\d*|0)$
                  description: Amount to add to pledge
              required:
                - accountId
                - exchangeId
                - amount
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_ADJUST_PLEDGE request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_REPLEDGE
            data:
              type: object
              properties:
                accountId:
                  type: string
                  description: Account id
                exchangeId:
                  type: string
                  description: Exchange id
                amount:
                  type: string
                  minLength: 1
                  pattern: ^(-?[1-9]\d*|0)$
                  description: Amount to add to pledge
              required:
                - accountId
                - exchangeId
                - amount
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_REPLEDGE request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_CREATE_SETTLEMENT
            data:
              type: object
              properties:
                accountId:
                  type: string
                  description: Account id
                exchangeId:
                  type: string
                  description: Exchange id
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/BitcoinLikeSendDataOutput"
                    - $ref: "#/components/schemas/CantonLikeSendDataOutput"
                    - $ref: "#/components/schemas/CardanoSendDataOutput"
                    - $ref: "#/components/schemas/EthereumLikeSendDataOutput"
                    - $ref: "#/components/schemas/HederaLikeSendDataOutput"
                    - $ref: "#/components/schemas/PolkadotLikeSendDataOutput"
                    - $ref: "#/components/schemas/RippleLikeSendDataOutput"
                    - $ref: "#/components/schemas/SolanaLikeSendDataOutput"
                    - $ref: "#/components/schemas/StellarLikeSendDataOutput"
                    - $ref: "#/components/schemas/SuiLikeSendDataOutput"
                    - $ref: "#/components/schemas/TezosLikeSendDataOutput"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      BITCOIN_LIKE_SEND: "#/components/schemas/BitcoinLikeSendDataOutput"
                      CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendDataOutput"
                      CARDANO_LIKE_SEND: "#/components/schemas/CardanoSendDataOutput"
                      ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendDataOutput"
                      HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendDataOutput"
                      POLKADOT_LIKE_SEND: "#/components/schemas/PolkadotLikeSendDataOutput"
                      RIPPLE_LIKE_SEND: "#/components/schemas/RippleLikeSendDataOutput"
                      SOLANA_LIKE_SEND: "#/components/schemas/SolanaLikeSendDataOutput"
                      STELLAR_LIKE_SEND: "#/components/schemas/StellarLikeSendDataOutput"
                      SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendDataOutput"
                      TEZOS_LIKE_SEND: "#/components/schemas/TezosLikeSendDataOutput"
              required:
                - accountId
                - exchangeId
                - transaction
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_CREATE_SETTLEMENT request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_FORCE_UNPLEDGE
            data:
              type: object
              properties:
                accountId:
                  type: string
                  description: Account id
                exchangeId:
                  type: string
                  description: Exchange id
              required:
                - accountId
                - exchangeId
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_FORCE_UNPLEDGE request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_WITHDRAW
            data:
              type: object
              properties:
                accountId:
                  type: string
                  description: Account id
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/BitcoinLikeSendDataOutput"
                    - $ref: "#/components/schemas/CantonLikeSendDataOutput"
                    - $ref: "#/components/schemas/CardanoSendDataOutput"
                    - $ref: "#/components/schemas/EthereumLikeSendDataOutput"
                    - $ref: "#/components/schemas/HederaLikeSendDataOutput"
                    - $ref: "#/components/schemas/PolkadotLikeSendDataOutput"
                    - $ref: "#/components/schemas/RippleLikeSendDataOutput"
                    - $ref: "#/components/schemas/SolanaLikeSendDataOutput"
                    - $ref: "#/components/schemas/StellarLikeSendDataOutput"
                    - $ref: "#/components/schemas/SuiLikeSendDataOutput"
                    - $ref: "#/components/schemas/TezosLikeSendDataOutput"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      BITCOIN_LIKE_SEND: "#/components/schemas/BitcoinLikeSendDataOutput"
                      CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendDataOutput"
                      CARDANO_LIKE_SEND: "#/components/schemas/CardanoSendDataOutput"
                      ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendDataOutput"
                      HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendDataOutput"
                      POLKADOT_LIKE_SEND: "#/components/schemas/PolkadotLikeSendDataOutput"
                      RIPPLE_LIKE_SEND: "#/components/schemas/RippleLikeSendDataOutput"
                      SOLANA_LIKE_SEND: "#/components/schemas/SolanaLikeSendDataOutput"
                      STELLAR_LIKE_SEND: "#/components/schemas/StellarLikeSendDataOutput"
                      SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendDataOutput"
                      TEZOS_LIKE_SEND: "#/components/schemas/TezosLikeSendDataOutput"
              required:
                - accountId
                - transaction
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_WITHDRAW request
        - type: object
          properties:
            type:
              type: string
              const: TRADELINK_ARBITRATE
            data:
              type: object
              properties:
                accountId:
                  type: string
                  description: Account id
                transaction:
                  oneOf:
                    - $ref: "#/components/schemas/BitcoinLikeSendDataOutput"
                    - $ref: "#/components/schemas/CantonLikeSendDataOutput"
                    - $ref: "#/components/schemas/CardanoSendDataOutput"
                    - $ref: "#/components/schemas/EthereumLikeSendDataOutput"
                    - $ref: "#/components/schemas/HederaLikeSendDataOutput"
                    - $ref: "#/components/schemas/PolkadotLikeSendDataOutput"
                    - $ref: "#/components/schemas/RippleLikeSendDataOutput"
                    - $ref: "#/components/schemas/SolanaLikeSendDataOutput"
                    - $ref: "#/components/schemas/StellarLikeSendDataOutput"
                    - $ref: "#/components/schemas/SuiLikeSendDataOutput"
                    - $ref: "#/components/schemas/TezosLikeSendDataOutput"
                  type: object
                  discriminator:
                    propertyName: type
                    mapping:
                      BITCOIN_LIKE_SEND: "#/components/schemas/BitcoinLikeSendDataOutput"
                      CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendDataOutput"
                      CARDANO_LIKE_SEND: "#/components/schemas/CardanoSendDataOutput"
                      ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendDataOutput"
                      HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendDataOutput"
                      POLKADOT_LIKE_SEND: "#/components/schemas/PolkadotLikeSendDataOutput"
                      RIPPLE_LIKE_SEND: "#/components/schemas/RippleLikeSendDataOutput"
                      SOLANA_LIKE_SEND: "#/components/schemas/SolanaLikeSendDataOutput"
                      STELLAR_LIKE_SEND: "#/components/schemas/StellarLikeSendDataOutput"
                      SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendDataOutput"
                      TEZOS_LIKE_SEND: "#/components/schemas/TezosLikeSendDataOutput"
              required:
                - accountId
                - transaction
              additionalProperties: false
            id:
              type: string
              description: Request unique identifier
            legacyId:
              type: number
              description: Legacy internal unique identifier (for retro-compatibility)
            state:
              type: string
              enum:
                - INITIAL
                - PENDING_APPROVAL
                - EXECUTING
                - EXECUTED
                - FAILED
                - ABORTED
                - BLOCKED
                - EXPIRED
                - STUCK
              description: Request state
            reviewSteps:
              type: array
              items:
                type: object
                properties:
                  stageName:
                    type: string
                    pattern: ^\w+$
                    description: The review stage name
                  quorum:
                    type: integer
                    minimum: 1
                    maximum: 9007199254740991
                    description: Quorum for the review step
                required:
                  - stageName
                  - quorum
                additionalProperties: false
              description: Request review steps
            currentStepIndex:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Index of the current approval step
            expiresAt:
              description: Request expiration date
              type: string
            expiredAt:
              description: "Deprecated: use expiresAt"
              type: string
            targetId:
              anyOf:
                - type: string
                - type: "null"
              description: Optional ID of the target object
            note:
              anyOf:
                - type: object
                  properties:
                    title:
                      type: string
                      description: Note title
                    content:
                      type: string
                      description: Note content
                  required:
                    - title
                    - content
                  additionalProperties: false
                - type: "null"
              description: Optional request note
            reviews:
              type: array
              items:
                type: object
                properties:
                  stepIndex:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: Index of the governance step in the request workflow
                  userId:
                    type: string
                    description: Reviewer id
                  groupName:
                    anyOf:
                      - type: string
                      - type: "null"
                    description: Group name if the reviewer was part of an operator group
                  status:
                    type: string
                    enum:
                      - PENDING
                      - QUEUED
                      - APPROVED
                      - REJECTED
                      - OBSOLETE
                    description: Review status
                  createdAt:
                    description: Created date
                    type: string
                  updatedAt:
                    description: Updated date
                    type: string
                required:
                  - stepIndex
                  - userId
                  - groupName
                  - status
                  - createdAt
                  - updatedAt
                additionalProperties: false
              description: Requests reviews
            createdAt:
              description: Creation timestamp
              type: string
            updatedAt:
              description: Last modification timestamp
              type: string
            createdById:
              type: string
              description: ID of the user who created the request
            inflight:
              description: Extra information if the request is currently being processed
              type: object
              properties:
                lastError:
                  anyOf:
                    - type: string
                    - type: "null"
                  description: Error message from the last failure
                numFailed:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  description: Number of failures so far
                retryAfter:
                  description: Date after which next retry is scheduled
                  type: string
              required:
                - lastError
                - numFailed
                - retryAfter
              additionalProperties: false
          required:
            - type
            - data
            - id
            - legacyId
            - state
            - reviewSteps
            - currentStepIndex
            - expiresAt
            - targetId
            - note
            - reviews
            - createdAt
            - updatedAt
            - createdById
          additionalProperties: false
          description: TRADELINK_ARBITRATE request
      description: Vault request response data
      type: object
    CreateTransactionRequestData:
      type: object
      properties:
        accountId:
          type: string
          minLength: 1
          description: Target account id
        transaction:
          oneOf:
            - $ref: "#/components/schemas/BitcoinLikeSendDataOutput"
            - $ref: "#/components/schemas/CantonLikeSendDataOutput"
            - $ref: "#/components/schemas/CantonLikeSendTokenDataOutput"
            - $ref: "#/components/schemas/CantonLikeWithdrawDataOutput"
            - $ref: "#/components/schemas/CantonLikeReceiveDataOutput"
            - $ref: "#/components/schemas/CantonLikePreApprovalDataOutput"
            - $ref: "#/components/schemas/CardanoSendDataOutput"
            - $ref: "#/components/schemas/CardanoStakingDelegateDataOutput"
            - $ref: "#/components/schemas/CardanoStakingDeregisterDataOutput"
            - $ref: "#/components/schemas/CardanoStakingRegisterDataOutput"
            - $ref: "#/components/schemas/CardanoStakingWithdrawDataOutput"
            - $ref: "#/components/schemas/EthereumLikeDeployContractDataOutput"
            - $ref: "#/components/schemas/EthereumLikeExecuteContractDataOutput"
            - $ref: "#/components/schemas/EthereumLikeSendDataOutput"
            - $ref: "#/components/schemas/GenericTransactionDataOutput"
            - $ref: "#/components/schemas/HederaLikeSendDataOutput"
            - $ref: "#/components/schemas/HederaLikeSendTokenDataOutput"
            - $ref: "#/components/schemas/HederaLikeStakeDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeAddProxyDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeAnonymousProxyDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeBondDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeBondExtraDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeChillDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeKillAnonymousDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeRebondDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeRemoveProxyDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeSendDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeSetPayeeDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeUnbondDataOutput"
            - $ref: "#/components/schemas/PolkadotLikeWithdrawUnbondedDataOutput"
            - $ref: "#/components/schemas/RippleLikeSendDataOutput"
            - $ref: "#/components/schemas/SolanaLikeCreateDelegateStakeDataOutput"
            - $ref: "#/components/schemas/SolanaLikeDeactivateStakeDataOutput"
            - $ref: "#/components/schemas/SolanaLikeDelegateStakeDataOutput"
            - $ref: "#/components/schemas/SolanaLikeMergeStakeDataOutput"
            - $ref: "#/components/schemas/SolanaLikeSendDataOutput"
            - $ref: "#/components/schemas/SolanaLikeSplitDeactivateStakeDataOutput"
            - $ref: "#/components/schemas/SolanaLikeSplitStakeDataOutput"
            - $ref: "#/components/schemas/SolanaLikeWithdrawStakeDataOutput"
            - $ref: "#/components/schemas/SolanaLikeSendTokenDataOutput"
            - $ref: "#/components/schemas/SolanaLikeFundAndSendTokenDataOutput"
            - $ref: "#/components/schemas/SolanaLikeCreateTokenAccountDataOutput"
            - $ref: "#/components/schemas/StellarLikeSendDataOutput"
            - $ref: "#/components/schemas/SuiLikeSendDataOutput"
            - $ref: "#/components/schemas/SuiLikeTransferTokenDataOutput"
            - $ref: "#/components/schemas/SuiLikeStakeDataOutput"
            - $ref: "#/components/schemas/SuiLikeUnstakeDataOutput"
            - $ref: "#/components/schemas/TezosLikeSendDataOutput"
            - $ref: "#/components/schemas/TezosLikeDelegateDataOutput"
            - $ref: "#/components/schemas/TezosLikeUndelegateDataOutput"
            - $ref: "#/components/schemas/TronLikeSendDataOutput"
            - $ref: "#/components/schemas/TronLikeSendTokenDataOutput"
          type: object
          discriminator:
            propertyName: type
            mapping:
              BITCOIN_LIKE_SEND: "#/components/schemas/BitcoinLikeSendDataOutput"
              CANTON_LIKE_SEND: "#/components/schemas/CantonLikeSendDataOutput"
              CANTON_LIKE_SEND_TOKEN: "#/components/schemas/CantonLikeSendTokenDataOutput"
              CANTON_LIKE_WITHDRAW: "#/components/schemas/CantonLikeWithdrawDataOutput"
              CANTON_LIKE_RECEIVE: "#/components/schemas/CantonLikeReceiveDataOutput"
              CANTON_LIKE_PRE_APPROVAL: "#/components/schemas/CantonLikePreApprovalDataOutput"
              CARDANO_LIKE_SEND: "#/components/schemas/CardanoSendDataOutput"
              CARDANO_LIKE_STAKING_DELEGATE: "#/components/schemas/CardanoStakingDelegateDataOutput"
              CARDANO_LIKE_STAKING_DEREGISTER: "#/components/schemas/CardanoStakingDeregisterDataOutput"
              CARDANO_LIKE_STAKING_REGISTER: "#/components/schemas/CardanoStakingRegisterDataOutput"
              CARDANO_LIKE_STAKING_WITHDRAW: "#/components/schemas/CardanoStakingWithdrawDataOutput"
              ETHEREUM_LIKE_DEPLOY_CONTRACT: "#/components/schemas/EthereumLikeDeployContractDataOutput"
              ETHEREUM_LIKE_EXECUTE_CONTRACT: "#/components/schemas/EthereumLikeExecuteContractDataOutput"
              ETHEREUM_LIKE_SEND: "#/components/schemas/EthereumLikeSendDataOutput"
              GENERIC_TRANSACTION: "#/components/schemas/GenericTransactionDataOutput"
              HEDERA_LIKE_SEND: "#/components/schemas/HederaLikeSendDataOutput"
              HEDERA_LIKE_SEND_TOKEN: "#/components/schemas/HederaLikeSendTokenDataOutput"
              HEDERA_LIKE_STAKE: "#/components/schemas/HederaLikeStakeDataOutput"
              POLKADOT_LIKE_ADDPROXY: "#/components/schemas/PolkadotLikeAddProxyDataOutput"
              POLKADOT_LIKE_ANONYMOUSPROXY: "#/components/schemas/PolkadotLikeAnonymousProxyDataOutput"
              POLKADOT_LIKE_BOND: "#/components/schemas/PolkadotLikeBondDataOutput"
              POLKADOT_LIKE_BONDEXTRA: "#/components/schemas/PolkadotLikeBondExtraDataOutput"
              POLKADOT_LIKE_CHILL: "#/components/schemas/PolkadotLikeChillDataOutput"
              POLKADOT_LIKE_KILLANONYMOUS: "#/components/schemas/PolkadotLikeKillAnonymousDataOutput"
              POLKADOT_LIKE_REBOND: "#/components/schemas/PolkadotLikeRebondDataOutput"
              POLKADOT_LIKE_REMOVEPROXY: "#/components/schemas/PolkadotLikeRemoveProxyDataOutput"
              POLKADOT_LIKE_SEND: "#/components/schemas/PolkadotLikeSendDataOutput"
              POLKADOT_LIKE_SETPAYEE: "#/components/schemas/PolkadotLikeSetPayeeDataOutput"
              POLKADOT_LIKE_UNBOND: "#/components/schemas/PolkadotLikeUnbondDataOutput"
              POLKADOT_LIKE_WITHDRAWUNBONDED: "#/components/schemas/PolkadotLikeWithdrawUnbondedDataOutput"
              RIPPLE_LIKE_SEND: "#/components/schemas/RippleLikeSendDataOutput"
              SOLANA_LIKE_CREATE_DELEGATE_STAKE: "#/components/schemas/SolanaLikeCreateDelegateStakeDataOutput"
              SOLANA_LIKE_DEACTIVATE_STAKE: "#/components/schemas/SolanaLikeDeactivateStakeDataOutput"
              SOLANA_LIKE_DELEGATE_STAKE: "#/components/schemas/SolanaLikeDelegateStakeDataOutput"
              SOLANA_LIKE_MERGE_STAKE: "#/components/schemas/SolanaLikeMergeStakeDataOutput"
              SOLANA_LIKE_SEND: "#/components/schemas/SolanaLikeSendDataOutput"
              SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE: "#/components/schemas/SolanaLikeSplitDeactivateStakeDataOutput"
              SOLANA_LIKE_SPLIT_STAKE: "#/components/schemas/SolanaLikeSplitStakeDataOutput"
              SOLANA_LIKE_WITHDRAW_STAKE: "#/components/schemas/SolanaLikeWithdrawStakeDataOutput"
              SOLANA_LIKE_SEND_TOKEN: "#/components/schemas/SolanaLikeSendTokenDataOutput"
              SOLANA_LIKE_FUND_AND_SEND_TOKEN: "#/components/schemas/SolanaLikeFundAndSendTokenDataOutput"
              SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT: "#/components/schemas/SolanaLikeCreateTokenAccountDataOutput"
              STELLAR_LIKE_SEND: "#/components/schemas/StellarLikeSendDataOutput"
              SUI_LIKE_SEND: "#/components/schemas/SuiLikeSendDataOutput"
              SUI_LIKE_SEND_TOKEN: "#/components/schemas/SuiLikeTransferTokenDataOutput"
              SUI_LIKE_STAKE: "#/components/schemas/SuiLikeStakeDataOutput"
              SUI_LIKE_UNSTAKE: "#/components/schemas/SuiLikeUnstakeDataOutput"
              TEZOS_LIKE_SEND: "#/components/schemas/TezosLikeSendDataOutput"
              TEZOS_LIKE_DELEGATE: "#/components/schemas/TezosLikeDelegateDataOutput"
              TEZOS_LIKE_UNDELEGATE: "#/components/schemas/TezosLikeUndelegateDataOutput"
              TRON_LIKE_SEND: "#/components/schemas/TronLikeSendDataOutput"
              TRON_LIKE_SEND_TOKEN: "#/components/schemas/TronLikeSendTokenDataOutput"
      required:
        - accountId
        - transaction
      additionalProperties: false
      description: Create transaction request data
    CreateAccountRequestData:
      type: object
      properties:
        name:
          type: string
          minLength: 1
          maxLength: 40
          description: Account name
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use network instead. Currency
        contractAddress:
          anyOf:
            - type: string
              minLength: 1
            - type: "null"
          description: Token issuer
        tokenIdentifier:
          anyOf:
            - type: string
              minLength: 1
            - type: "null"
          description: Token identifier
        governance:
          oneOf:
            - type: object
              properties:
                type:
                  type: string
                  const: CLASSIC
                policy:
                  anyOf:
                    - type: object
                      properties:
                        policyId:
                          type: string
                          minLength: 1
                      required:
                        - policyId
                      additionalProperties: false
                      description: Account policy
                    - type: object
                      properties:
                        rules:
                          type: array
                          items:
                            $ref: "#/components/schemas/ClassicGovRuleData"
                      required:
                        - rules
                      additionalProperties: false
                      description: Account governance rules
                  description: Account policy or governance rules
              required:
                - type
                - policy
              additionalProperties: false
              description: Classic governance
            - type: object
              properties:
                type:
                  type: string
                  const: TRADELINK
                assetManagerId:
                  type: string
                exchangeConfigs:
                  type: array
                  items:
                    type: object
                    properties:
                      exchangeId:
                        type: string
                        description: Tradelink exchange id
                      repledgeAuthorized:
                        type: boolean
                        description: Determines whether this exchange is authorized to repledge on this
                          account
                      needsAssetManagerApprovalForSettlements:
                        type: boolean
                        description: Determines whether asset manager will "pre-approve" the settlement
                          requests on this account
                    required:
                      - exchangeId
                      - repledgeAuthorized
                      - needsAssetManagerApprovalForSettlements
                    additionalProperties: false
              required:
                - type
                - assetManagerId
                - exchangeConfigs
              additionalProperties: false
              description: Tradelink governance
            - type: object
              properties:
                type:
                  type: string
                  const: RAW_SIGNING
                policy:
                  type: object
                  properties:
                    rules:
                      type: array
                      items:
                        type: object
                        properties:
                          operationType:
                            type: string
                            const: SIGN_DIGESTS
                          reviewSteps:
                            type: array
                            items:
                              type: object
                              properties:
                                quorum:
                                  type: number
                                  minimum: 0
                                  description: Number of required approvals for the step
                                userIds:
                                  type: array
                                  items:
                                    type: string
                                    minLength: 1
                                  description: User ids in the step
                              required:
                                - quorum
                                - userIds
                              additionalProperties: false
                              description: Review step with users
                        required:
                          - operationType
                          - reviewSteps
                        additionalProperties: false
                        description: Digest signing rule
                  required:
                    - rules
                  additionalProperties: false
              required:
                - type
                - policy
              additionalProperties: false
              description: Raw signing governance
          description: Governance fields
          type: object
        index:
          type: number
          minimum: 0
          description: Account index
        derivationPath:
          type: string
          description: Account bip44 derivation path
        type:
          type: string
          enum:
            - BITCOIN_LIKE
            - CANTON_LIKE
            - CARDANO_LIKE
            - ETHEREUM_LIKE
            - GENERIC_LIKE
            - HEDERA_LIKE
            - POLKADOT_LIKE
            - RAW_SIGNING
            - RIPPLE_LIKE
            - SOLANA_LIKE
            - STELLAR_LIKE
            - SUI_LIKE
            - TEZOS_LIKE
            - TRON_LIKE
      required:
        - name
        - currency
        - contractAddress
        - tokenIdentifier
        - governance
        - index
        - derivationPath
        - type
      additionalProperties: false
      description: Create account request data
    ClassicGovRuleData:
      type: object
      properties:
        reviewSteps:
          minItems: 1
          type: array
          items:
            anyOf:
              - type: object
                properties:
                  quorum:
                    type: number
                    minimum: 0
                    description: Number of required approvals for the step
                  userIds:
                    type: array
                    items:
                      type: string
                      minLength: 1
                    description: User ids in the step
                required:
                  - quorum
                  - userIds
                additionalProperties: false
                description: Review step with users
              - type: object
                properties:
                  quorum:
                    type: number
                    minimum: 0
                    description: Number of required approvals for the step
                  groupId:
                    type: string
                    minLength: 1
                    description: Group id in the step
                required:
                  - quorum
                  - groupId
                additionalProperties: false
                description: Review step with group
          description: Review steps
        threshold:
          type: object
          properties:
            min:
              anyOf:
                - type: string
                  minLength: 1
                  pattern: ^([1-9]\d*|0)$
                - type: "null"
              description: Minimum transaction amount
            max:
              anyOf:
                - type: string
                  minLength: 1
                  pattern: ^([1-9]\d*|0)$
                - type: "null"
              description: Maximum transaction amount
          required:
            - min
            - max
          additionalProperties: false
          description: Threshold for the transaction value
        whitelistIds:
          type: array
          items:
            type: string
            minLength: 1
          description: IDs of whitelists for the recipient address
        operationType:
          type: string
          enum:
            - SEND
            - STAKE
            - DEPLOY_CONTRACT
            - EXECUTE_CONTRACT
            - SIGN_MESSAGE
            - ACTIVATE_TOKEN
            - RECEIVE
          description: Allowed action
      required:
        - reviewSteps
        - operationType
      additionalProperties: false
      description: Account governance rule
    EditAccountRequestData:
      type: object
      properties:
        name:
          type: string
          minLength: 1
          maxLength: 40
          description: Account name
        governance:
          oneOf:
            - type: object
              properties:
                type:
                  type: string
                  const: CLASSIC
                policy:
                  anyOf:
                    - type: object
                      properties:
                        policyId:
                          type: string
                          minLength: 1
                      required:
                        - policyId
                      additionalProperties: false
                      description: Account policy
                    - type: object
                      properties:
                        rules:
                          type: array
                          items:
                            $ref: "#/components/schemas/ClassicGovRuleData"
                      required:
                        - rules
                      additionalProperties: false
                      description: Account governance rules
                  description: Account policy or governance rules
              required:
                - type
                - policy
              additionalProperties: false
              description: Classic governance
            - type: object
              properties:
                type:
                  type: string
                  const: TRADELINK
                exchangeConfigs:
                  type: array
                  items:
                    type: object
                    properties:
                      exchangeId:
                        type: string
                        description: Tradelink exchange id
                      repledgeAuthorized:
                        type: boolean
                        description: Determines whether this exchange is authorized to repledge on this
                          account
                      needsAssetManagerApprovalForSettlements:
                        type: boolean
                        description: Determines whether asset manager will "pre-approve" the settlement
                          requests on this account
                    required:
                      - exchangeId
                      - repledgeAuthorized
                      - needsAssetManagerApprovalForSettlements
                    additionalProperties: false
              required:
                - type
                - exchangeConfigs
              additionalProperties: false
              description: Tradelink governance
            - type: object
              properties:
                type:
                  type: string
                  const: RAW_SIGNING
                policy:
                  type: object
                  properties:
                    rules:
                      type: array
                      items:
                        type: object
                        properties:
                          operationType:
                            type: string
                            const: SIGN_DIGESTS
                          reviewSteps:
                            type: array
                            items:
                              type: object
                              properties:
                                quorum:
                                  type: number
                                  minimum: 0
                                  description: Number of required approvals for the step
                                userIds:
                                  type: array
                                  items:
                                    type: string
                                    minLength: 1
                                  description: User ids in the step
                              required:
                                - quorum
                                - userIds
                              additionalProperties: false
                              description: Review step with users
                        required:
                          - operationType
                          - reviewSteps
                        additionalProperties: false
                        description: Digest signing rule
                  required:
                    - rules
                  additionalProperties: false
              required:
                - type
                - policy
              additionalProperties: false
              description: Raw signing governance
          description: Governance fields
          type: object
      required:
        - name
        - governance
      additionalProperties: false
      description: Edit account request data
    CantonTransferProposalOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transfer amount
        contractId:
          type: string
          description: ID of the transfer-proposal contract
        instrumentAdmin:
          type: string
          description: Issuer of the instrument being transferred
        instrumentId:
          type: string
          description: ID of the instrument being transferred
        expiresAtMicros:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Expiration timestamp in microseconds
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Optional reason attached to the transfer
        sender:
          type: string
          description: Party proposing to send the asset
        recipient:
          type: string
          description: Intended recipient of the proposed transfer
      required:
        - amount
        - contractId
        - instrumentAdmin
        - instrumentId
        - expiresAtMicros
        - reason
        - sender
        - recipient
      additionalProperties: false
      description: A pending asset-transfer request
    BitcoinLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: BITCOIN_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
            feePerByte:
              description: Fee per byte
              anyOf:
                - type: string
                  minLength: 1
                  pattern: ^([1-9]\d*|0)$
                - type: "null"
          required:
            - type
          additionalProperties: false
          description: Bitcoin-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Bitcoin-like send data
    CantonLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        executeBeforeSeconds:
          description: Execute before seconds
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Optional reason attached to the onchain operation
        type:
          type: string
          const: CANTON_LIKE_SEND
      required:
        - amount
        - currency
        - recipient
        - reason
        - type
      additionalProperties: false
      description: Canton-like send data
    CantonLikeSendTokenDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        executeBeforeSeconds:
          description: Execute before seconds
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Optional reason attached to the onchain operation
        type:
          type: string
          const: CANTON_LIKE_SEND_TOKEN
      required:
        - amount
        - currency
        - recipient
        - reason
        - type
      additionalProperties: false
      description: Canton-like send token data
    CantonLikeWithdrawDataOutput:
      type: object
      properties:
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transfer currency
        transferProposal:
          $ref: "#/components/schemas/CantonTransferProposalOutput"
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Reason of the verdict
        type:
          type: string
          const: CANTON_LIKE_WITHDRAW
      required:
        - currency
        - transferProposal
        - reason
        - type
      additionalProperties: false
      description: Canton-like withdraw data
    CantonLikeReceiveDataOutput:
      type: object
      properties:
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transfer currency
        transferProposal:
          $ref: "#/components/schemas/CantonTransferProposalOutput"
        verdict:
          type: string
          enum:
            - ACCEPT
            - REJECT
          description: Accept or reject the transfer
        reason:
          anyOf:
            - type: string
            - type: "null"
          description: Reason of the verdict
        type:
          type: string
          const: CANTON_LIKE_RECEIVE
      required:
        - currency
        - transferProposal
        - verdict
        - reason
        - type
      additionalProperties: false
      description: Canton-like receive data
    CantonLikePreApprovalDataOutput:
      type: object
      properties:
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        recipient:
          type: string
          minLength: 1
          description: Recipient party on which to enable pre-approval
        type:
          type: string
          const: CANTON_LIKE_PRE_APPROVAL
      required:
        - currency
        - recipient
        - type
      additionalProperties: false
      description: Canton-like pre-approval data
    CardanoSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: CARDANO_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Cardano-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Cardano-like send data
    CardanoStakingDelegateDataOutput:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_DELEGATE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Cardano-like fee strategy
        stakePoolId:
          type: string
          minLength: 1
          maxLength: 100
          description: ""
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - stakePoolId
      additionalProperties: false
      description: Cardano-like staking delegate
    CardanoStakingDeregisterDataOutput:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_DEREGISTER
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Cardano-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to deregister
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - amount
      additionalProperties: false
      description: Cardano-like staking deregister data
    CardanoStakingRegisterDataOutput:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_REGISTER
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Cardano-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to register
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - amount
      additionalProperties: false
      description: Cardano-like staking register data
    CardanoStakingWithdrawDataOutput:
      type: object
      properties:
        type:
          type: string
          const: CARDANO_LIKE_STAKING_WITHDRAW
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Cardano-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to withdraw
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
        - amount
      additionalProperties: false
      description: Cardano-like staking withdraw data
    EthereumLikeDeployContractDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          const: "0x0000000000000000000000000000000000000000"
        type:
          type: string
          const: ETHEREUM_LIKE_DEPLOY_CONTRACT
        contractData:
          description: Contract data in hexadecimal format
          type: string
        feeStrategy:
          $ref: "#/components/schemas/EthereumLikeFeeStrategyOutput"
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - contractData
        - feeStrategy
      additionalProperties: false
      description: Ethereum-like deploy contract data
    EthereumLikeFeeStrategyOutput:
      anyOf:
        - type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
            gasPrice:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Gas price
            gasLimit:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Gas limit
          required:
            - type
            - gasPrice
            - gasLimit
          additionalProperties: false
          description: Ethereum-like legacy fee strategy
        - type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
            maxPriorityFeePerGas:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Maximum priority fee per gas
            maxFeePerGas:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Maximum fee per gas (base + priority)
            gasLimit:
              type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
              description: Gas limit
          required:
            - type
            - maxPriorityFeePerGas
            - maxFeePerGas
            - gasLimit
          additionalProperties: false
          description: Ethereum-like EIP-1559 fee strategy
      description: Ethereum-like fee strategy
    EthereumLikeExecuteContractDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: ETHEREUM_LIKE_EXECUTE_CONTRACT
        contractData:
          description: Contract call data in hexadecimal format
          type: string
        feeStrategy:
          $ref: "#/components/schemas/EthereumLikeFeeStrategyOutput"
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - contractData
        - feeStrategy
      additionalProperties: false
      description: Ethereum-like execute contract data
    EthereumLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: ETHEREUM_LIKE_SEND
        feeStrategy:
          $ref: "#/components/schemas/EthereumLikeFeeStrategyOutput"
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Ethereum-like send data
    GenericTransactionDataOutput:
      type: object
      properties:
        type:
          type: string
          const: GENERIC_TRANSACTION
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        rawTx:
          type: string
          description: Raw tx
      required:
        - type
        - currency
        - rawTx
      additionalProperties: false
      description: Generic transaction data
    HederaLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: HEDERA_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Hedera-like send data
    HederaLikeSendTokenDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: HEDERA_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Hedera-like send token data
    HederaLikeStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: HEDERA_LIKE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        nodeId:
          type: string
          minLength: 1
          pattern: ^(-?[1-9]\d*|0)$
          description: Node ID to delegate to
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
      required:
        - type
        - currency
        - nodeId
        - maxFee
        - feeStrategy
      additionalProperties: false
      description: Hedera-like stake data
    PolkadotLikeAddProxyDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_ADDPROXY
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        kind:
          type: string
          const: Staking
          description: Proxy kind
        proxy:
          type: string
          description: Proxy address
      required:
        - type
        - currency
        - kind
        - proxy
      additionalProperties: false
      description: Polkadot-like add proxy data
    PolkadotLikeAnonymousProxyDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_ANONYMOUSPROXY
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      additionalProperties: false
      description: Polkadot-like anonymous proxy data
    PolkadotLikeBondDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_BOND
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        payee:
          type: string
          enum:
            - Staked
            - Stash
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - payee
        - amount
      additionalProperties: false
      description: Polkadot-like bond data
    PolkadotLikeBondExtraDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_BONDEXTRA
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - amount
      additionalProperties: false
      description: Polkadot-like bond extra data
    PolkadotLikeChillDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_CHILL
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      additionalProperties: false
      description: Polkadot-like chill data
    PolkadotLikeKillAnonymousDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_KILLANONYMOUS
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      additionalProperties: false
      description: Polkadot-like kill anonymous data
    PolkadotLikeRebondDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_REBOND
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - amount
      additionalProperties: false
      description: Polkadot-like rebond data
    PolkadotLikeRemoveProxyDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_REMOVEPROXY
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        kind:
          type: string
          const: Staking
        proxy:
          type: string
          description: Proxy address
      required:
        - type
        - currency
        - kind
        - proxy
      additionalProperties: false
      description: Polkadot-like remove proxy data
    PolkadotLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: POLKADOT_LIKE_SEND
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
      additionalProperties: false
      description: Polkadot-like send data
    PolkadotLikeSetPayeeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_SETPAYEE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        payee:
          type: string
          enum:
            - Staked
            - Stash
      required:
        - type
        - currency
        - payee
      additionalProperties: false
      description: Polkadot-like set payee data
    PolkadotLikeUnbondDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_UNBOND
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount
      required:
        - type
        - currency
        - amount
      additionalProperties: false
      description: Polkadot-like unbond data
    PolkadotLikeWithdrawUnbondedDataOutput:
      type: object
      properties:
        type:
          type: string
          const: POLKADOT_LIKE_WITHDRAWUNBONDED
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
      required:
        - type
        - currency
      additionalProperties: false
      description: Polkadot-like withdraw unbonded data
    RippleLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: RIPPLE_LIKE_SEND
        destinationTag:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^(-?[1-9]\d*|0)$
            - type: "null"
          description: Destination tag
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          additionalProperties: false
          description: Ripple-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - destinationTag
        - feeStrategy
      additionalProperties: false
      description: Ripple-like send data
    SolanaLikeCreateDelegateStakeDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          description: Delegated vote address
        type:
          type: string
          const: SOLANA_LIKE_CREATE_DELEGATE_STAKE
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Solana-like create delegate stake data
    SolanaLikeDeactivateStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_DEACTIVATE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      additionalProperties: false
      description: Solana-like deactivate stake data
    SolanaLikeDelegateStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_DELEGATE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          description: Delegated vote address
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - recipient
        - stakeAccount
        - feeStrategy
      additionalProperties: false
      description: Solana-like delegate stake data
    SolanaLikeMergeStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_MERGE_STAKE
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        mergeSrcAccount:
          type: string
          description: Source stake address
        mergeDstAccount:
          type: string
          description: Destination stake address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - mergeSrcAccount
        - mergeDstAccount
        - feeStrategy
      additionalProperties: false
      description: Solana-like merge stake data
    SolanaLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SOLANA_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Solana-like send data
    SolanaLikeSplitDeactivateStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - type
        - amount
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      additionalProperties: false
      description: Solana-like split deactivate stake data
    SolanaLikeSplitStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_SPLIT_STAKE
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - type
        - amount
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      additionalProperties: false
      description: Solana-like split stake data
    SolanaLikeWithdrawStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_WITHDRAW_STAKE
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakeAccount:
          type: string
          description: Stake account address
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - type
        - amount
        - currency
        - maxFee
        - stakeAccount
        - feeStrategy
      additionalProperties: false
      description: Solana-like withdraw stake data
    SolanaLikeSendTokenDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SOLANA_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Solana-like send token data
    SolanaLikeFundAndSendTokenDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SOLANA_LIKE_FUND_AND_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Solana-like fund token account and send token data
    SolanaLikeCreateTokenAccountDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Solana-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
      additionalProperties: false
      description: Solana-like create token account
    StellarLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: STELLAR_LIKE_SEND
        memo:
          anyOf:
            - oneOf:
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_TEXT
                    value:
                      type: string
                      maxLength: 28
                      description: Text memo (at most a 28 bytes string)
                  required:
                    - type
                    - value
                  additionalProperties: false
                  description: Text memo
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_ID
                    value:
                      type: string
                      minLength: 1
                      pattern: ^(-?[1-9]\d*|0)$
                      description: Id memo (unsigned 64 bits integer)
                  required:
                    - type
                    - value
                  additionalProperties: false
                  description: Id memo
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_HASH
                    value:
                      type: string
                      maxLength: 128
                      pattern: ^[a-fA-F0-9]+$
                      description: Transaction hash memo (64 bytes hexadecimal string)
                  required:
                    - type
                    - value
                  additionalProperties: false
                  description: Hash memo
                - type: object
                  properties:
                    type:
                      type: string
                      const: MEMO_RETURN
                    value:
                      type: string
                      maxLength: 128
                      pattern: ^[a-fA-F0-9]+$
                      description: A 64 bytes hexadecimal string intended to be interpreted as the
                        hash of the transaction the sender is refunding.
                  required:
                    - type
                    - value
                  additionalProperties: false
                  description: Return memo
              type: object
            - type: "null"
          description: Stellar memo
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Stellar-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - memo
        - feeStrategy
      additionalProperties: false
      description: Stellar-like send data
    SuiLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SUI_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Sui-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Sui-like send data
    SuiLikeTransferTokenDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: SUI_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Sui-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Sui-like transfer token data
    SuiLikeStakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SUI_LIKE_STAKE
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Sui-like fee strategy
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        validator:
          type: string
          minLength: 1
          description: Validator address
      required:
        - type
        - feeStrategy
        - amount
        - currency
        - maxFee
        - validator
      additionalProperties: false
      description: Sui-like stake data
    SuiLikeUnstakeDataOutput:
      type: object
      properties:
        type:
          type: string
          const: SUI_LIKE_UNSTAKE
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Sui-like fee strategy
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        stakedSuiId:
          type: string
          minLength: 1
          description: Staked object to (partially?) unstake
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Amount to unstake from the position
        useAllAmount:
          type: boolean
          description: Whether to unstake the full amount (triggers different sets of
            transaction commands)
      required:
        - type
        - feeStrategy
        - currency
        - maxFee
        - stakedSuiId
        - amount
        - useAllAmount
      additionalProperties: false
      description: Sui-like unstake data
    TezosLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: TEZOS_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          additionalProperties: false
          description: Tezos-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Tezos-like send data
    TezosLikeDelegateDataOutput:
      type: object
      properties:
        type:
          type: string
          const: TEZOS_LIKE_DELEGATE
        amount:
          description: "Deprecated: DO NOT USE!"
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          additionalProperties: false
          description: Tezos-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - recipient
        - feeStrategy
      additionalProperties: false
      description: Tezos-like delegate data
    TezosLikeUndelegateDataOutput:
      type: object
      properties:
        type:
          type: string
          const: TEZOS_LIKE_UNDELEGATE
        amount:
          description: "Deprecated: DO NOT USE!"
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          description: "Deprecated: DO NOT USE!"
          type: string
          minLength: 1
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
                - CUSTOM
          required:
            - type
          additionalProperties: false
          description: Tezos-like fee strategy
      required:
        - type
        - currency
        - maxFee
        - feeStrategy
      additionalProperties: false
      description: Tezos-like undelegate data
    TronLikeSendDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: TRON_LIKE_SEND
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Tron-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Tron-like send data
    TronLikeSendTokenDataOutput:
      type: object
      properties:
        amount:
          type: string
          minLength: 1
          pattern: ^([1-9]\d*|0)$
          description: Transaction amount
        currency:
          type: string
          minLength: 1
          maxLength: 40
          pattern: ^\w+$
          description: Will be deprecated soon, use Account.network. Transaction currency
        maxFee:
          anyOf:
            - type: string
              minLength: 1
              pattern: ^([1-9]\d*|0)$
            - type: "null"
          description: Transaction max fee
        recipient:
          type: string
          minLength: 1
          description: Transaction recipient
        type:
          type: string
          const: TRON_LIKE_SEND_TOKEN
        feeStrategy:
          type: object
          properties:
            type:
              type: string
              enum:
                - SLOW
                - NORMAL
                - FAST
          required:
            - type
          additionalProperties: false
          description: Tron-like fee strategy
      required:
        - amount
        - currency
        - maxFee
        - recipient
        - type
        - feeStrategy
      additionalProperties: false
      description: Tron-like send token data
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
