Developers
SineBoot API
A REST API for reading your SineBoot account programmatically. Bearer-key authentication, scoped permissions and a published OpenAPI 3.1 description.
Getting started
Create a key in your dashboard, then call the API with it. Keys are scoped, so a key can only do what you granted it.
1. Create an API key
Sign in and open Account settings. Choose the scopes the key needs — the key is shown once, so store it immediately.
2. Authenticate
Send the key as a bearer token on every request. There are no cookies or sessions in the API.
curl https://sineboot.in/api/v1/services \
-H "Authorization: Bearer YOUR_API_KEY"Endpoints
Base URL: https://sineboot.in/api/v1
/api/v1/servicesservices:readList every service on the account — VPS, dedicated servers, hosting and domains, newest first.
The full machine-readable description lives at /openapi.json (OpenAPI 3.1).
Scopes
A key carries only the permissions you tick when creating it.
services:readRead the services (VPS, dedicated, hosting, domains) owned by the account.
invoices:readRead the account’s invoices. Reserved — no endpoint uses this scope yet.
domains:readRead the account’s domains. Reserved — no endpoint uses this scope yet.
Errors & limits
Errors return a stable machine-readable code, never prose you have to parse.
| Status | error | Meaning |
|---|---|---|
| 401 | missing_api_key | No Authorization header, or it is not a bearer token. |
| 401 | invalid_api_key | The key does not exist or has been revoked. |
| 403 | insufficient_scope | The key is valid but was not granted the scope the endpoint needs. |
| 429 | rate_limited | Over 120 requests in 60 seconds for this key. |
Rate limit: 120 requests per 60 seconds per API key.
Resources for AI agents
Machine-readable descriptions of this site, at predictable URLs.
What SineBoot is, when to use it, and how an agent should call it.
OpenAPI 3.1 description of the public REST API.
Every indexable URL on the site.
Crawler policy, including named AI agents.
Every page on this site also serves a markdown representation. Send Accept: text/markdown and you get markdown instead of HTML.