Base URL
All API requests go to the following base URL:Making requests
Every request and response uses JSON. Set theContent-Type header to application/json on all requests that include a body.
Available endpoints
Error codes
The API uses standard HTTP status codes. When a request fails, the response body contains a JSON object with details about the error.
422 Unprocessable Entity is returned when required fields are missing from the request body — for example, when neither
user_id nor persona is provided to /simulate-review, or when neither user_id nor cold_start_signals is provided to /recommend.
503 Service Unavailable is returned when an external dependency — Google Places or Gemini AI — cannot be reached or is not configured.
Rate limiting
During high-traffic periods, the API’s AI service layer may become temporarily rate-limited. If this happens, you will receive a502 or 503 error response. Wait approximately 60 seconds before retrying your request.