Recraft V4.1 Flash
recraft/v4.1/flash/text-to-image- Recraft
- Text to image
- Image
Generate images from a text prompt.
Overview
- Model developer
- Recraft
- API channel
- fal.ai
- Aspect ratios
- 6 aspect ratios
- Supported protocols
fal-task
Call this model
Create an API key, add account credit, and confirm this model is available to your key before sending a request.
Copy the complete model reference, including every published protocol, for your AI assistant.
/v1/tasks/falRequest parameters
| Parameter | Required | Type | Description | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
model | Required | string | Use this exact public model ID. Constraints
| ||||||||||||||||
prompt | Required | string | Describe the subject, scene, and desired generation. Constraints
| ||||||||||||||||
image_size | Optional | string | Choose an output size preset. Custom width and height objects are not accepted on this gateway.
Constraints
| ||||||||||||||||
background_color | Optional | object | Preferred background color, expressed as red, green, and blue components. | ||||||||||||||||
These fields apply when background_color is supplied. A required child does not make its optional parent required.
| |||||||||||||||||||
enable_safety_checker | Optional | boolean | Whether the provider safety checker is enabled. Provider policy may reject attempts to disable it.
| ||||||||||||||||
colors | Optional | array<object> | Preferred palette. Each array item is a red, green, and blue color object.
| ||||||||||||||||
These fields apply when colors is supplied. A required child does not make its optional parent required.
| |||||||||||||||||||
size | Optional | string | Alias for image_size or resolution. Prefer the exact native value in this table; pixel-size aliases may not match case-sensitive resolution values. | ||||||||||||||||
parameters | Optional | object | Alternative container for the native parameters in this table. Do not repeat a setting with a different value. | ||||||||||||||||
metadata | Optional | object | Alternative container: place native parameters inside metadata.parameters. | ||||||||||||||||
Request notes
- Authenticate every request with Authorization: Bearer and your Scenepond API key. Keep the key on your server.
- Parameter values are case-sensitive. Missing or null settings use documented defaults when available; valid zero and false values are retained.
- The parameter table uses native names at the JSON top level. The same settings can be placed in parameters or metadata.parameters; unknown nested settings and conflicting duplicate values are rejected.
- Task submission returns a queued task, not the generated media. Poll status, then list artifacts after SUCCESS.
- Do not automatically resubmit a timed-out POST. Preserve the returned task ID and inspect task status before creating another billable task.
- Defaults and limits follow this gateway and the linked provider schema. Settings may change after a provider or gateway update.
Minimum request
1curl --fail-with-body -X POST "https://scenepond-api-production.up.railway.app/v1/tasks/fal" \
2 -H "Authorization: Bearer $SCENEPOND_API_KEY" \
3 -H "Content-Type: application/json" \
4 --data-binary @- <<'JSON'
5{
6 "model": "recraft/v4.1/flash/text-to-image",
7 "prompt": "A quiet lakeside at sunrise"
8}
9JSONRun this example in a shell with cURL installed. Set SCENEPOND_API_KEY before running.
Illustrative responses
Response examples show the structure only. IDs, URLs, and values are placeholders.
Submission response
1{
2 "id": "task_EXAMPLE",
3 "task_id": "task_EXAMPLE",
4 "status": "queued",
5 "model": "recraft/v4.1/flash/text-to-image",
6 "created_at": 1700000000
7}Completed task status
1{
2 "task_id": "task_EXAMPLE",
3 "platform": "fal",
4 "status": "SUCCESS",
5 "progress": "100%",
6 "fail_reason": "",
7 "created_at": 1700000000,
8 "finished_at": 1700000060
9}Artifact listing
1{
2 "task_id": "task_EXAMPLE",
3 "artifacts": [
4 {
5 "key": "image-1",
6 "type": "image",
7 "content_url": "https://scenepond-api-production.up.railway.app/v1/tasks/task_EXAMPLE/artifacts/image-1/content"
8 }
9 ]
10}Follow-up requests
2. Check task status
Set SCENEPOND_TASK_ID to task_id. Poll every few seconds until SUCCESS or FAILURE. Status includes progress and fail_reason, but no media.
1curl --fail-with-body -X GET "https://scenepond-api-production.up.railway.app/v1/tasks/$SCENEPOND_TASK_ID" \
2 -H "Authorization: Bearer $SCENEPOND_API_KEY"Run this example in a shell with cURL installed. Set SCENEPOND_API_KEY before running.
3. Get the results
After SUCCESS, list artifacts. Use each returned content_url to download the media with authorization; treat signed URLs as private.
1curl --fail-with-body -X GET "https://scenepond-api-production.up.railway.app/v1/tasks/$SCENEPOND_TASK_ID/artifacts" \
2 -H "Authorization: Bearer $SCENEPOND_API_KEY"Run this example in a shell with cURL installed. Set SCENEPOND_API_KEY before running.
Use it in your application
Use the task API in your application to submit generation requests and retrieve results by task ID.
Model access and request limits depend on your account, API key, and service configuration.