SecureCheap REST API
Base URL: https://api.securecheap.com/v1
All API calls must be made over HTTPS. Requests made over plain HTTP will be rejected.
Authentication
All endpoints require an API key passed in the Authorization header:
Authorization: Bearer sc_live_xxxxxxxxxxxxxxxxxxxxAPI keys are prefixed with sc_live_ for production keys and sc_test_ for sandbox keys.
Create or manage keys at Settings → API Keys.
Request format
- All request bodies are JSON (
Content-Type: application/json) - All timestamps are ISO 8601 UTC strings:
2025-01-15T10:30:00Z - Pagination uses cursor-based style: pass
cursorfrom the previous response
Response format
All responses are JSON. Successful responses have this envelope:
{
"data": { ... },
"meta": {
"request_id": "req_01HXZ3M...",
"timestamp": "2025-01-15T10:30:00Z"
}
}List responses also include pagination info:
{
"data": [ ... ],
"meta": {
"request_id": "req_01HXZ3M...",
"timestamp": "2025-01-15T10:30:00Z",
"pagination": {
"cursor": "eyJpZCI6MTIzfQ",
"has_more": true,
"total": 47
}
}
}Rate limiting
| Plan | Rate limit |
|---|---|
| Free | 60 req/min |
| Pro | 600 req/min |
| Enterprise | 6,000 req/min |
When rate-limited you receive a 429 response with:
{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests. Retry after 12 seconds.",
"retry_after": 12
}
}Check the X-RateLimit-Remaining and X-RateLimit-Reset headers on every response.
Sections
| Section | Description |
|---|---|
| Authentication | API key management |
| Monitors | HTTP, SSL, keyword monitors |
| Servers | Agent-based server monitoring |
| Alerts | Alert rules and incidents |
| Error Reference | All error codes |