Build with HappyHorse 1.1
Make your first request
Use your Sorceress API key on your server. The playground uses your signed-in account; your application uses the same model with an API key.
curl -X POST 'https://sorceress.games/api/v1/jobs' \
-H 'Authorization: Bearer $SORCERESS_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"model": "happyhorse-1-1-text-to-video",
"input": {
"duration": 5,
"resolution": "1080p",
"aspect_ratio": "16:9",
"prompt": "<prompt>"
}
}'Inputs & settings
promptstringRequiredText description of the video to generate. Supports any language. Maximum 5,000 non-Chinese characters or 2,500 Chinese
durationnumberOutput video duration in seconds. Integer, 3–15. Default 5.
resolutionstringOutput video resolution. Options: 720p; 1080p
Options: 720p, 1080p
aspect_ratiostringOutput video aspect ratio. Options: 16:9; 9:16; 1:1; 4:3; 3:4; 4:5; 5:4; 9:21; 21:9
Options: 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Full input schema
{
"type": "object",
"required": [
"prompt"
],
"properties": {
"prompt": {
"type": "string",
"title": "Prompt",
"maxLength": 5000,
"description": "Text description of the video to generate. Supports any language. Maximum 5,000 non-Chinese characters or 2,500 Chinese"
},
"duration": {
"type": "number",
"title": "Duration",
"default": 5,
"maximum": 15,
"minimum": 3,
"description": "Output video duration in seconds. Integer, 3–15. Default 5."
},
"resolution": {
"enum": [
"720p",
"1080p"
],
"type": "string",
"title": "Resolution",
"default": "1080p",
"description": "Output video resolution. Options: 720p; 1080p"
},
"aspect_ratio": {
"enum": [
"16:9",
"9:16",
"1:1",
"4:3",
"3:4",
"4:5",
"5:4",
"9:21",
"21:9"
],
"type": "string",
"title": "Aspect ratio",
"default": "16:9",
"description": "Output video aspect ratio. Options: 16:9; 9:16; 1:1; 4:3; 3:4; 4:5; 5:4; 9:21; 21:9"
}
}
}Results, saved runs & billing
Media requests return a job ID. Poll GET /api/v1/jobs/:id until it succeeds or fails; keep the same ID while it is processing. Long chat requests can also return a saved job to poll. Completed outputs are stored in your account, and successful work is billed using your model's current rates.
A multi-step workflow may include separately billed successful actions. If a connection drops, check your saved run before submitting it again.






