Skip to main content

Inpainting Endpoint

Overview

This endpoint generates and returns an image from an image and a mask passed with their URLs in the request.

Together with the image and the mask you can add your description of the desired result by passing prompt and negative prompt.

Inpainting endpoint result

Request

--request POST 'https://modelslab.com/api/v6/realtime/inpaint' \

Make a POST request to https://modelslab.com/api/v6/realtime/inpaint endpoint and pass the required parameters as a request body.

Watch the how-to video to see it in action.

Attributes

ParameterDescription
keyYour API Key used for request authorization
promptText prompt with description of the things you want in the image to be generated
negative_promptItems you don't want in the image
init_imageLink to the Initial Image
mask_imageLink to the mask image for inpainting
widthMax Height: Width: 1024x1024
heightMax Height: Width: 1024x1024
samplesNumber of images to be returned in response. The maximum value is 4.
safety_checkerA checker for NSFW images. If such an image is detected, it will be replaced by a blank image.
enhance_promptEnhance prompts for better results; default: yes, options: yes/no
strengthPrompt strength when using init image. 1.0 corresponds to full destruction of information in the init image.
instant_responsequeue response instantly before processing finishes instead of waiting a minimum amount of time default: false, options: true or false
base64Get response as base64 string, default: false, options: true or false
seedSeed is used to reproduce results, same seed will give you same image in return again. Pass null for a random number.
enhance_promptEnhance prompts for better results; options: true/false
enhance_styleThis allows you to set the style of the image for better result. The following are the styles that are available; enhance,cinematic-diva,nude,nsfw,sex,abstract-expressionism,academia,action-figure,adorable-3d-character,adorable-kawaii,art-deco,art-nouveau,astral-aura,avant-garde,baroque,bauhaus-style-poster,blueprint-schematic-drawing,caricature,cel-shaded-art,character-design-sheet,classicism-art,color-field-painting,colored-pencil-art,conceptual-art,constructivism,cubism,dadaism,dark-fantasy,dark-moody-atmosphere,dmt-art,doodle-art,double-exposure,dripping-paint-splatter,expressionism,faded-polaroid-photo,fauvism,flat-2d,fortnite-style,futurism,glitchcore,glo-fi,googie-style,graffiti-art,harlem-renaissance-art,high-fashion,idyllic,impressionism,infographic-drawing,ink-dripping-drawing,japanese-ink-drawing,knolling-photography,light-cheery-atmosphere,logo-design,luxurious-elegance,macro-photography,mandola-art,marker-drawing,medievalism,minimalism,neo-baroque,neo-byzantine,neo-futurism,neo-impressionism,neo-rococo,neoclassicism,op-art,ornate-and-intricate,pencil-sketch-drawing,pop-art-2,rococo,silhouette-art,simple-vector-art,sketchup,steampunk-2,surrealism,suprematism,terragen,tranquil-relaxing-atmosphere,sticker-designs,vibrant-rim-light,volumetric-lighting,watercolor,whimsical-and-playful,sharp,masterpiece,photograph,negative,cinematic,ads-advertising,ads-automotive,ads-corporate,ads-fashion-editorial,ads-food-photography,ads-gourmet-food-photography,ads-luxury,ads-real-estate,ads-retail,abstract,abstract-expressionism,art-deco,art-nouveau,constructivist,cubist,expressionist,graffiti,hyperrealism,impressionist,pointillism,pop-art,psychedelic,renaissance,steampunk,surrealist,typography,watercolor,futuristic-biomechanical,futuristic-biomechanical-cyberpunk,futuristic-cybernetic,futuristic-cybernetic-robot,futuristic-cyberpunk-cityscape,futuristic-futuristic,futuristic-retro-cyberpunk,futuristic-retro,futuristic-sci-fi,futuristic-vaporwave,game-bubble,game-cyberpunk,game-fighting,game-gta,game-mario,game-minecraft,game-pokemon,game-retro-arcade,game-retro,game-rpg-fantasy,game-strategy,game-streetfighter,game-zelda,misc-architectural,misc-disco,misc-dreamscape,misc-dystopian,misc-fairy-tale,misc-gothic,misc-grunge,misc-horror,misc-kawaii,misc-lovecraftian,misc-macabre,misc-manga,misc-metropolis,misc-minimalist,misc-monochrome,misc-nautical,misc-space,misc-stained-glass,misc-techwear-fashion,misc-tribal,misc-zentangle,papercraft-collage,papercraft-flat-papercut,papercraft-kirigami,papercraft-paper-mache,papercraft-paper-quilling,papercraft-papercut-collage,papercraft-papercut-shadow-box,papercraft-stacked-papercut,papercraft-thick-layered-papercut,photo-alien,photo-film-noir,photo-glamour,photo-hdr,photo-iphone-photographic,photo-long-exposure,photo-neon-noir,photo-silhouette,photo-tilt-shift,3d-model,analog-film,anime,cinematic,comic-book,craft-clay,digital-art,fantasy-art,isometric,line-art,lowpoly,neonpunk,origami,photographic,pixel-art,texture,
webhookSet an URL to get a POST API call once the image generation is complete.
track_idThis ID is returned in the response to the webhook API call. This will be used to identify the webhook request.

Example

Body

Body
{
"key": "",
"prompt": "a cat sitting on a bench",
"negative_prompt": "bad quality",
"init_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png",
"mask_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo_mask.png",
"width": "512",
"height": "512",
"samples": 1,
"safety_checker": false,
"strength": 0.7,
"base64": false,
"seed": null,
"webhook": null,
"track_id": null
}

Request

var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
"key": "",
"prompt": "a cat sitting on a bench",
"negative_prompt": "bad quality",
"init_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png",
"mask_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo_mask.png",
"width": "512",
"height": "512",
"samples": 1,
"safety_checker": false,
"strength": 0.7,
"base64": false,
"seed": null,
"webhook": null,
"track_id": null
});

var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};

fetch("https://modelslab.com/api/v6/realtime/inpaint", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));

Response

Example Response
{
"status": "success",
"generationTime": 1.9110066890716553,
"id": 12384052,
"output": [
"https://pub-8b49af329fae499aa563997f5d4068a4.r2.dev/generations/e67183ee-73c1-45c4-84e7-0dec6f657d33-0.png"
],
"meta": {
"H": 512,
"W": 512,
"file_prefix": "e67183ee-73c1-45c4-84e7-0dec6f657d33",
"init_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png",
"mask_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo_mask.png",
"n_samples": 1,
"negative_prompt": " ((out of frame)), ((extra fingers)), mutated hands, ((poorly drawn hands)), ((poorly drawn face)), (((mutation))), (((deformed))), (((tiling))), ((naked)), ((tile)), ((fleshpile)), ((ugly)), (((abstract))), blurry, ((bad anatomy)), ((bad proportions)), ((extra limbs)), cloned face, glitchy, ((extra breasts)), ((double torso)), ((extra arms)), ((extra hands)), ((mangled fingers)), ((missing breasts)), (missing lips), ((ugly face)), ((fat)), ((extra legs))",
"outdir": "out",
"prompt": "a cat sitting on a bench DSLR photography, sharp focus, Unreal Engine 5, Octane Render, Redshift, ((cinematic lighting)), f/1.4, ISO 200, 1/160s, 8K, RAW, unedited, symmetrical balance, in-frame",
"safetychecker": "no",
"seed": 3163825381,
"steps": 20,
"strength": 0.7
}
}