Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .agents/references/providers/fal.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ Per-second figures below are fal's own 16:9 approximations.
- Cancel: `PUT .../requests/{id}/cancel` returns 202 `CANCELLATION_REQUESTED` or 400 `ALREADY_COMPLETED`; in-progress jobs may still finish (docs).
- `X-Fal-Request-Timeout` sets an absolute server-side deadline (docs).
- The JS SDK wraps this as `fal.queue.submit/status/result/cancel`, or `fal.subscribe` which submits and polls (docs).
We use the queue calls, so a job keeps its request ID from submission; a rejected job (the likeness 422) surfaces when its result is read (probe, 2026-10-04).
- SDK 1.10 calls: `POST queue.fal.run/<endpoint>`, `GET queue.fal.run/<owner>/<app>/requests/{id}/status?logs=0`, `GET .../requests/{id}`, `PUT .../requests/{id}/cancel`; storage uploads `POST rest.fal.ai/storage/upload/initiate?storage_type=fal-cdn-v3`, then `PUT` to the returned URL (probe).
- Seedance output: `{ video: { url, content_type, file_name, file_size }, seed }`, plus `draft_id` on 2.5 (docs).
- Seedance 2.0 inputs: `prompt`, `image_url` (i2v, required), `end_image_url` (i2v), `image_urls` / `video_urls` / `audio_urls` (r2v), `resolution`, `duration`, `aspect_ratio` (auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16), `generate_audio` (default true, same price), `bitrate_mode`, `codec`, `end_user_id` (docs).
- `duration` and `resolution` are string enums in the schema (`"auto"`, `"4"`..`"15"`) (docs).
Expand Down
3 changes: 3 additions & 0 deletions .agents/references/providers/google.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,9 @@ Public YouTube URLs work, with an 8 h/day cap on the free tier (docs).
- `minimal` thinking errors on 3.8 Flash, 3.7 Flash, and 3.1 Pro preview but is the default on 3.5 Flash-Lite and the image models (docs).
- Omni returns the video as base64 `data` inside `steps[]` by default; a URL comes back only with `response_format.delivery: "uri"`, and only in the create response or SSE stream, not on later `GET /interactions/{id}` (docs). Use `uri` above 4 MB (docs).
- Omni requests are synchronous unless `background: true`; `store: false` disables `previous_interaction_id` editing (docs). Interactions are retained 55 days on paid tier, 1 day on free (docs).
- Omni accepts `background: true` although the background-execution page lists only text models and agents: create returns `{id, status: "in_progress"}` in about 3 s, `GET /interactions/{id}` moves to `completed` after 20-70 s, and the completed interaction's `steps[]` carries the video `uri`, contrary to the note above (probe, 2026-10-04).
- A `previous_interaction_id` edit on a background interaction kept the subject and camera and applied the edit ("snowy night"); Omni chose 10 s for both clips (probe, 2026-10-04).
- Background interactions cancel with `POST /interactions/{id}/cancel` (docs, background execution).
- Veo extension takes a video object from a previous generation (`instances[].video` as `uri` or `inlineData`), must be 720p, and requires `durationSeconds: 8` (docs).
- Veo REST examples wrap reference images as `{ image: { inlineData }, referenceType: "asset" }` and frames as `{ inlineData }` (docs). `gcsUri` is not documented for the Gemini API.
- Gemini 3.x function calling over generateContent needs thought signatures round-tripped and `FunctionResponse` `id` plus `name` matching the call; mismatches return empty responses with `STOP` rather than an error (docs).
Expand Down
Loading
Loading