Skip to content

Commit dafa46e

Browse files
sweetmantechclaude
andcommitted
docs: align content OpenAPI spec with API implementation
Applied to the split content.json (after #121 merged): 1. Image: add num_images, aspect_ratio, resolution; fix model name; add images array 2. Video: make image_url required; document model limitation 3. Edit: remove image_url (not implemented) 4. Transcribe: rename songUrl → audioUrl 5. Upscale: add upscale_factor and target_resolution Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 0c38bd7 commit dafa46e

File tree

1 file changed

+56
-13
lines changed

1 file changed

+56
-13
lines changed

api-reference/openapi/content.json

Lines changed: 56 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2112,15 +2112,15 @@
21122112
"ContentCreateAudioResponse": {
21132113
"type": "object",
21142114
"required": [
2115-
"songUrl",
2115+
"audioUrl",
21162116
"fullLyrics",
21172117
"segments",
21182118
"segmentCount"
21192119
],
21202120
"properties": {
2121-
"songUrl": {
2121+
"audioUrl": {
21222122
"type": "string",
2123-
"description": "URL of the transcribed song"
2123+
"description": "URL of the transcribed audio"
21242124
},
21252125
"fullLyrics": {
21262126
"type": "string",
@@ -2163,18 +2163,13 @@
21632163
},
21642164
"ContentCreateEditRequest": {
21652165
"type": "object",
2166-
"description": "Must provide at least one input (video_url, image_url, or audio_url)",
2166+
"description": "Must provide at least one input (video_url or audio_url)",
21672167
"properties": {
21682168
"video_url": {
21692169
"type": "string",
21702170
"format": "uri",
21712171
"description": "Input video URL"
21722172
},
2173-
"image_url": {
2174-
"type": "string",
2175-
"format": "uri",
2176-
"description": "Input image URL"
2177-
},
21782173
"audio_url": {
21792174
"type": "string",
21802175
"format": "uri",
@@ -2359,22 +2354,50 @@
23592354
},
23602355
"description": "Optional reference image URLs to guide generation"
23612356
},
2357+
"num_images": {
2358+
"type": "integer",
2359+
"minimum": 1,
2360+
"maximum": 4,
2361+
"default": 1,
2362+
"description": "Number of images to generate (1-4)"
2363+
},
2364+
"aspect_ratio": {
2365+
"type": "string",
2366+
"enum": ["auto", "21:9", "16:9", "3:2", "4:3", "5:4", "1:1", "4:5", "3:4", "2:3", "9:16", "4:1", "1:4", "8:1", "1:8"],
2367+
"default": "auto",
2368+
"description": "Aspect ratio of the generated image"
2369+
},
2370+
"resolution": {
2371+
"type": "string",
2372+
"enum": ["0.5K", "1K", "2K", "4K"],
2373+
"default": "1K",
2374+
"description": "Output resolution"
2375+
},
23622376
"model": {
23632377
"type": "string",
2364-
"description": "fal.ai model ID. Defaults to fal-ai/nano-banana-pro/edit"
2378+
"description": "fal.ai model ID. Defaults to fal-ai/nano-banana-2"
23652379
}
23662380
}
23672381
},
23682382
"ContentCreateImageResponse": {
23692383
"type": "object",
23702384
"required": [
2371-
"imageUrl"
2385+
"imageUrl",
2386+
"images"
23722387
],
23732388
"properties": {
23742389
"imageUrl": {
23752390
"type": "string",
23762391
"format": "uri",
2377-
"description": "URL of the generated image"
2392+
"description": "URL of the first generated image"
2393+
},
2394+
"images": {
2395+
"type": "array",
2396+
"items": {
2397+
"type": "string",
2398+
"format": "uri"
2399+
},
2400+
"description": "URLs of all generated images. Contains one element when num_images is 1."
23782401
}
23792402
}
23802403
},
@@ -2584,6 +2607,23 @@
25842607
"video"
25852608
],
25862609
"description": "Whether the input is an image or video"
2610+
},
2611+
"upscale_factor": {
2612+
"type": "number",
2613+
"minimum": 1,
2614+
"maximum": 4,
2615+
"default": 2,
2616+
"description": "Upscale multiplier (1-4x). Defaults to 2x."
2617+
},
2618+
"target_resolution": {
2619+
"type": "string",
2620+
"enum": [
2621+
"720p",
2622+
"1080p",
2623+
"1440p",
2624+
"2160p"
2625+
],
2626+
"description": "Target output resolution. When provided, overrides upscale_factor with a resolution-based upscale."
25872627
}
25882628
}
25892629
},
@@ -2602,6 +2642,9 @@
26022642
},
26032643
"ContentCreateVideoRequest": {
26042644
"type": "object",
2645+
"required": [
2646+
"image_url"
2647+
],
26052648
"properties": {
26062649
"template": {
26072650
"type": "string",
@@ -2626,7 +2669,7 @@
26262669
"image_url": {
26272670
"type": "string",
26282671
"format": "uri",
2629-
"description": "Image URL. Used as the first frame (animate), style reference (reference), start frame (first-last), or face source (lipsync)"
2672+
"description": "Required. Image URL used as the input frame. The underlying model (fal-ai/veo3.1/fast/image-to-video) requires an image — text-only prompt mode is not supported. Generate an image first via POST /api/content/image if needed."
26302673
},
26312674
"end_image_url": {
26322675
"type": "string",

0 commit comments

Comments
 (0)