Documentation
API Reference.
Endpoints, authentication, and response formats for the Gallop Builder API.
Overview
REST API
The Gallop API lets you generate, edit, and manage pages programmatically. All requests use JSON and authenticate via Bearer token.
https://api.gallopbuilder.com/v1Authorization headerContent-Type: application/json/v1/). Breaking changes ship under new versions only.Authentication
API keys.
Every request must include your API key as a Bearer token. Keys are scoped to your account and can be rotated from the Gallop dashboard.
- Format: Keys start with
gp_followed by a 48-character alphanumeric string. - Rotation: Rotate keys from the dashboard. Old keys remain valid for 24 hours after rotation.
- Scoping: Each key is tied to a single Gallop account. Keys cannot be shared across accounts.
- Rate limits: Rate limits are per-key. Multiple keys on the same account share the account quota.
curl -X POST \
https://api.gallopbuilder.com
/v1/generate \
-H "Authorization:
Bearer gp_abc123..." \
-H "Content-Type:
application/json" \
-d '{
"prompt": "Build a landing
page for a dental clinic",
"language": "en",
"tone": "professional"
}'Endpoints
Available endpoints.
All endpoints are relative to the base URL. Methods shown with required body parameters.
prompt (string), language (string, optional), tone (string, optional), settings (object, optional).pageId (string), instruction (string). Returns the updated page schema.pageId (string), target (ISO 639-1 code). Returns a new page with translated content.?page= and ?limit= query parameters.pending, processing, complete, or failed.Generate
Request example.
The /generate endpoint accepts a prompt and returns a job ID. Generation is asynchronous — poll /status/:jobId or configure a webhook to receive the completed page.
Settings override your account defaults for this generation only. Omit fields to use defaults.
// POST /v1/generate
{
"prompt": "Landing page for a
yoga studio in Denver",
"language": "en",
"tone": "calm",
"settings": {
"maxSections": 8,
"includeImages": true,
"autoPublish": false
}
}
// Response: 202 Accepted
{
"jobId": "job_7f3a2b...",
"status": "processing",
"estimatedTime": 45
}Webhooks
Event notifications.
Configure a webhook URL in your account settings to receive POST notifications when events complete. No polling required.
- generation.complete: Fired when a page generation job finishes successfully.
- generation.failed: Fired when a generation job fails validation or encounters an error.
- edit.complete: Fired when a Rider AI edit is applied to a page.
- translate.complete: Fired when a translation job finishes.
Webhook payloads include a signature header for verification. Validate using your webhook secret from the dashboard.
// Webhook payload
POST https://your-site.com/hook
{
"event": "generation.complete",
"jobId": "job_7f3a2b...",
"pageId": "page_9c4d1e...",
"timestamp": "2025-03-20T...",
"data": {
"title": "Yoga Studio Landing",
"sections": 7,
"wordCount": 840,
"language": "en"
}
}
// Headers
X-Gallop-Signature: sha256=...
X-Gallop-Event: generation.completeErrors
Error codes.
All error responses include a code, message, and details field. Use the code for programmatic handling and the message for display.
Authorization header format.Retry-After header indicates wait time in seconds.Early Access
Start building with the API.
Get early access when we ship.