API Reference
All API endpoints are Vercel serverless functions located in the api/ directory. They follow RESTful conventions and use JSON for request/response bodies.
Base URL
Production: https://kinetic.email/api
Local: http://localhost:5173/api
Authentication
Most endpoints require a Supabase JWT in the Authorization header:
Authorization: Bearer <supabase-jwt>
See Authentication for details on obtaining and using tokens.
Common Response Patterns
Success
{
"success": true,
"data": { ... }
}
Error
{
"error": "Human-readable error message"
}
HTTP Status Codes
| Code | Meaning |
|---|---|
200 | Success |
400 | Bad request (missing/invalid parameters) |
401 | Unauthorized (missing or invalid JWT) |
402 | Payment required (insufficient tokens) |
403 | Forbidden (admin access required) |
405 | Method not allowed |
500 | Internal server error |
Endpoint Summary
Public Endpoints
| Endpoint | Method | Auth | Description |
|---|---|---|---|
/api/track-pixel | GET | None | Tracking pixel for email opens/interactions |
/api/blog-og | GET | None | Dynamic Open Graph image generation |
User Endpoints
| Endpoint | Method | Auth | Tokens | Description |
|---|---|---|---|---|
/api/generate | POST | User | ai_generation | AI email generation (RAG pipeline) |
/api/generate-email | POST | User | ai_generation | Simple AI email generation |
/api/send-email | POST | User | email_send | Send email via Resend |
/api/send-email-ses | POST | User | email_send | Send email via AWS SES |
/api/validate-amp | POST | User | — | Validate AMP4Email HTML |
/api/resend-status | GET | User | — | Check email delivery status |
Admin Endpoints
| Endpoint | Method | Auth | Description |
|---|---|---|---|
/api/admin/submit-content | POST | Admin | Upload content to RAG |
/api/admin/update-content | POST | Admin | Update RAG content |
/api/admin/delete-content | POST | Admin | Delete from RAG |
/api/admin/list-content | GET | Admin | Browse RAG library |
/api/admin/rag-stats | GET | Admin | RAG database statistics |
/api/admin/auto-tag | POST | Admin | AI content auto-tagging |
/api/admin/run-evaluation | POST | Admin | Run QA evaluation |
/api/admin/submit-evaluation | POST | Admin | Save evaluation results |
/api/admin/list-evaluations | GET | Admin | List past evaluations |
/api/admin/submit-feedback | POST | Admin | Submit user feedback |
CORS
API endpoints are restricted to the following origins:
https://kinetic.email
https://www.kinetic.email
http://localhost:5173
http://localhost:3000