Developer Guide
Integrating Satelink into applications: keys, headers, chains, failover, and usage monitoring.
Practical guidance for integrating Satelink into an application.
Choose your integration
- Raw HTTP — any language, no dependency. See the API Reference.
@satelink/sdk— typed JS/TS client. See SDK.
Keys and environments
- Create one key per environment (
my-app-dev,my-app-prod) so usage and spend are separable. Keys are free. - Store keys in environment variables. The full key is shown only once at creation.
- Prefer the wallet-bound flow (MetaMask sign-to-create in the console) for production keys — deposits from your wallet then credit the right account automatically.
Handle the two billing statuses
402 Payment Required → free tier exhausted or zero credits.
The body contains exact remediation steps + calldata.
429 Too Many Requests → abuse limiter for automated non-developer traffic.
Honor Retry-After.
Treat 402 as a signal to top up (or to run the machine onboarding flow), not as an outage.
Failover strategy
Satelink publishes measured uptime and per-provider health
(/rpc/health) instead of a contractual SLA. For critical production paths
during this stage of the network, configure Satelink as primary with a
fallback RPC provider — standard multi-provider hygiene.
Monitor usage
- Per-key:
GET /api/keys/usage(requests today, spend, credits remaining). - Console: the Usage Metering page charts calls and spend per key per day.
- Set your own alerts on
credits_remaining— at $0.00003/call, $1 of headroom is ≈ 33,333 calls.
Cost planning
Flat rate means projections are one multiplication: expected monthly calls × $0.00003. One million calls = $30. The deposit console has a capacity estimator built in.