Quickstart
The six-step integration path. Authenticate, list markets, quote, open, monitor, close.
1. Authenticate
curl -X POST https://api.dimes.fi/v1/prediction-markets/tokens \
-H "Authorization: Api-Key dm_live_skey_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "wallet_address": "0x1234...abcd" }'{
"token": "eyJhbGciOiJIUzI1NiIs...",
"expires_at": "2026-04-16T11:00:00.000Z"
}import { DimesClient, ApiKeyAuth } from "@dimes-dot-fi/sdk";
const client = new DimesClient({
auth: new ApiKeyAuth({
apiKey: process.env.DIMES_API_KEY,
walletAddress: "0x1234...abcd",
}),
});import { DimesClient, JwtAuth } from "@dimes-dot-fi/sdk";
import { DimesProvider } from "@dimes-dot-fi/sdk/react";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
const queryClient = new QueryClient();
const client = new DimesClient({
auth: new JwtAuth({ tokenUrl: "https://your-backend.com/api/dimes-token" }),
});
function App() {
return (
<QueryClientProvider client={queryClient}>
<DimesProvider client={client}>
<YourApp />
</DimesProvider>
</QueryClientProvider>
);
}2. List markets
curl https://api.dimes.fi/v1/prediction-markets/marketsconst { data: markets, hasMore } = await client.getMarkets();
for (const market of markets) {
console.log(market.ticker, market.leverage.maxBps);
}import { useMarkets } from "@dimes-dot-fi/sdk/react";
function MarketList() {
const { data, isLoading } = useMarkets();
if (isLoading) return <div>Loading...</div>;
return (
<ul>
{data?.data.map((market) => (
<li key={market.ticker}>{market.title}</li>
))}
</ul>
);
}3. Request a quote
4. Open the position
5. Monitor positions
6. Close
What's next
Last updated

