DeepAI APIdeepai.org ↗
Generate AI images from text prompts via the DeepAI API. Access 123+ art styles including anime, cyberpunk, and watercolor. Returns base64 image data and a direct URL.
What is the DeepAI API?
The DeepAI API exposes 2 endpoints for generating AI images from text prompts and querying available art styles. The generate_image endpoint accepts a text prompt and returns 9 response fields including a direct image_url, image_base64 data, job_id, and pixel dimensions. A companion list_styles endpoint enumerates all 123 supported style slugs so you can pick the exact model before calling generation.
curl -X POST 'https://api.parse.bot/scraper/7ed530f5-9d88-47ce-93e2-9c2e596b7f77/generate_image' \
-H 'X-API-Key: $PARSE_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"text": "a beautiful sunset over mountains",
"style": "text2img",
"width": "512",
"height": "512",
"quality": "true"
}'Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace deepai-org-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.deepai_image_generator_api import DeepAI, Style, ArtStyle, Quality
client = DeepAI()
# List all available art styles
for style in client.styles.list():
print(style.slug, style.name)
# Generate an image with a specific style and quality setting
image = client.images.generate(
text="a futuristic city skyline at sunset",
style=ArtStyle.CYBERPUNK_GENERATOR,
width=512,
height=512,
quality=Quality.HIGH,
)
print(image.job_id, image.image_url, image.image_size_bytes)
Generate an AI image from a text prompt. Submits the prompt to DeepAI's text-to-image model and returns the generated image as base64-encoded data along with metadata including a direct URL. Supports 123 art styles and configurable dimensions (128-1536px). Generation typically takes 5-15 seconds depending on quality setting.
| Param | Type | Description |
|---|---|---|
| textrequired | string | The text prompt describing the image to generate. |
| style | string | Art style/model slug. Use list_styles endpoint for the full set of 123 accepted slugs. |
| width | integer | Image width in pixels (128-1536). |
| height | integer | Image height in pixels (128-1536). |
| quality | string | Quality preference. 'true' for higher quality (slower), 'false' for faster generation. |
{
"type": "object",
"fields": {
"style": "string - The style/model slug used",
"width": "integer - Image width in pixels",
"height": "integer - Image height in pixels",
"job_id": "string - Unique job identifier",
"prompt": "string - The text prompt used",
"image_url": "string - Direct URL to the generated image",
"content_type": "string - MIME type (e.g. image/jpeg)",
"image_base64": "string - Base64-encoded image data",
"image_size_bytes": "integer - Size of the image in bytes"
},
"sample": {
"data": {
"style": "text2img",
"width": 640,
"height": 640,
"job_id": "b1054d8e-b0d7-44f3-a9ac-fed3f059269b",
"prompt": "a cute cat sitting on a windowsill",
"image_url": "https://api.deepai.org/job-view-file/b1054d8e-b0d7-44f3-a9ac-fed3f059269b/outputs/output.jpg",
"content_type": "image/jpeg",
"image_base64": "/9j/4AAQSkZJRgABAQAAAQABAAD...",
"image_size_bytes": 35662
},
"status": "success"
}
}About the DeepAI API
Image Generation
The generate_image endpoint accepts a text prompt (required) alongside optional parameters for style, width, height, and quality. Width and height each accept integer values between 128 and 1536 pixels. Setting quality to 'true' enables a higher-fidelity render at the cost of longer generation time. The response includes both image_url (a direct link to the hosted file) and image_base64 (the raw image data), so you can either redirect users to the URL or embed the image inline without an additional fetch. The content_type field confirms the MIME type (typically image/jpeg), and image_size_bytes tells you the file size before you decide how to handle it.
Art Style Selection
The list_styles endpoint returns a flat array of style objects, each with a slug (the value you pass as the style parameter to generate_image) and a human-readable name. The response also includes a total_styles integer confirming the full count. The list is static and does not paginate, so a single call retrieves all available styles. Style slugs cover a wide range of aesthetics — anime, cyberpunk, watercolor, pixel art, fantasy, and over 110 more.
Response Traceability
Every generate_image response echoes back the inputs that produced it: prompt, style, width, and height are all included alongside the generated output. The job_id field provides a unique identifier for each generation run, which is useful for logging or correlating requests in production pipelines.
The DeepAI API is a managed, monitored endpoint for deepai.org — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when deepai.org changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official deepai.org API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Generating placeholder artwork for game prototypes by specifying a style slug and prompt via
generate_image - Building a style-preview UI that populates options from
list_stylesslugs and renders sample images on selection - Automating social media visual content by piping product descriptions as prompts and storing the returned
image_url - Creating varied training data for vision models by iterating across all 123 style slugs with a fixed prompt
- Producing on-demand illustrations for blog posts by passing article summaries as prompts and embedding
image_base64output - Prototyping custom avatar generators by combining configurable
width/heightdimensions with character-description prompts - Logging and auditing AI image jobs in production using the
job_idandimage_size_bytesfields returned per request
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does DeepAI have an official developer API?+
What does `generate_image` return beyond the image itself?+
image_url, image_base64, content_type, image_size_bytes, job_id, prompt, style, width, and height. You get both a hosted URL and raw base64 data in the same response, so no second request is needed to retrieve the file.Does the API support video or animation generation?+
Can I retrieve a previously generated image by its `job_id`?+
generate_image returns image_url and image_base64 at generation time, and job_id is provided for your own logging. You can fork the API on Parse and revise it to add a retrieval endpoint if persistent job lookup is needed.Are there constraints on image dimensions?+
width and height parameters each accept integers between 128 and 1536 pixels. Values outside that range are not accepted. Both dimensions are optional; omitting them lets the model use its default dimensions.