Edit Image with a Prompt

Edit any image with a prompt. Apply any transformation, any type of detail you can imaging and the AI will apply it to the image.
Choose from the big range of models if you have preferences or to take control of the output quality.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

This is an asynchronous process. Use the provided transaction identifier to pull the result with Get the Edit Image result.

Body Params
file

Source image file (binary). (If this parameter is present, the other image source parameters must be empty.)

uri
length between 1 and 2083

Source image URL. (If this parameter is present, the other image source parameters must be empty.)

string
deprecated

Deprecated. Source image ID of an image previously uploaded to Picsart or result image ID from a different API. (If this parameter is present, the other image source parameters must be empty.)

string
required

The prompt.

integer | null
64 to 4096

Desired output width. When unset, derived from the input image dimensions.

integer | null
64 to 4096

Desired output height. When unset, derived from the input image dimensions.

integer
1 to 10
Defaults to 2

The number of images to generate.

string
enum
Defaults to JPG

Optionally select one of the image formats (JPG is default). Options are as follows:

  • JPG
  • PNG
  • WEBP
Allowed:
string
enum
Defaults to sync
deprecated

Deprecated. The mode parameter is now deprecated. To control synchronous vs asynchronous execution, use the standard HTTP Prefer header (RFC 7240). If both mode and Prefer are provided, Prefer takes precedence. For migration guidance and examples, see the Sync and Async Execution guide.
Use this query parameter to establish the processing mode. Acceptable values are sync, async and auto (sync is default):

  • sync: issues a synchronous request, response is given when the result is ready.
  • async: forces an asynchronous request, the response, which is instantaneous, contains a "transaction_id" which is used to poll for the result.
  • REMOVED - auto: the processing mode decision is made by the service, which depends upon the expected processing time.
Allowed:
boolean | null
Defaults to false

Enables the watermark. This is primarily used to show that the image is AI-generated, but this can be used for other use cases as well.
When enabled, the default watermark will be added. When customization is needed, follow other "watermark**" parameters.
For more advanced watermarking, you can also check out the Add Watermark service.

uri | null

URL of the watermark image. If omitted or empty and watermark_enabled is true, a default watermark is applied.

string
enum
Defaults to left-bottom
≥ 1

Width of watermark. A pixel value like 100 (>= 1), or a percentage of the canvas width like "10%" / "12.5%" (> 0, <= 100).

≥ 1

Height of watermark. A pixel value like 100 (>= 1), or a percentage of the canvas height like "10%" / "12.5%" (> 0, <= 100).

integer | null
0 to 100
Defaults to 50

Define the opacity of the watermark. Takes values from 0 to 100. Default is 100 (opaque). Set to 0 to make it transparent.

integer | null
0 to 360

Define the angle of the watermark. Takes values from 0 to 360. Default 45 for pattern case, otherwise 0.

≥ 0

Define the horizontal padding of the watermark. A pixel value like 20 (>= 0), or a percentage of the canvas width like "2%" (>= 0, <= 100).

≥ 0

Define the vertical padding of the watermark. A pixel value like 20 (>= 0), or a percentage of the canvas height like "2%" (>= 0, <= 100).

string | null
enum
Defaults to urn:air:sdxl:model:fluxai:flux_kontext_max@1

Optionally choose a specific AI model to use for this request.
If not specified, a default model will be applied. Please note that the default model may change over time as Picsart continues to improve performance and accuracy. Any change to the default will be made only after thorough testing and validation to ensure it delivers better results.
If you require consistent behavior or wish to evaluate different models on your own, we recommend explicitly setting this parameter.

Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json