REST API
Generate media
Submit model-aware image and video jobs, preview credit costs, and make retries safe with idempotency keys.
Generation endpoint
https://www.makeinfluencer.ai/api/v1/models/{modelId}/generationsUse the exact model ID returned by GET /models. One route handles image, editing, text-to-video, image-to-video, motion control, and lip-sync models through their own validated input contract.
Request body
curl --request POST \
https://www.makeinfluencer.ai/api/v1/models/happyhorse1/generations \
--header "Authorization: Bearer $MAKEINFLUENCER_API_KEY" \
--header "Idempotency-Key: campaign-video-001" \
--header "Content-Type: application/json" \
--data '{
"input": {
"prompt": "A creator walking through neon Tokyo",
"aspectRatio": "9:16",
"duration": 5,
"resolution": "720p"
}
}'inputobjectRequiredFields published by the selected model contract.copiesintegerImage onlyGenerate 1–4 image copies; defaults to 1.influencerIduuidOptionalA trained character supported by eligible image models.generationIduuidOptionalAn owned source image generation for image-to-video workflows.Preview credits
https://www.makeinfluencer.ai/api/v1/models/{modelId}/preview-creditsSend the same request body before generation. The endpoint validates the model inputs and returns the exact charge without reserving credits.
{
"modelId": "happyhorse1",
"credits": {
"cost": 35088,
"description": "Happy Horse 1.0 video - 720p (per second)"
}
}Idempotency
Include a unique Idempotency-Key for requests that may be retried. Reusing the key with the same payload returns the original accepted generation. Reusing it with different input returns409 idempotency_conflict.
Generate one key per logical job
Accepted response
A valid job returns HTTP 202. Poll each returned ID until it is terminal.
{
"status": "queued",
"kind": "video",
"modelId": "happyhorse1",
"ids": ["GENERATION_ID"],
"creditsCost": 35088
}