Skip to main content

Onboarding

Five minutes from zero to a working API key. Each step happens at truemarkets.co. There's nothing to install on your machine yet.

1. Sign up or log in

Go to truemarkets.co and create an account, or log in if you already have one.

You can sign in with a passkey, an email magic link, an email one-time code, or Sign in with Apple, whichever your authenticator supports. The same account works across the iOS app, the web app, and the API.

2. Verify your email

Open truemarkets.co/login. If this is your first session, you'll be prompted to verify your email. Open the message we sent and click the link, or enter the 6-digit code.

Verification only happens once

After verification, future logins use whatever method you registered (passkey, magic link, etc.). You can manage methods later from your account settings.

3. Complete KYC

To trade CeFi assets like BTC, you must complete identity verification (KYC). Start the flow from the True Markets iOS app or on the web at truemarkets.co/kyc. Click Get Verified and have a government-issued photo ID handy.

Most submissions clear in a few minutes. You'll get an email when verification completes, and CeFi trading and fiat funding unlock automatically.

NY residents and BTC

Residents of New York are not currently eligible to trade BTC on True Markets. All other assets and venues remain available.

4. Deposit funds

Head to truemarkets.co/portfolio and follow the deposit flow. You can fund the account with:

  • USD via Coinbase On-Ramp (cards, ACH, Apple Pay, etc.)
  • Crypto via on-chain transfer to your generated deposit address (Solana, Base, etc.)

USD deposits are auto-converted to a stablecoin (USDC) on settlement so they're tradable across CeFi and DeFi venues.

You can skip this step for read-only API exploration

Public endpoints (quotes, market data, asset catalog) work without funded balances. You only need a deposit when you actually place an order.

5. Create an API key

Go to truemarkets.co/settings/api-keys. API keys live behind passkey authentication, so the first time you visit the page will prompt you to Set up passkey if you don't already have one. Use Touch ID, Face ID, Windows Hello, or a hardware key (YubiKey, Titan, etc.).

Once your passkey is registered, click + Create. The browser will:

  1. Generate an EC P-256 key pair locally. The private key never leaves your machine.
  2. The public key is saved in the True Markets Platform for reference.
  3. Download a JSON bundle containing your key_id and the private_key (as a JWK).

Save that bundle somewhere safe, typically under ~/.tm/. Set the environment variable that the Quick Start and reference snippets expect, replacing the filename below with the bundle you just downloaded (e.g. api-key-a1b2c3.json):

export TM_KEY_FILE="$HOME/.tm/<your-downloaded-bundle>.json"

Add it to your .env, ~/.zshrc, or wherever you keep persistent shell config.

Treat the bundle like a password

Anyone with the JSON bundle can mint JWTs against your account. Don't commit it to git, paste it into chat tools, or copy it into shared environments. If it leaks, revoke the key immediately at settings/api-keys and create a new one.

You're done

With TM_KEY_FILE set, jump to the Quick Start to sign your first request, fetch a quote, and place an order.

Meet the community

Join the True Markets Discord to ask questions, share what you're building, and meet other integrators. The team is active there. For account-specific issues, email [email protected].