Developer docs
HoundSat API
Automate your satellite IoT business: onboard customers, activate SIMs, read usage and invoices, and deliver device data to webhooks.
Everything in the HoundSat dashboard runs on this API, so anything you can do there your systems can do too. These docs are written for resellers: you manage your customers, their SIMs, plans and invoices. The For your customers section covers what your customers' developers build: receiving device messages on their own servers.
Base URL
Every path in these docs is relative to:
https://api.houndsat.comRequests and responses are JSON over HTTPS. Most endpoints, under /api/json, follow the JSON:API format; Making requests shows what that looks like.
Quickstart
Three requests from a token to active SIMs.
- 1
Sign in for a token
Use the email and password of a user in your organization. The token is valid for 14 days.
Terminal curl -X POST https://api.houndsat.com/api/auth/sign_in \ -H "Content-Type: application/json" \ -d '{"email": "integrations@acme.example", "password": "…"}' # {"token": "eyJhbGciOi…", "user": {…}} export HOUNDSAT_TOKEN="eyJhbGciOi…" - 2
List your devices
Every request carries the token. Lists are paginated, newest first.
Terminal curl "https://api.houndsat.com/api/json/devices?filter[status]=inventory" \ -H "Authorization: Bearer $HOUNDSAT_TOKEN" - 3
Activate them
Up to 500 devices per request, with one result per device.
Terminal curl -X POST https://api.houndsat.com/api/json/devices/bulk/activate \ -H "Authorization: Bearer $HOUNDSAT_TOKEN" \ -H "Content-Type: application/vnd.api+json" \ -d '{"data": {"ids": ["5f0c2b7e-8d41-4a96-b3e2-91c7d0a4e6f8"]}}'
Explore the docs
Conventions
- Ids are UUIDs. Timestamps are ISO 8601 in UTC; days and months are UTC dates.
- Data volumes are bytes. Money is US cents, with no tax.
- ICCIDs are 19 or 20 digits and IMSIs 15 digits, always sent as strings.
- You only ever see your own organization and the customers below it. Anything else answers as if it didn't exist.