# Trustware ## Docs - [GET /allowance](https://docs.trustware.io/api-reference/allowance.md): Read the ERC-20 allowance an owner has granted to a spender on a given EVM chain. Proxied through Trustware so you do not need a public RPC endpoint. - [GET /balances](https://docs.trustware.io/api-reference/balances.md): Fetch all cross-chain token holdings for a wallet address across all supported networks simultaneously. - [GET /chains and /tokens](https://docs.trustware.io/api-reference/discovery.md): Discovery endpoints that list all chains and tokens supported by Trustware. Use these to populate selectors dynamically. - [API overview](https://docs.trustware.io/api-reference/overview.md): Authentication, base URL, and the four-step integration pattern for the Trustware REST API. - [POST /quote](https://docs.trustware.io/api-reference/quote.md): Get a fee estimate and expected output before the user confirms. AML/OFAC screening runs at this step. - [POST /receipt](https://docs.trustware.io/api-reference/receipt.md): Submit the transaction hash after signing and broadcasting. This is the handoff point — Trustware begins tracking from here. - [POST /route](https://docs.trustware.io/api-reference/route.md): Generate the transaction payload for signing. Creates a Trustware intent record that can be tracked through to completion. - [GET /status](https://docs.trustware.io/api-reference/status.md): Poll transaction progress after submitting the receipt. Returns status, transaction hashes, and the metadata you passed to /route. - [TypeScript types exported from @trustware/sdk](https://docs.trustware.io/api-reference/types.md): All public TypeScript types and enums exported by @trustware/sdk: config shapes, widget theming, error classes, event types, and wallet interfaces. - [GET /validate](https://docs.trustware.io/api-reference/validate.md): Verify that an API key is active and authorized. Use this for connectivity testing and key validation at startup. - [TrustwareConfigOptions configuration reference](https://docs.trustware.io/configuration/overview.md): TrustwareConfigOptions is the root config for TrustwareProvider. Controls routing, theming, wallet detection, retry behavior, and lifecycle callbacks. - [Rate limiting and retry configuration](https://docs.trustware.io/configuration/retry.md): Configure Trustware SDK rate-limit handling: automatic retry with exponential backoff, max retry count, and callbacks for monitoring rate limit status. - [Route configuration: chains, tokens, and amounts](https://docs.trustware.io/configuration/routes.md): The routes field sets the destination chain and token, slippage tolerance, route type, and amount constraints like fixed deposits and min/max guardrails. - [Customize the Trustware widget appearance](https://docs.trustware.io/configuration/theme.md): Customize the Trustware widget with theme colors and border radius, light/dark mode via the widget prop, and copy overrides via the messages field. - [WalletConnect configuration for Trustware](https://docs.trustware.io/configuration/walletconnect.md): Override the WalletConnect connector settings in the Trustware SDK: project ID, supported chains, dApp metadata, relay URL, QR modal, or disable it entirely. - [Handle errors from the Trustware SDK](https://docs.trustware.io/events-errors/error-handling.md): Catch and respond to errors using the onError callback or try/catch. Use TrustwareErrorCode to identify error types and act on them precisely. - [Trustware SDK lifecycle events reference](https://docs.trustware.io/events-errors/lifecycle-events.md): Subscribe to typed lifecycle events from the Trustware SDK using the onEvent callback in your config. - [Set minimum and maximum deposit amounts](https://docs.trustware.io/guides/amount-guardrails.md): Use minAmountOut and maxAmountOut in routes.options to constrain the deposit amount range while still letting users pick a value within those bounds. - [Lock the deposit widget to a fixed amount](https://docs.trustware.io/guides/fixed-amount.md): Use fixedFromAmount in routes.options to pre-set the Trustware deposit amount so users see a locked USD value and cannot change it at checkout. - [Update the deposit destination at runtime](https://docs.trustware.io/guides/runtime-destination.md): Use Trustware.setDestinationAddress(), setDestinationChain(), and setDestinationToken() to update the route target dynamically after the provider has mounted. - [Control the widget open state with a ref](https://docs.trustware.io/integration/controlled-widget.md): Use a TrustwareWidgetRef to open or close the deposit flow programmatically, and configure initial step, theme, and visibility callbacks. - [Drop-in widget with Trustware wallet detection](https://docs.trustware.io/integration/drop-in-widget.md): The zero-config integration path: wrap your component with TrustwareProvider and drop in TrustwareWidget — Trustware handles wallet selection for you. - [Build custom deposit UI with the headless core](https://docs.trustware.io/integration/headless-core.md): Use Trustware routing, wallet plumbing, and transaction orchestration without any widget UI by calling the Trustware core API directly. - [Connect your existing wallet to Trustware](https://docs.trustware.io/integration/host-wallet.md): Pass your existing Wagmi, RainbowKit, or viem wallet to TrustwareProvider using the wallet prop and autoDetect={false} to keep a single wallet state. - [What is Trustware](https://docs.trustware.io/introduction.md): Trustware is the Universal Deposit Layer, powering dynamic routing that lets any app accept any asset on any chain and settle to any destination. - [Get started with the Trustware SDK](https://docs.trustware.io/quickstart.md): Install @trustware/sdk, configure TrustwareConfigOptions, and render your first cross-chain deposit widget in a React app in under five minutes.