Skip to content
    hazBasehazBaseDocs
    HTTP API / WALLET CLIENT

    submitOwnerOperation

    Inspect HTTP routes, arguments and responses used by @hazbase/kit/wallet. Additional authentication and passkey APIs are covered in the auth SDK reference and integration guide.

    https://api.hazbase.com@hazbase/kit 0.9.0JSON

    User-session, signature and permission requirements differ by API. Check the specifications below and the connection requirements of your API environment. Check API access requirements

    POST /api/wallet/operation/submit

    Request

    @hazbase/kit/wallet
    submitOwnerOperation(input: SubmitOwnerOperationInput): Promise<SubmitOwnerOperationResult>
    emailSession is sent as an Authorization: Bearer header.

    Operation authorization requires deviceBindingId and highTrustToken.

    FieldTypeRequiredLocation
    chainIdnumberYesJSON body
    accountstringYesJSON body
    policyKeystringYesJSON body
    callsOwnerOperationCall[]YesJSON body
    grantTokenstringYesJSON body
    metadataRecord<string, unknown>NoJSON body
    endpointstringNoSDK endpoint override
    emailSessionstringYesAuthorization header
    deviceBindingIdstringYesJSON body
    highTrustTokenstringYesJSON body
    accountSaltstringNoJSON body
    paymasterValiditySecstringNoJSON body
    waitForReceiptbooleanNoJSON body

    POST requests include Content-Type: application/json and x-request-id. The request ID supports tracking; it is not a blanket idempotency guarantee.

    Response

    typescript
    export type SubmitOwnerOperationResult = {
      chainId: number;
      operation: PrepareOwnerOperationResult['operation'];
      policy: PrepareOwnerOperationResult['policy'];
      relayMode?: string;
      bundlerRpcUrl?: string | null;
      entryPointAddress?: string;
      smartAccountAddress: string;
      nonce: string;
      initCode: string;
      localUserOpHash?: string | null;
      submittedUserOpHash?: string | null;
      transactionHash?: string | null;
      gasEstimate?: Record<string, unknown>;
      receipt?: Record<string, unknown> | null;
      metadata?: Record<string, unknown>;
      status?: string;
    };

    Find nested types in the SDK reference. The client handles both a top-level response and a response wrapped in data.

    SubmitOwnerOperationResult

    Handling failures

    Non-2xx responses become HazbaseWalletApiError. Record status, code and message, distinguishing API errors from network failures. Keep credentials out of logs.

    Errors & troubleshooting
    View source