cartridge-rpc
Cartridge RPC
Cartridge provides dedicated RPC endpoints for Starknet with authentication and CORS support.
Endpoints
- Mainnet:
https://api.cartridge.gg/x/starknet/mainnet - Sepolia:
https://api.cartridge.gg/x/starknet/sepolia
Pricing
Free for up to 1M requests/month. Additional requests: $5/1M, charged to the team.
Authentication Methods
API Token
curl https://api.cartridge.gg/x/starknet/mainnet \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "starknet_chainId",
"params": [],
"id": 1
}'
Domain Whitelisting
For browser apps, whitelist domains to make direct RPC calls without exposing tokens. Whitelisted domains are rate-limited per IP.
const response = await fetch('https://api.cartridge.gg/x/starknet/mainnet', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
jsonrpc: '2.0',
method: 'starknet_chainId',
params: [],
id: 1,
}),
});
Managing API Tokens
# Create a token
slot rpc tokens create <KEY_NAME> --team <TEAM_NAME>
# List tokens
slot rpc tokens list --team <TEAM_NAME>
# Delete a token
slot rpc tokens delete <KEY_ID> --team <TEAM_NAME>
Managing CORS Whitelist
Whitelists are specified as root domains; all subdomains are automatically included.
# Add a domain
slot rpc whitelist add <DOMAIN> --team <TEAM_NAME>
# List whitelisted domains
slot rpc whitelist list --team <TEAM_NAME>
# Remove a domain
slot rpc whitelist remove <ENTRY_ID> --team <TEAM_NAME>
Viewing Logs
slot rpc logs --team <TEAM_NAME>
Options:
--after <CURSOR>: Pagination cursor--limit <NUMBER>: Entries to return (default: 100)--since <DURATION>: Time period (30m,1h,24h)
Examples:
# Last 5 entries from past 30 minutes
slot rpc logs --team my-team --limit 5 --since 30m
# Paginate with cursor
slot rpc logs --team my-team --after <cursor> --limit 5
More from cartridge-gg/docs
controller-setup
Integrate Cartridge Controller wallet into Starknet applications. Use when setting up Controller for the first time, installing packages, configuring chains/RPC endpoints, or troubleshooting basic integration issues. Covers installation, Controller instantiation, ControllerConnector vs SessionConnector choice, chain configuration, and package compatibility.
69controller-react
Integrate Cartridge Controller into React applications using starknet-react. Use when building React/Next.js web apps with Controller, setting up StarknetConfig provider, using hooks like useConnect/useAccount, or implementing wallet connection components. Covers ControllerConnector setup, provider configuration, and transaction execution patterns.
67controller-backend
Integrate Cartridge Controller into backend services using Node.js, Rust, or headless mode. Use when building server-side applications, game backends, automated bots, or any non-browser environment that needs to execute Starknet transactions. Covers SessionProvider for Node.js, Rust SDK setup, and headless Controller with custom signing keys.
61slot-vrng
Integrate Cartridge's verifiable random number generator (vRNG) into onchain games.
59slot-rpc
Configure Cartridge RPC endpoints with API token authentication and CORS whitelisting.
58controller-native
Integrate Cartridge Controller into native mobile applications (iOS, Android, React Native) and web wrappers (Capacitor). Use when building mobile games or apps that need Controller wallet functionality with local keypair signing. Covers SessionConnector for native auth flows, Controller.c FFI bindings, passkey configuration with Apple App Site Association, and platform-specific setup.
58