llms.txtllms-full.txt
DashboardStatusGet API Key
IntroductionQuickstartModelsPricingArchitecture & SecurityLimits & Quotas
Execution Modes & HTTP QueueWebhooksWebSocketsMCP Servern8n Integrationn8n dryAPI node
API OverviewErrorsText-to-ImagePOSTText-to-Image Price CalculationPOSTText-to-VideoPOSTText-to-Video Price CalculationPOSTImage-to-VideoPOSTImage-to-Video Price CalculationPOSTAudio-to-VideoPOSTAudio-to-Video Price CalculationPOSTText-to-Speech (TTS)POSTText-to-Speech Price CalculationPOSTText-to-MusicPOSTText-to-Music Price CalculationPOSTText-to-EmbeddingPOSTText-to-Embedding Price CalculationPOSTImage-to-ImagePOSTImage-to-Image Price CalculationPOSTImage Background RemovalPOSTImage Background Removal Price CalculationPOSTImage UpscalePOSTImage Upscale Price CalculationPOST
OpenAPI
SDKs & IntegrationsPayment MethodsFAQ — Frequently Asked QuestionsSupport & Contact
dAdryAPI
DashboardStatusGet API Key
API
Technical Reference

Image-to-Image

Technical documentation for dryAPI APIs, integration guides, and operational references.

Endpoint for requesting img2img inference. Accepts either a single image via "image" or multiple images via "images[]" (mutually exclusive).

NOTE

Prerequisite: To ensure a successful request, you must first consult the Model Selection endpoint to identify a valid model slug, check specific limits and features, and verify LoRA availability. Please omit the LoRA parameter by default during initial testing.

OpenAPI

Request Image2 Image

POST
/api/v1/client/img2img

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Header Parameters

Accept*string
Default"application/json"
Value in"application/json"

Request Body

multipart/form-data

Image generation parameters. Either "image" or "images[]" must be provided (not both).

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://api.dryapi.dev/api/v1/client/img2img" \  -H "Accept: application/json" \  -F prompt="A beautiful sunset over mountains" \  -F model="QwenImageEdit_Plus_NF4" \  -F steps="20" \  -F seed="42"
{
  "data": {
    "request_id": "c08a339c-73e5-4d67-a4d5-231302fbff9a"
  }
}
{
  "data": {},
  "message": "string",
  "errors": [
    null
  ],
  "statusCode": 0
}
{
  "data": {},
  "message": "string",
  "errors": [
    null
  ],
  "statusCode": 0
}
{
  "message": "The selected model does not support Text To Image.",
  "errors": {
    "model": [
      "The selected model does not support Text To Image."
    ]
  }
}
{
  "message": "Too Many Attempts."
}
Last updated on 21 March 2026

POST Text-to-Embedding Price Calculation

Previous Page

POST Image-to-Image Price Calculation

Next Page

prompt*string

The main prompt for image generation

negative_prompt?|

Elements to avoid in the generated image

image?string

Single source image to edit. Required if "images[]" is not provided. Mutually exclusive with "images[]". Supported formats: JPG, JPEG, PNG, GIF, BMP, WebP. Maximum file size: 10 MB.

images[]?array<>

Multiple source images for editing. Maximum count is model-dependent (see model specs max_input_images, defaults to 1). Required if "image" is not provided. Mutually exclusive with "image". Supported formats: JPG, JPEG, PNG, GIF, BMP, WebP. Maximum file size per image: 10 MB.

width?|

Output image width in pixels. Optional - defaults to first input image width if not specified. Subject to model-specific min/max limits.

height?|

Output image height in pixels. Optional - defaults to first input image height if not specified. Subject to model-specific min/max limits.

model*string

The model to use for image editing. Available models can be retrieved via the GET /api/v1/client/models endpoint.

loras?array<>

Array of LoRA models to apply

guidance?number

Guidance scale for the generation

steps*integer

Number of inference steps

seed*integer

Random seed for generation

webhook_url?|

Optional HTTPS URL to receive webhook notifications for job status changes (processing, completed, failed). Must be HTTPS. Max 2048 characters. See Webhook Documentation for payload structure and authentication details.

Formaturi
Lengthlength <= 2048