Change materials & backgrounds
Restyle an image, change how surfaces look, or place the subject in a new setting. Natural-language direction keeps the edit easy to describe and easy to repeat.

Edit what matters. Keep everything else.
Change a background, remove distractions, or replace one specific object with a natural-language prompt. DreamImage 2 brings focused AI image editing to DreamAPI.
Describe the change you want. DreamImage 2 applies it while keeping the subject, composition, and visual context recognizable.
Restyle an image, change how surfaces look, or place the subject in a new setting. Natural-language direction keeps the edit easy to describe and easy to repeat.
Clean up crowded photos without rebuilding the whole scene. Remove people, clutter, or distracting elements and let the model fill the space around the edit.
Point the prompt at one item and say what should take its place. DreamImage 2 updates the selected object while preserving the wider image.
DreamImage 2 keeps the workflow focused: one source image, one instruction, one edited result.
Each edit keeps the original structure and content — only the part you describe changes.


Render the character as hyper-detailed hand embroidery artwork while preserving the original pose and structure.


Change this image to a 90s retro anime style.


Remove the other people, leaving only me.


Replace the torch in hand with a sword.
Send one publicly accessible image URL and one edit prompt to the async endpoint /api/async/dreamimage_2.0. The API returns a task ID you can poll, or connect to a callback for automatic delivery — fixed at 10 credits per request, with JPG, JPEG, PNG, and WEBP inputs.
Use a public JPG, JPEG, PNG, or WEBP URL as the source for the edit.
Write the edit in plain language — change a background, remove an object, or replace a subject.
Receive a task ID, then use DreamAPI polling or a callback to collect the edited image.
const response = await fetch('https://api.newportai.com/api/async/dreamimage_2.0', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.DREAMAPI_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
image: 'https://d2t5pyzt5qvy2d.cloudfront.net/api/static_resource/prod/default/INj5UrnnrKIzCR1uYBWv0.png',
prompt: 'Replace the background with a beach sunset scene'
})
});
const { data: { taskId } } = await response.json();curl -X POST 'https://api.newportai.com/api/async/dreamimage_2.0' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {{key}}' \
-d '{
"image": "https://d2t5pyzt5qvy2d.cloudfront.net/api/static_resource/prod/default/INj5UrnnrKIzCR1uYBWv0.png",
"prompt": "Replace the background with a beach sunset scene"
}'HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.newportai.com/api/async/dreamimage_2.0"))
.header("Content-Type", "application/json")
.header("Authorization", "Bearer {{key}}")
.POST(HttpRequest.BodyPublishers.ofString("{\"image\":\"https://d2t5pyzt5qvy2d.cloudfront.net/api/static_resource/prod/default/INj5UrnnrKIzCR1uYBWv0.png\",\"prompt\":\"Replace the background with a beach sunset scene\"}"))
.build();
HttpResponse<String> res = client.send(request, HttpResponse.BodyHandlers.ofString());import requests
response = requests.post(
"https://api.newportai.com/api/async/dreamimage_2.0",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer {{key}}"
},
json={
"image": "https://d2t5pyzt5qvy2d.cloudfront.net/api/static_resource/prod/default/INj5UrnnrKIzCR1uYBWv0.png",
"prompt": "Replace the background with a beach sunset scene"
}
)
print(response.json())One credit pool for every model on DreamAPI — video, image, avatar and editing. Buy a pack, then spend credits at the per-model rates below.
Credit packs are purchased on the DreamAPI pricing page.
One flat credit cost for each image edit request — no surprises.
Fixed billing at 10 DreamAPI credits per request. No card required to review the docs.
DreamImage 2 is DreamAPI's natural-language image editing API. It takes an input image and an edit prompt, then generates a modified image while preserving the original structure and content.
Use it to change materials, visual styles, or backgrounds; remove people and unwanted objects; and replace a specific object described in the prompt.
The API accepts a publicly accessible image URL in JPG, JPEG, PNG, or WEBP format.
The submit request returns a taskId. Use that ID with DreamAPI's Polling API, or configure a Callback URL to receive the result automatically.
DreamAPI lists fixed billing of 10 credits per request.
Open the DreamImage 2 documentation to review the API reference, launch the Playground, and see current billing details.
Change a background, remove an object, or replace a subject — one image and one prompt.