/

SuiSui

Every product of the yolo API runs on Sui: market data, wallets and P/L, swaps, launchpads, perps, lending, research, streams and MCP. History reaches back to the start of Sui mainnet.

What works here

Base path and chain

One base URL for every chain. No chain parameter (or chain=sui).

Base URLhttps://yolo.casa/api/v1
Examplehttps://yolo.casa/api/v1/token?type=0x2::sui::SUI
HeaderAuthorization: Bearer $YOLO_API_KEY

Addresses and amounts

WhatFormatExample
CoinFull Move coin type: package::module::NAME0x2::sui::SUI
Wallet0x plus 64 hex characters0x0000000000000000000000000000000000000000000000000000000000000001
AmountsStrings in the coin's base units. SUI has 9 decimals; a coin's decimals are in its token data. USD values are numbers.

Venues

Aggregated swapsBest of Aftermath, Cetus and yolo's own router across Sui DEXes
LaunchpadsSuiPump, PopularSui, Amped, Cetus direct, Perpsplexity, Blast
LendingCurrent, Navi, Suilend, Scallop, Abyss
PerpsPerpsplexity markets

Sign and send

swap/build and lending/build return an unsigned transaction kind. Your wallet adds gas, signs and executes it on Sui mainnet; keep its commands exactly as returned. Each build aborts on chain below its minimum out.

TypeScript
import { Transaction } from '@mysten/sui/transactions';

const yolo = (path, body) =>
  fetch(`https://yolo.casa/api/v1/${path}`, {
    method: 'POST',
    headers: {
      Authorization: `Bearer ${process.env.YOLO_API_KEY}`,
      'Content-Type': 'application/json',
      'Idempotency-Key': crypto.randomUUID(),
    },
    body: JSON.stringify(body),
  }).then((r) => r.json());

// 1. Quote 1 SUI into USDC for this wallet.
const { data: quote } = await yolo('swap/quote', {
  coinIn: '0x2::sui::SUI',
  coinOut: USDC_COIN_TYPE,
  amountIn: '1000000000',
  owner: OWNER,
});

// 2. Build the unsigned transaction kind.
const { data: built } = await yolo('swap/build', {
  id: quote.id,
  slippageBps: 100,
  owner: OWNER,
});

// 3. Your wallet adds gas, signs and executes it.
const tx = Transaction.fromKind(built.kind);
tx.setSender(OWNER);
// then sign and execute tx with your wallet or SDK client

Fees

Swap quotes and builds are free to call. Each swap pays a 20 bps yolo fee on chain, and the quote's amountOut is net of it. Other API calls cost credits past the free allowance.

Coverage and freshness

Live from GET /status.

Endpoints

Every endpoint that works on Sui. Open one for its parameters, examples, a live response and a runner.