GENIMATE

API REFERENCE

Integrate GeniMate motion graphics generation into your own apps and workflows. All endpoints are REST-based and return JSON. Authentication uses Bearer JWT tokens obtained via /api/auth/login.

Authentication

Include your JWT in the Authorization header on all requests (except /api/auth/register and /api/auth/login):

Authorization: Bearer <your-jwt-token>

Base URL

https://api.genimate.com
POST/api/jobs

Create a render job

Request body
{
  "prompt": "Animated stat: 10x ROI in 30 days",
  "aspectRatio": "9:16",
  "duration": 8,
  "colorTheme": "dark",
  "category": "social",
  "fontStyle": "bold"
}
Response
{
  "jobs": [
    { "jobId": "550e8400-...", "provider": "claude" },
    { "jobId": "6ba7b810-...", "provider": "openai" }
  ]
}
GET/api/jobs/:id

Get job status and download URL

Response
{
  "id": "550e8400-...",
  "status": "DONE",
  "progress": 100,
  "videoUrl": "https://...supabase.../renders/550e8400-....mp4?token=...",
  "prompt": "...",
  "aspectRatio": "9:16",
  "duration": 8,
  "createdAt": "2026-06-10T10:00:00Z",
  "completedAt": "2026-06-10T10:01:42Z"
}
POST/api/ai/generate-prompt

Generate a prompt from brand context

Request body
{
  "platform": "instagram",
  "brandDescription": "Productivity SaaS for remote teams",
  "vibe": "energetic and minimalist"
}
Response
{
  "prompt": "Animated text reveal: 'Work smarter, not harder'..."
}
POST/api/uploads/image

Upload an image asset (Pro/Agency)

Request body
FormData with field "image" containing the file
Response
{
  "imageUrl": "https://...supabase.../user-assets/...",
  "assetId": "550e8400-...",
  "width": 1080,
  "height": 1080,
  "mimeType": "image/jpeg"
}

Rate Limits

Global120 requests/minute per IP
Auth endpoints10 requests/minute per IP
Job creationGoverned by your plan's render limit
AI prompt generation30 requests/hour per user

Rate limit headers (RateLimit-Remaining, RateLimit-Reset) are included in all responses.

API questions? Contact api@genimate.com or reach out to the team.