# FLINT — client SDKs > Off-chain market-data + trading API for the Flint on-chain spot DEX > on Solana. Six gRPC services in `sweetspot.api.v1`: AuthService, > MarketDataService, StatsService, MakerService, TxService, and > HistoricalService. Official client SDKs in Rust (tonic), Python > (grpcio + solders), and TypeScript-web (in-tree gRPC-Web transport over > @bufbuild/protobuf). > Wire-compatible with vanilla gRPC and gRPC-Web clients. The schema lives in `sweetspot-protos/proto/sweetspot/api/v1/`. Money values are decimal strings on the wire (for example, `"155.14"`). Authenticated services require a session token via `authorization: Bearer ` metadata — mint one with the AuthService signed-nonce flow (`Challenge -> sign -> Authenticate`) or, where supported, the passwordless organization flow. MarketDataService, StatsService, and HistoricalService are public; MakerService and TxService are authenticated. ## Schema - [api.proto](https://docs.xantasoft.com/api.proto): Bundled proto (every service in `sweetspot.api.v1`) — single-file copy for codegen tools. - [openapi.yaml](https://docs.xantasoft.com/openapi.yaml): OpenAPI 3.1 schema for the gRPC-Web service URLs. ## Overview - [Onboarding](https://docs.xantasoft.com/overview/onboarding): Endpoint setup, key registration, and first authenticated request. - [Exchange](https://docs.xantasoft.com/overview/exchange): On-chain market structure, swap modes (global vs cross), oracle-offset quoting, lot/atom unit system, live-vs-historical routing. - [Prices, sizes, units](https://docs.xantasoft.com/overview/units): Decimal-string contract; timestamp + enum conventions. - [Errors](https://docs.xantasoft.com/overview/errors): gRPC status codes + retry guidance. ## API - [API overview](https://docs.xantasoft.com/api/): Six services, URL convention, and schema download. - [Protocol reference](https://docs.xantasoft.com/api/reference): Generated protobuf service, message, enum, and field reference. - [Proto schema](https://docs.xantasoft.com/api/schema): Inline syntax-highlighted bundled proto. - [Protocols & transports](https://docs.xantasoft.com/api/transports): gRPC over HTTP/2 + gRPC-Web on the same URL; per-SDK defaults. ## SDK guides - [Rust SDK](https://docs.xantasoft.com/sdks/rust): Install, quickstart, configuration, error handling, decimal parsing, source links. - [Python SDK](https://docs.xantasoft.com/sdks/python): grpcio client, keypair auth, public stats/market-data/historical helpers, maker/tx helpers, and on-chain quoting/packing. - [TypeScript-web SDK](https://docs.xantasoft.com/sdks/typescript): ESM-only browser SDK; in-tree gRPC-Web transport with `for await` server streaming and pluggable interceptors. - [Python maker bot example](https://github.com/superis-labs/sweetspot-maker-example): runnable `flint-sdk` bot with Pyth/static pricing, oracle-offset laddering, inventory skew, dry-run/submit mode, slot watching, sequence persistence, program-id verification, and receipts. ## Recipes - [Auth flow](https://docs.xantasoft.com/sdks/auth): Keypair signed-nonce auth in Rust/Python; passwordless email login and API key auth in TypeScript; refresh strategy; revoke. - [Market data](https://docs.xantasoft.com/sdks/market-data): Subscribe to books, fills, and snapshots; reconcile with snapshots after reconnects. - [Quoting](https://docs.xantasoft.com/sdks/quoting): Rust and Python quoting helpers, order-list/oracle-offset/linear distribution builders, commit/receipt flow, balances. - [Polling vs streaming](https://docs.xantasoft.com/sdks/polling): When to use unary snapshots vs server-streaming RPCs. - [Historical queries](https://docs.xantasoft.com/sdks/historical): ClickHouse-backed range queries; pagination recipe; live + historical stitching. ## LLM-friendly bundles - [llms-full.txt](https://docs.xantasoft.com/llms-full.txt): Every overview, API, SDK, and recipe page concatenated into a single Markdown file. Drop into a Claude / GPT / Gemini context to ground completions in the canonical docs.