# Documentation ## Choose your starting point - https://noveadream.com/developers/en/quickstart/ - https://noveadream.com/developers/en/models/ - https://noveadream.com/developers/en/nai/ ## Find your model - [GPT Image 2](https://noveadream.com/developers/en/images/?model=gpt-image-2): gpt-image-2. Image generation, editing and request examples. - [GPT Image 2.5 SFW](https://noveadream.com/developers/en/images/?model=gpt-image-2.5-sunburst): gpt-image-2.5-sunburst. Image generation, editing and request examples. - [Seedream 5.0 Pro](https://noveadream.com/developers/en/images/?model=seedream-5.0-pro): seedream-5.0-pro. Image generation, editing and request examples. - [Qwen Edit 2511](https://noveadream.com/developers/en/images/?model=qwen-edit-2511): qwen-edit-2511. Image generation, editing and request examples. ## Start with one request Images, video and NovelAI use the same site API key, with distinct request and response formats. ```bash curl --fail-with-body 'https://noveadream.com/v1/models' \ -H "Authorization: Bearer $NOVEA_API_KEY" ``` --- # Quickstart Prepare your key, choose a model and make your first image request. ## 01 / Prepare your API key Create a key in My API keys after signing in. Check your balance, membership and model access. Reading the documentation does not require a login. ```bash export NOVEA_API_KEY="sk-your-key" export REQUEST_ID="$(uuidgen)" ``` ```powershell $env:NOVEA_API_KEY = "sk-your-key" $env:REQUEST_ID = [guid]::NewGuid().ToString() ``` ## 02 / Check available models ```bash curl --fail-with-body 'https://noveadream.com/v1/models' \ -H "Authorization: Bearer $NOVEA_API_KEY" ``` Use a model ID from data[].id. A public model listing does not grant access to every account. ## 03 / Generate an image ```bash curl --fail-with-body 'https://noveadream.com/v1/images/generations' \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -H 'Content-Type: application/json' \ -H "Idempotency-Key: $REQUEST_ID" \ -d '{ "model": "gpt-image-2", "prompt": "A ceramic teapot on a sunlit table, soft shadows", "size": "1024x1024", "quality": "medium", "n": 1, "response_format": "url" }' ``` Reuse REQUEST_ID for retries; use a new value for a new generation. ## 04 / Save the result ```json { "created": 1791300000, "data": [ { "url": "https://example.com/result.png" } ] } ``` Download the image from data[].url. example.com is a placeholder. If generation_pending is returned, the original task may still be running; preserve the idempotency key to avoid duplicate submissions. --- # Model library Choose a model for your creative task. Read its API guide or open the workspace. ## Explore models - [GPT Image 2](https://noveadream.com/developers/en/images/?model=gpt-image-2): gpt-image-2. Image generation, editing and request examples. - [GPT Image 2.5 SFW](https://noveadream.com/developers/en/images/?model=gpt-image-2.5-sunburst): gpt-image-2.5-sunburst. Image generation, editing and request examples. - [Seedream 5.0 Pro](https://noveadream.com/developers/en/images/?model=seedream-5.0-pro): seedream-5.0-pro. Image generation, editing and request examples. - [Qwen Edit 2511](https://noveadream.com/developers/en/images/?model=qwen-edit-2511): qwen-edit-2511. Image generation, editing and request examples. - [NovelAI V4.5](https://noveadream.com/developers/en/images/?model=nai-v4.5): nai-v4.5. Image generation, editing and request examples. - [NovelAI V5](https://noveadream.com/developers/en/images/?model=nai-v5): nai-v5. Image generation, editing and request examples. - [Nano Banana 2](https://noveadream.com/developers/en/images/?model=nano-banana-2-sfw): nano-banana-2-sfw. Image model for the web workspace. - [Seedance 2.5](https://noveadream.com/developers/en/videos/?model=seedance-2.5): seedance-2.5. Video generation with asynchronous task retrieval. - [Seedance 2.0](https://noveadream.com/developers/en/videos/?model=seedance-2.0): seedance-2.0. Video generation with asynchronous task retrieval. - [Seedance 2.0 Fast](https://noveadream.com/developers/en/videos/?model=seedance-2.0-fast): seedance-2.0-fast. Video generation with asynchronous task retrieval. - [MiniMax H3](https://noveadream.com/developers/en/videos/?model=minimax-h3): minimax-h3. Video generation with asynchronous task retrieval. - [MiniMax H3 SFW](https://noveadream.com/developers/en/videos/?model=minimax-h3-sfw): minimax-h3-sfw. Video generation with asynchronous task retrieval. - [Wan 2.2 Anime](https://noveadream.com/developers/en/videos/?model=wan-2.2-anime): wan-2.2-anime. Video generation with asynchronous task retrieval. - [Wan 2.2 Real](https://noveadream.com/developers/en/videos/?model=wan-2.2-real): wan-2.2-real. Video generation with asynchronous task retrieval. - [gpt-6-sol](https://noveadream.com/developers/en/text/?model=gpt-6-sol): gpt-6-sol. Chat and text generation; availability depends on your account model list. - [gpt-6-astra](https://noveadream.com/developers/en/text/?model=gpt-6-astra): gpt-6-astra. Chat and text generation; availability depends on your account model list. - [gpt-5.6-sol](https://noveadream.com/developers/en/text/?model=gpt-5.6-sol): gpt-5.6-sol. Chat and text generation; availability depends on your account model list. - [deepseek-v4.1-flash](https://noveadream.com/developers/en/text/?model=deepseek-v4.1-flash): deepseek-v4.1-flash. Chat and text generation; availability depends on your account model list. ## Model pricing Browse model prices or ask the pricing assistant to calculate an estimate for your settings. [View model pricing](https://noveadream.com/developers/en/pricing/) --- # Model pricing ## Pricing assistant ## All model prices ### GPT Image 2 Charged per output. Seedream: the first reference is included; each additional reference adds $0.003 per request. Standard wallet prices before membership benefits. - 1k: $0.01 - 2k: $0.015 - 4k: $0.02 ### GPT Image 2.5 SFW Charged per output. Seedream: the first reference is included; each additional reference adds $0.003 per request. Standard wallet prices before membership benefits. - 1k: $0.01 - 2k: $0.01 - 4k: $0.01 ### Seedream 5.0 Pro Charged per output. Seedream: the first reference is included; each additional reference adds $0.003 per request. Standard wallet prices before membership benefits. - 1k: $0.045 - 2k: $0.09 ### Qwen Edit 2511 Charged per output. Seedream: the first reference is included; each additional reference adds $0.003 per request. Standard wallet prices before membership benefits. - 1k: $0.015 ### Nano Banana 2 Charged per output. Seedream: the first reference is included; each additional reference adds $0.003 per request. Standard wallet prices before membership benefits. - 1k: $0.022 - 2k: $0.025 - 4k: $0.025 ### NovelAI V4.5 Standard single image: V4.5 $0.003; V5 $0.006. Dimensions, steps, batches and references affect the total. V5 API supports wallet payment; web V5 requires membership. Estimates exclude personal membership allowances. - 1024 × 1024, 23 steps: $0.003 ### NovelAI V5 Standard single image: V4.5 $0.003; V5 $0.006. Dimensions, steps, batches and references affect the total. V5 API supports wallet payment; web V5 requires membership. Estimates exclude personal membership allowances. - 1024 × 1024, 23 steps: $0.006 ### Seedance 2.5 Calculated from resolution, aspect ratio, duration and video references. Estimates and precharges are separate; usage-based jobs settle on completion. Before membership benefits. - 480p, 5s, 16:9: $0.6454 - 720p, 5s, 16:9: $1.3878 - 1080p, 5s, 16:9: $3.4118 ### Seedance 2.0 Calculated from resolution, aspect ratio, duration and video references. Estimates and precharges are separate; usage-based jobs settle on completion. Before membership benefits. - 480p, 5s, 16:9: $0.4219 - 720p, 5s, 16:9: $0.9072 - 1080p, 5s, 16:9: $2.2454 ### Seedance 2.0 Fast Calculated from resolution, aspect ratio, duration and video references. Estimates and precharges are separate; usage-based jobs settle on completion. Before membership benefits. - 480p, 5s, 16:9: $0.3375 - 720p, 5s, 16:9: $0.7258 ### MiniMax H3 Calculated from resolution, aspect ratio, duration and video references. Estimates and precharges are separate; usage-based jobs settle on completion. Before membership benefits. - 480p, 5s, 16:9: $0.1453 - 720p, 5s, 16:9: $0.2892 ### MiniMax H3 SFW Calculated from resolution, aspect ratio, duration and video references. Estimates and precharges are separate; usage-based jobs settle on completion. Before membership benefits. - 768p, 5s, 16:9: $0.10 - 1080p, 5s, 16:9: $0.10 ### Wan 2.2 Anime Calculated from resolution, aspect ratio, duration and video references. Estimates and precharges are separate; usage-based jobs settle on completion. Before membership benefits. - 480p, 5s, 16:9: $0.14 - 720p, 5s, 16:9: $0.18 ### Wan 2.2 Real Calculated from resolution, aspect ratio, duration and video references. Estimates and precharges are separate; usage-based jobs settle on completion. Before membership benefits. - 480p, 5s, 16:9: $0.14 - 720p, 5s, 16:9: $0.18 ### gpt-6-sol Uses current standard-group public rates for uncached input, cached input and output; some models are priced per request. Missing rates are never guessed. No rate in this snapshot. ### gpt-6-astra Uses current standard-group public rates for uncached input, cached input and output; some models are priced per request. Missing rates are never guessed. No rate in this snapshot. ### gpt-5.6-sol Uses current standard-group public rates for uncached input, cached input and output; some models are priced per request. Missing rates are never guessed. No rate in this snapshot. ### deepseek-v4.1-flash Uses current standard-group public rates for uncached input, cached input and output; some models are priced per request. Missing rates are never guessed. No rate in this snapshot. --- # Images & editing Create images from text or references and retrieve URLs or Base64 data. ## Build a request ### GPT Image 2 - quality: low / auto → 1K; medium → 2K; high → 4K - n: 1 - size: WIDTHxHEIGHT; dimensions must be multiples of 8 and within the selected tier’s pixel budget. - image[]: Upload 1–4 images to the edits endpoint. POST /v1/images/generations ```json { "model": "gpt-image-2", "prompt": "A ceramic teapot on a sunlit table", "aspect_ratio": "1:1", "quality": "medium", "n": 1, "response_format": "url" } ``` ### GPT Image 2.5 SFW - quality: low / auto → 1K - n: 1 - size: Multiples of 16; 655,360–1,048,576 pixels, aspect ratio within 3:1, each side at most 3840. - image[]: Upload 1–4 images to the edits endpoint. POST /v1/images/generations ```json { "model": "gpt-image-2.5-sunburst", "prompt": "A ceramic teapot on a sunlit table", "aspect_ratio": "1:1", "quality": "low", "n": 1, "response_format": "url" } ``` ### Seedream 5.0 Pro - quality: low / auto → 1K; medium → 2K - aspect_ratio: 1:1 / 16:9 / 9:16 / 4:3 / 3:4 - n: 1 - image_urls / image[]: 1–10 images; smart aspect ratio requires reference images. POST /v1/images/generations ```json { "model": "seedream-5.0-pro", "prompt": "A ceramic teapot on a sunlit table", "aspect_ratio": "1:1", "quality": "low", "n": 1, "response_format": "url" } ``` ### Qwen Edit 2511 - mode: reference - image_urls / image[]: Required, 1–2 images. - resolution: Fixed at 720p; quality does not change resolution. - n: 1 POST /v1/images/generations ```json { "model": "qwen-edit-2511", "prompt": "Change the background to a quiet garden", "mode": "reference", "aspect_ratio": "1:1", "image_urls": [ "https://example.com/reference.png" ], "n": 1, "response_format": "url" } ``` ### NovelAI V4.5 - n: 1–4 - aspect_ratio: Mapped to server-defined dimensions. - image[]: Exactly one reference for editing. - quality: Not applicable; see the NovelAI guide for detailed controls. POST /v1/images/generations ```json { "model": "nai-v4.5", "prompt": "watercolor, a quiet garden", "aspect_ratio": "1:1", "n": 1, "response_format": "url" } ``` ### NovelAI V5 - model: nai-diffusion-5-full - action: generate / img2img / infill - parameters.steps: 1–50 - parameters.n_samples: 1–4 - parameters.v4_prompt.caption.char_captions: Up to 32; automatic positioning recommended. POST /ai/generate-image ```json { "model": "nai-diffusion-5-full", "input": "watercolor, a quiet garden", "action": "generate", "parameters": { "width": 1024, "height": 1024, "steps": 23, "n_samples": 1, "scale": 5, "seed": 42, "negative_prompt": "" } } ``` ### Nano Banana 2 - API: Workspace only; public API unavailable. - resolution: 1K / 2K / 4K - aspect_ratio: smart / 1:1 / 3:2 / 2:3 / 4:3 / 3:4 / 5:4 / 4:5 / 16:9 / 9:16 / 21:9 - References: Up to 14 account-owned images. - Image count: 1 ## Common parameters | Field | Description | | --- | --- | | model | Required. A model ID available to your key. | | prompt | Required. Describe the desired image. | | n | Image count. Start with 1. | | size / quality | Supported sizes and quality levels vary by model. | | response_format | url \| b64_json | | image_urls | Public reference URLs, supported by selected models. | ## Edit reference images ```bash curl --fail-with-body https://noveadream.com/v1/images/edits \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -H "Idempotency-Key: $REQUEST_ID" \ -F "model=gpt-image-2" \ -F "prompt=Change the background to a quiet garden" \ -F "image[]=@reference.png" ``` Let your client set the multipart Content-Type boundary; do not set application/json. Repeat image[] for multiple files. ## Read the result ```json { "created": 1791300000, "data": [{ "url": "https://example.com/result.png" }] } ``` For b64_json responses, read data[].b64_json. Download results promptly rather than treating result URLs as permanent storage. --- # Video generation Create a task, save its ID and retrieve the result through an asynchronous workflow. ## Create a video task ### Seedance 2.5 - model: seedance-2.5 - resolution: 480p / 720p / 1080p - duration: 4–30 - aspect_ratio: The builder offers landscape, portrait and square. - Idempotency-Key: Keep unchanged when retrying the same generation. POST /v1/videos ```json { "model": "seedance-2.5", "prompt": "A slow camera move through a peaceful garden", "duration": 5, "resolution": "480p", "aspect_ratio": "16:9" } ``` ### Seedance 2.0 - model: seedance-2.0 - resolution: 480p / 720p / 1080p - duration: 4–15 - aspect_ratio: The builder offers landscape, portrait and square. - Idempotency-Key: Keep unchanged when retrying the same generation. POST /v1/videos ```json { "model": "seedance-2.0", "prompt": "A slow camera move through a peaceful garden", "duration": 5, "resolution": "480p", "aspect_ratio": "16:9" } ``` ### Seedance 2.0 Fast - model: seedance-2.0-fast - resolution: 480p / 720p - duration: 4–15 - aspect_ratio: The builder offers landscape, portrait and square. - Idempotency-Key: Keep unchanged when retrying the same generation. POST /v1/videos ```json { "model": "seedance-2.0-fast", "prompt": "A slow camera move through a peaceful garden", "duration": 5, "resolution": "480p", "aspect_ratio": "16:9" } ``` ### MiniMax H3 - model: minimax-h3 - resolution: 480p / 720p - duration: 4–15 - aspect_ratio: The builder offers landscape, portrait and square. - Idempotency-Key: Keep unchanged when retrying the same generation. POST /v1/videos ```json { "model": "minimax-h3", "prompt": "A slow camera move through a peaceful garden", "duration": 5, "resolution": "480p", "aspect_ratio": "16:9" } ``` ### MiniMax H3 SFW - model: minimax-h3-sfw - resolution: 768p / 1080p - duration: 4–30 - aspect_ratio: The builder offers landscape, portrait and square. - Idempotency-Key: Keep unchanged when retrying the same generation. POST /v1/videos ```json { "model": "minimax-h3-sfw", "prompt": "A slow camera move through a peaceful garden", "duration": 5, "resolution": "768p", "aspect_ratio": "16:9" } ``` ### Wan 2.2 Anime - model: wan-2.2-anime - resolution: 480p / 720p - duration: 5 - aspect_ratio: The builder offers landscape, portrait and square. - Idempotency-Key: Keep unchanged when retrying the same generation. POST /v1/videos ```json { "model": "wan-2.2-anime", "prompt": "A slow camera move through a peaceful garden", "duration": 5, "resolution": "480p", "aspect_ratio": "16:9" } ``` ### Wan 2.2 Real - model: wan-2.2-real - resolution: 480p / 720p - duration: 5 - aspect_ratio: The builder offers landscape, portrait and square. - Idempotency-Key: Keep unchanged when retrying the same generation. POST /v1/videos ```json { "model": "wan-2.2-real", "prompt": "A slow camera move through a peaceful garden", "duration": 5, "resolution": "480p", "aspect_ratio": "16:9" } ``` ## Poll & download ```bash curl --fail-with-body 'https://noveadream.com/v1/videos/video_12345' \ -H "Authorization: Bearer $NOVEA_API_KEY" ``` Replace video_12345 with the returned id. Download on completed and stop polling on failed. Start with a five-second polling interval and back off on rate limits. ```bash curl --fail-with-body https://noveadream.com/v1/videos/video_12345/content \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -o result.mp4 ``` ## MiniMax H3 references All-reference mode supports images, video and audio. First/last-frame mode accepts images only. Provide total reference audio and video durations separately; do not mix the two modes. ```json { "model": "minimax-h3-sfw", "mode": "all-reference", "prompt": "Follow the motion of the reference video", "duration": 8, "resolution": "768p", "aspect_ratio": "9:16", "reference_video_urls": [ "https://example.com/motion.mp4" ], "input_video_seconds": 6 } ``` --- # NovelAI integration Use the NovelAI image request format and receive images in one request. ## Generate images directly Use https://noveadream.com and your site API key. POST /ai/generate-image accepts input, model, action and parameters. No quote or model_variant is required. The default response is ZIP; Accept: application/json returns Base64 images in an images array. ```bash curl --fail-with-body 'https://noveadream.com/ai/generate-image' \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -H 'Content-Type: application/json' \ -d '{ "input": "watercolor, a quiet garden", "model": "nai-diffusion-5-full", "action": "generate", "parameters": { "width": 1024, "height": 1024, "steps": 23, "n_samples": 1, "scale": 5, "seed": 42, "sampler": "k_euler_ancestral", "negative_prompt": "" } }' --output images.zip ``` ## Models & variants | Model | model (native format) | Max characters | | --- | --- | --- | | NAI V4.5 Full | nai-diffusion-4-5-full | 6 | | NAI V4.5 Curated | nai-diffusion-4-5-curated | 6 | | NAI V5 Full | nai-diffusion-5-full | 32 | | NAI V4 Full | nai-diffusion-4-full | 6 | | NAI V4 Curated | nai-diffusion-4-curated-preview | 6 | | NAI Anime V3 / Furry V3 | nai-diffusion-3 / nai-diffusion-furry-3 | 0 | Characters use caption.char_captions inside parameters.v4_prompt / v4_negative_prompt. use_coords: false enables automatic positioning. Prompts are preserved without appending quality or negative tags. ## Compatibility & clients Supports generate, img2img, infill, character prompts and Precise Reference for supported models. Send image and mask as Base64. Dimensions must be multiples of 64, at most 3145728 pixels and 3072 per side; 1–50 steps, 1–4 samples, seed 0–4294967295. Requests are limited to 40 MiB; each reference image to 24 MiB and 24 megapixels. This endpoint does not currently support encoded Vibes, SMEA, ControlNet, Max Enhance, automatic upscaling, streaming or subscription emulation. Unsupported active parameters return 400 before charging. Use the workbench extensions below for quotes, asset IDs or SSE recovery. Clients with a configurable NovelAI URL can use this base URL and key. Current SillyTavern release source hardcodes official image, subscription and upscale hosts: changing only the key cannot redirect it. Custom endpoint support is required in the client; this service does not impersonate an official subscription. ## Optional: workbench quote extension ```bash curl --fail-with-body 'https://noveadream.com/v1/nai/estimate' \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -H 'Content-Type: application/json' \ -d '{ "model": "nai-v4.5", "model_variant": "nai-diffusion-4-5-full", "prompt": "a quiet garden, watercolor, soft lighting", "negative_prompt": "lowres, blurry", "width": 1024, "height": 1024, "steps": 28, "count": 1 }' ``` Only this extension uses model: nai-v4.5 plus model_variant. Save data.quote_id and request a new quote after changing parameters. The native endpoint does not require this step. ## Submit a task ```bash curl --fail-with-body 'https://noveadream.com/v1/nai/generations' \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -H 'Content-Type: application/json' \ -d '{ "model": "nai-v4.5", "model_variant": "nai-diffusion-4-5-full", "prompt": "a quiet garden, watercolor, soft lighting", "negative_prompt": "lowres, blurry", "width": 1024, "height": 1024, "steps": 28, "count": 1, "quote_id": "QUOTE_ID", "client_request_id": "YOUR_UNIQUE_REQUEST_ID" }' ``` Replace QUOTE_ID and YOUR_UNIQUE_REQUEST_ID. Keep client_request_id for a retry of the same request; create a new ID for a new image. --- # SillyTavern ## Configure the connection These settings apply to SillyTavern extensions that support a custom NovelAI endpoint. The built-in NovelAI image source uses fixed official hosts; replacing only the API key does not connect it to this service. [Create an API key](https://noveadream.com/ai/api?section=keys) | Field | Value | | --- | --- | | API format | NovelAI | | Base URL | https://noveadream.com | | Full generation URL | https://noveadream.com/ai/generate-image | | API Key | Enter your NoveaDream API key. | | Model (NAI5) | nai-diffusion-5-full | | Model (NAI4.5) | nai-diffusion-4-5-full | Use the site root when the extension asks for a base URL, or the full /ai/generate-image URL when it asks for a complete endpoint. Key fields typically take the raw key; HTTP requests use Authorization: Bearer YOUR_API_KEY. ## Model parameters | Field | Example | | --- | --- | | Width × height | 832 × 1216 | | Steps | 23 | | Sampler | k_euler_ancestral | | CFG / scale | 5 | | Seed | 42 | | Character positions | Automatic (use_coords: false) | | SMEA / SMEA DYN | Off | [NovelAI integration and parameter limits](https://noveadream.com/developers/en/nai/) ## Troubleshooting | Symptom | Check | | --- | --- | | 401 | Check that the API key is complete and valid. | | 403 | Check model permissions and account status. | | 400 | Check the reported field, including seed, dimensions and unsupported options. | | 404 / HTML response | Confirm the final request is POST /ai/generate-image, without duplicated path segments. | | Timeout / network interruption | Check generation history on the website before submitting again. | --- # Characters & references Describe the overall image in the main prompt and each character in a separate prompt. ## Separate character prompts ```json { "prompt": "watercolor, a quiet garden, afternoon light", "auto_character_positions": true, "characters": [ { "prompt": "adult painter, blue coat, holding a sketchbook", "negative_prompt": "blurry" }, { "prompt": "adult gardener, straw hat, holding flowers", "negative_prompt": "" } ] } ``` This example uses automatic character positioning. V4.5 supports up to 6 characters and V5 up to 32. Keep character descriptions separate from global style. ## Upload an image ```bash curl --fail-with-body https://noveadream.com/v1/nai/assets \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -F "file=@reference.png" ``` Use the returned data.id. Assets belong to the uploading account; retain separate asset IDs for the source image, mask and references. ## Generation controls | Field | Value | | --- | --- | | steps | 1–50 | | count | 1–4 | | seed | 0–4294967295 | | guidance | 0–10 | | source_strength | (0, 1] | | source_noise | 0–1 | Do not combine precise references and Vibe in the same request. Supported reference modes, transparency and enhancement differ by variant; check capabilities first. --- # Streaming & recovery Receive generation previews and reconnect to the same task after a disconnect. ## Start a stream ```bash curl -N https://noveadream.com/v1/nai/generations/stream \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -H "Content-Type: application/json" \ -d @request.json ``` request.json contains the full quoted request, including quote_id and client_request_id. This endpoint uses SSE; handle preview, queued, done, error and keepalive events. ## Resume an existing task ```bash curl -N https://noveadream.com/v1/nai/generations/456/events \ -H "Authorization: Bearer $NOVEA_API_KEY" ``` ```bash curl --fail-with-body 'https://noveadream.com/v1/nai/generations/456' \ -H "Authorization: Bearer $NOVEA_API_KEY" ``` Replace 456 with the task ID. Continue querying the same ID after disconnecting. --- # Chat & text Access text models with your site API key. ## Models & protocols | Model | Endpoints | | --- | --- | | gpt-6-sol / gpt-6-astra / gpt-5.6-sol | /v1/responses; /v1/chat/completions; /v1/responses/compact | | deepseek-v4.1-flash | /v1/chat/completions | ## Chat example ```bash curl --fail-with-body 'https://noveadream.com/v1/chat/completions' \ -H "Authorization: Bearer $NOVEA_API_KEY" \ -H 'Content-Type: application/json' \ -d '{ "model": "gpt-6-sol", "messages": [ { "role": "user", "content": "Hello" } ], "stream": false }' ``` ## Read the reply For non-streaming replies, read choices[0].message.content. With stream enabled, consume SSE deltas. Follow the parameter contract of the selected model and endpoint. --- # Authentication & access Documentation is public. API calls use your own site-issued key. ## Bearer authentication ```http Authorization: Bearer YOUR_API_KEY ``` Keep keys on your own server. Do not include them in public pages, screenshots, repositories or logs. Key management, wallets and personal tasks require authentication. ## Model access ```bash curl --fail-with-body 'https://noveadream.com/v1/models' \ -H "Authorization: Bearer $NOVEA_API_KEY" ``` The catalog describes platform capabilities. Calls still enforce key restrictions, account permissions, balance and membership requirements. Public documentation does not change these checks. ## Use the correct endpoint | Type | Path | | --- | --- | | Images | /v1/images/generations | | Video | /v1/videos | | NovelAI | /v1/nai/estimate → /v1/nai/generations | Follow this service’s response fields. Providers may expose different protocols for the same model name; changing the hostname alone does not guarantee compatibility. --- # Billing & storage Check applicable costs before submitting and handle retries and results carefully. ## How pricing is determined Models may be billed by image specification, duration, tokens or points. Consult your account’s catalog. For NAI, inspect the estimate response for payment method, price and allowance usage. All charges settle in USD. [View model pricing](https://noveadream.com/developers/en/pricing/) ## NAI cost & membership The base fee is not necessarily the final price. Size, steps, references and membership benefits can affect the quote. The web workspace requires membership for V5; API callers without membership can pay from their wallet. ## Avoid duplicate generation Reuse Idempotency-Key for image/video retries and client_request_id for NAI retries. Save task IDs and resume polling. A timeout or disconnect does not by itself mean a failed or refunded task. ## Save your results Download successful results to your own storage. Do not treat temporary URLs as permanent, or forward this service’s Authorization header to third-party download hosts. --- # Errors & retries Determine whether a request was accepted before correcting, waiting or retrying. ## Common cases | Case | Recommended action | | --- | --- | | 401 | Check whether the key is correct, active and unexpired. | | 403 / model_not_found | Check model access and membership instead of repeatedly submitting. | | 429 | Back off as instructed by the server and reduce concurrency. | | generation_pending | The task may still be running. Preserve the original idempotency key. | | Expired quote | Get a fresh quote and use its quote_id. | | Stream disconnected | Query the task or reconnect to its event stream. | ## Keep diagnostic details Record the time, endpoint, HTTP status, error code and task ID. Remove API keys and private media before sharing diagnostics. Avoid logging only “generation failed”. --- # Integrate with AI Give your coding assistant readable documentation and request examples. ## Downloadable documentation https://noveadream.com/developers/en/llms.txt https://noveadream.com/developers/en/llms-full.txt https://noveadream.com/developers/en/examples.json HTML, Markdown and full-text indexes are generated from the same source. Fields describe the documented subset; account access remains determined by API responses. ## Copy for your coding assistant ```text Read https://noveadream.com/developers/en/llms-full.txt first. Use https://noveadream.com and my site API key from an environment variable. Images: POST /v1/images/generations. Video: POST /v1/videos, then GET /v1/videos/{id}. NAI: POST /ai/generate-image with input, model, action, parameters. No quote required. Accept: application/json returns Base64 images. Save task IDs. Reuse the original idempotency key on network retries. Do not log credentials or invent unsupported endpoints. ```