Skip to content

File routes: edit, generate

The File Verbs edit, generate as api.sb routes, with inputs, result, refusals and an example.

Reference for File, one group of File routes.

File.edit

Edit makes a new File from an existing one by instruction, such as upscaling or animating a still, and leaves the source unchanged. Verb page.

Text
POST /{namespace}/files/{file}/edit

Path: file. Body, as JSON: the other inputs. Emits File.edited.

Inputs

InputTypeRequiredDescription
fileFilerequiredThe source File.
instructiontextrequiredWhat to change.
referenceslist of FileFurther Files the edit follows.
formatjsonAspect ratio, resolution, duration and file type of the result.

Returns

OutputTypeRequiredDescription
fileFilerequiredThe new File, which records its source.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/files/file_V1AuhyCTsH/edit \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"instruction":"Example instruction"}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "file": {
    "$id": "https://api.sb/leaseline.app/files/file_V1AuhyCTsH",
    "$type": "File",
    "contentType": "Example content type",
    "size": 1
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "File.edit",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}

File.generate

Generate makes an image, video, speech or music File from a prompt and reference Files, and records how it was made. Verb page.

Text
POST /{namespace}/files/generate

Body, as JSON: the inputs. Emits File.generated.

Inputs

InputTypeRequiredDescription
kindstringrequiredWhat to make.
prompttextrequiredWhat to make, or for speech the text to speak.
referenceslist of FileFiles the output follows, such as a product photo or a first frame.
voiceVoiceThe Voice that speaks, for speech.
formatjsonAspect ratio, resolution, duration and file type.

Returns

OutputTypeRequiredDescription
fileFilerequiredThe generated File, its bytes in Storage and its provenance recorded.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/files/generate \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"kind":"image","prompt":"Example prompt"}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "file": {
    "$id": "https://api.sb/leaseline.app/files/file_V1AuhyCTsH",
    "$type": "File",
    "contentType": "Example content type",
    "size": 1
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "File.generate",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}