Skip to content

PATINA

POST/v1/run

Material Extract by patina - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.

Request body

Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.

stringmodelrequired

Model identifier. Set to patina/material/extract.

Default: patina/material/extract

stringpromptrequired

Describe which texture to extract from the image.

stringimagerequired

URL of the image to extract a texture from.

Optional<integer>num_inference_steps

Number of denoising steps for texture generation.

Range: 1 to 8

Default: 8

Optional<number>strength

How much to transform the input image. Only used when image_url is provided.

Maximum: 1

Default: 0.6

Optional<string>output_format

Output image format for textures and PBR maps.

Allowed values: jpeg, png

Default: png

Optional<array<string>>maps

Which PBR maps to predict. Deselect all to skip PBR estimation entirely. Defaults to all five.

Default: basecolor,normal,roughness,metalness,height

Optional<integer>tile_size

Tile size in latent space (64 = 512px, 128 = 1024px).

Range: 32 to 256

Default: 128

Optional<integer>upscale_factor

Upscale factor for predicted PBR maps via SeedVR seamless upscaling. 0 = no upscaling, 2 = 2× resolution, 4 = 4× resolution. The base texture image is not upscaled.

Allowed values: 0, 2, 4

Default: 0

Optional<string>tiling_mode

Tiling direction: 'both' (omnidirectional), 'horizontal', or 'vertical'.

Allowed values: both, horizontal, vertical

Default: both

Optional<integer>tile_stride

Tile stride in latent space.

Range: 16 to 128

Default: 64

Optional<string>aspect_ratio

The aspect ratio of the generated image.

Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16

Optional<integer>seed

Random seed for reproducible generation.

Response Schema

The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.

stringidrequired

Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.

stringstatusrequired

Current public run status.

Allowed values: pending, running, completed, failed, timeout

Optional<string>model

Public SandBase model name used for this run.

Optional<array<object>>outputs

Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.

Optional<object>error

Present only for failed or timeout runs. Contains a public error type and sanitized message.

Optional<string>error.type

Stable public error category.

Optional<string>error.message

Sanitized error message safe to show to clients.

Optional<object>usage

Usage details when available.

Model capabilities

array<string>capability_tagsrequired

Capabilities declared by the model registry.

Default: image-to-image

stringexecution_moderequired

Execution mode declared by the model registry.

Default: async