API Overview
Base URL
Section titled “Base URL”https://saasmaker-api.sarthakagrawal927.workers.devAll endpoints are prefixed with /v1/.
Authentication
Section titled “Authentication”Two methods are supported. See Authentication for details.
| Method | Header | Use case |
|---|---|---|
| API Key | X-Project-Key: pk_... | SDK, widgets, public endpoints |
| Session Token | Authorization: Bearer <token> | Dashboard, CLI, admin operations |
Request format
Section titled “Request format”All request bodies must be JSON with Content-Type: application/json.
Response format
Section titled “Response format”All responses return JSON. Successful responses return the resource or a list:
{ "data": [...], "total": 42, "page": 1, "limit": 20 }Or for single-resource operations:
{ "ok": true }Error format
Section titled “Error format”Errors return a JSON object with an error field and an appropriate HTTP status code:
{ "error": "Title is required" }Common status codes:
| Code | Meaning |
|---|---|
400 | Bad request (missing or invalid fields) |
403 | Forbidden (not the project owner) |
404 | Resource not found |
409 | Conflict (duplicate entry) |
413 | Payload too large |
The API allows cross-origin requests from any origin. Widgets and browser-based SDK calls work without proxy configuration.
Health check
Section titled “Health check”GET /healthReturns { "ok": true } if the API is running. No authentication required.
Rate limits
Section titled “Rate limits”The API runs on Cloudflare Workers with no hard rate limits currently enforced. Abuse may result in throttling.
Endpoints by service
Section titled “Endpoints by service”| Service | Prefix | Docs |
|---|---|---|
| Feedback | /v1/feedback | Feedback |
| Waitlist | /v1/waitlist | Waitlist |
| Testimonials | /v1/testimonials | Testimonials |
| Changelog | /v1/changelog | Changelog |
| Knowledge Base | /v1/indexes | Knowledge Base |
| Analytics | /v1/analytics | Analytics |