Integrate Stable Diffusion into your applications and projects with ease. This comprehensive documentation provides an overview of the API, along with clear, step-by-step instructions and best practices, allowing you to leverage Stable Diffusion’s powerful image generation capabilities in your app or software.
To access this API, you must subscribe and obtain a Subscription Key. Include this key in your request header to authenticate and gain access.
| Content-Type | Set to application/json |
|---|---|
| Cache-Control | Recommended to set to no-cache |
| Ocp-Apim-Subscription-Key | YOUR_SUBSCRIPTION_KEY |
Base URL: https://gateway.appypie.com/getImage/v1/getSDXLImage
API Parameters: The API POST- https://gateway.appypie.com/getImage/v1/getSDXLImage takes the following parameters:
| Parameter | Required | Type | Description |
| prompt | Yes | string | Provide a text prompt that guides the AI model on the type of content to generate. For example: “women’s street skateboarding final at the 2024 Paris Olympics.” |
| negative_prompt | No | string | Negative prompts are instructions to an AI model, specifying elements or styles to avoid in the generated content. For instance: "Generate an image of a city skyline, but exclude any clouds or tall trees in the background." |
| height | No | Number, default 1024 | The height in pixels of the generated image. This is set to 1024 by default for the best results. Anything below 512 pixels won’t work well. |
| width | No | Number, default 1024 | The width in pixels of the generated image. This is set to 1024 by default for the best results. |
| num_inference_steps | No | Number, default 20, Maximum 20 | The number of denoising steps. More denoising steps usually lead to a higher-quality image at the expense of slower inference. |
| guidance_scale | No | float, default 5.0 | Guidance scale is enabled by setting guidance_scale > 1. A higher guidance scale encourages generating images closely linked to the text prompt, usually at the expense of lower image quality. |
| seed | No | 42 | The seed is used to reproduce results. Providing the same seed will yield the same image each time. Use “null” for a random number seed. |
JSON
{
"prompt": "High-resolution, realistic image of a red fox sitting gracefully in a lush, green forest during springtime. The fox's fur should be detailed with natural colors, showcasing its reddish-brown coat and white underbelly. The background should be soft-focused, filled with green foliage and a few wildflowers, creating a serene and peaceful atmosphere. Sunlight should filter through the trees, casting gentle dappled light on the fox.",
"negative_prompt": "Low-quality, blurry image, with any other animals. Avoid abstract or cartoonish styles, dark or gloomy atmosphere, unnecessary objects or distractions in the background, harsh lighting, and unnatural colors.",
"height": 1024,
"width": 1024,
"num_steps": 20,
"guidance_scale": 5,
"seed": 40
}
POST https://gateway.appypie.com/getImage/v1/getSDXLImage HTTP/1.1
Content-Type: application/json
Cache-Control: no-cache
{
"prompt": "High-resolution, realistic image of a red fox sitting gracefully in a lush, green forest during springtime. The fox's fur should be detailed with natural colors, showcasing its reddish-brown coat and white underbelly. The background should be soft-focused, filled with green foliage and a few wildflowers, creating a serene and peaceful atmosphere. Sunlight should filter through the trees, casting gentle dappled light on the fox.",
"negative_prompt": "Low-quality, blurry image, with any other animals. Avoid abstract or cartoonish styles, dark or gloomy atmosphere, unnecessary objects or distractions in the background, harsh lighting, and unnatural colors.",
"height": 1024,
"width": 1024,
"num_steps": 20,
"guidance_scale": 5,
"seed": 40
}
import urllib.request, json
try:
url = "https://gateway.appypie.com/getImage/v1/getSDXLImage"
hdr ={
# Request headers
'Content-Type': 'application/json',
'Cache-Control': 'no-cache',
}
# Request body
data =
data = json.dumps(data)
req = urllib.request.Request(url, headers=hdr, data = bytes(data.encode("utf-8")))
req.get_method = lambda: 'POST'
response = urllib.request.urlopen(req)
print(response.getcode())
print(response.read())
except Exception as e:
print(e)
// Request body
const body = {
"prompt": "High-resolution, realistic image of a red fox sitting gracefully in a lush, green forest during springtime. The fox's fur should be detailed with natural colors, showcasing its reddish-brown coat and white underbelly. The background should be soft-focused, filled with green foliage and a few wildflowers, creating a serene and peaceful atmosphere. Sunlight should filter through the trees, casting gentle dappled light on the fox.",
"negative_prompt": "Low-quality, blurry image, with any other animals. Avoid abstract or cartoonish styles, dark or gloomy atmosphere, unnecessary objects or distractions in the background, harsh lighting, and unnatural colors.",
"height": 1024,
"width": 1024,
"num_steps": 20,
"guidance_scale": 5,
"seed": 40
};
fetch('https://gateway.appypie.com/getImage/v1/getSDXLImage', {
method: 'POST',
body: JSON.stringify(body),
// Request headers
headers: {
'Content-Type': 'application/json',
'Cache-Control': 'no-cache',}
})
.then(response => {
console.log(response.status);
console.log(response.text());
})
.catch(err => console.error(err));
curl -v -X POST "https://gateway.appypie.com/getImage/v1/getSDXLImage" -H "Content-Type: application/json" -H "Cache-Control: no-cache" --data-raw "{
\"prompt\": \"High-resolution, realistic image of a red fox sitting gracefully in a lush, green forest during springtime. The fox's fur should be detailed with natural colors, showcasing its reddish-brown coat and white underbelly. The background should be soft-focused, filled with green foliage and a few wildflowers, creating a serene and peaceful atmosphere. Sunlight should filter through the trees, casting gentle dappled light on the fox.\",
\"negative_prompt\": \"Low-quality, blurry image, with any other animals. Avoid abstract or cartoonish styles, dark or gloomy atmosphere, unnecessary objects or distractions in the background, harsh lighting, and unnatural colors.\",
\"height\": 1024,
\"width\": 1024,
\"num_steps\": 20,
\"guidance_scale\": 5,
\"seed\": 40
}"
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;
import java.io.UnsupportedEncodingException;
import java.io.DataInputStream;
import java.io.InputStream;
import java.io.FileInputStream;
public class HelloWorld {
public static void main(String[] args) {
try {
String urlString = "https://gateway.appypie.com/getImage/v1/getSDXLImage";
URL url = new URL(urlString);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//Request headers
connection.setRequestProperty("Content-Type", "application/json");
connection.setRequestProperty("Cache-Control", "no-cache");
connection.setRequestMethod("POST");
// Request body
connection.setDoOutput(true);
connection
.getOutputStream()
.write(
"{ \"prompt\": \"High-resolution, realistic image of a red fox sitting gracefully in a lush, green forest during springtime. The fox's fur should be detailed with natural colors, showcasing its reddish-brown coat and white underbelly. The background should be soft-focused, filled with green foliage and a few wildflowers, creating a serene and peaceful atmosphere. Sunlight should filter through the trees, casting gentle dappled light on the fox.\", \"negative_prompt\": \"Low-quality, blurry image, with any other animals. Avoid abstract or cartoonish styles, dark or gloomy atmosphere, unnecessary objects or distractions in the background, harsh lighting, and unnatural colors.\", \"height\": 1024, \"width\": 1024, \"num_steps\": 20, \"guidance_scale\": 5, \"seed\": 40 }".getBytes()
);
int status = connection.getResponseCode();
System.out.println(status);
BufferedReader in = new BufferedReader(
new InputStreamReader(connection.getInputStream())
);
String inputLine;
StringBuffer content = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
content.append(inputLine);
}
in.close();
System.out.println(content);
connection.disconnect();
} catch (Exception ex) {
System.out.print("exception:" + ex.getMessage());
}
}
}
$url = "https://gateway.appypie.com/getImage/v1/getSDXLImage";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
# Request headers
$headers = array(
'Content-Type: application/json',
'Cache-Control: no-cache',);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
# Request body
$request_body = '{
"prompt": "High-resolution, realistic image of a red fox sitting gracefully in a lush, green forest during springtime. The fox's fur should be detailed with natural colors, showcasing its reddish-brown coat and white underbelly. The background should be soft-focused, filled with green foliage and a few wildflowers, creating a serene and peaceful atmosphere. Sunlight should filter through the trees, casting gentle dappled light on the fox.",
"negative_prompt": "Low-quality, blurry image, with any other animals. Avoid abstract or cartoonish styles, dark or gloomy atmosphere, unnecessary objects or distractions in the background, harsh lighting, and unnatural colors.",
"height": 1024,
"width": 1024,
"num_steps": 20,
"guidance_scale": 5,
"seed": 40
}';
curl_setopt($curl, CURLOPT_POSTFIELDS, $request_body);
$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);
JSON
HTTP/1.1 200 OK
{
"imageUrl": "https://pub-582b7213209642b9b995c96c95a30381.r2.dev/sdxl_lightning/prompt-910739568-1725430070244-272448.png"
}
The Stable Diffusion API returns specific HTTP status codes and response bodies to indicate the success or failure of a request. Developers should implement error handling in their applications to manage these responses effectively.
| Status Code | Description | Response Body |
| 200 | Success - The request was successfully processed, and the image generation is in progress or completed. | { "msg": "Image Getting Created", ... } |
| 400 | Bad Request - The request contains invalid parameters or missing fields. | { "error": "Invalid request parameters" } |
| 401 | Unauthorized - The provided subscription key is missing or invalid. | { "error": "Invalid or missing authentication" } |
| 403 | Forbidden - The subscription does not have access to this API or action. | { "error": "Access denied for this operation" } |
| 404 | Not Found - The requested resource or endpoint could not be found. | { "error": "Endpoint not found" } |
| 429 | Too Many Requests - The request rate limit has been exceeded. | { "error": "Rate limit exceeded, please retry later" } |
| 500 | Internal Server Error - An unexpected error occurred on the server. | { "error": "An unexpected error occurred, please try again later" } |
{
"error": "Invalid prompt parameter"
}
This documentation provides all the necessary information for effectively using the Stable Diffusion API. Make sure to replace YOUR_API_KEY with the actual key you received when you subscribed to the service.