API Documentationv1 Reference
SiteGist API v1
Send messages to your chatbots, list bots, and read conversations programmatically. REST over HTTPS, JSON in and out.
Base URL
Base URL
https://www.sitegist.co/api/v1
Authentication
Create a key in the dashboard under Profile → API keys, then send it as a Bearer token on every request. Keys look like sk_live_… — keep them secret.
cURL
curl https://www.sitegist.co/api/v1/chatbots \ -H "Authorization: Bearer sk_live_YOUR_KEY"
Rate limits
120 requests/minute per API key. Exceeding it returns 429 with a Retry-After header.
Endpoints
POST
/chatSend a message and get the AI answer (also persists the conversation).
Request body
JSON
{
"chatbotId": "proj_abc123", // required — the chatbot/project id
"message": "What are your pricing plans?", // required
"sessionId": "sess_xyz" // optional — continue an existing conversation
}Example
cURL
curl -X POST https://www.sitegist.co/api/v1/chat \
-H "Authorization: Bearer sk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"chatbotId":"proj_abc123","message":"Hello"}'Response
200 OK
{
"sessionId": "sess_xyz",
"answer": "Our plans are Free, Pro ($19/mo) and Enterprise…"
}GET
/chatbotsList the chatbots owned by the API key.
Response
200 OK
{
"data": [
{ "id": "proj_abc123", "name": "Support Bot", "status": "ACTIVE", "createdAt": "2026-06-01T10:00:00.000Z" }
]
}GET
/conversations?chatbotId=proj_abc123List recent conversations (latest 100). chatbotId is optional.
Response
200 OK
{
"data": [
{
"id": "sess_xyz",
"chatbotId": "proj_abc123",
"customerEmail": "jane@example.com",
"status": "active",
"mode": "ai",
"messageCount": 6,
"createdAt": "2026-06-20T09:00:00.000Z",
"updatedAt": "2026-06-20T09:05:00.000Z"
}
]
}Errors
Errors return a JSON body with an error message and an appropriate status code.
Error
{ "error": "chatbotId and message are required." }400Missing/invalid parameters401Missing, invalid, or revoked API key404Chatbot not found / not yours429Rate limit exceeded (see Retry-After)502Answer generation failed