Skip to main content
Square1 exposes a NovelAI-protocol image endpoint so any client that speaks NovelAI’s /ai/generate-image — most notably RisuAI’s Lightboard (삽화) module — can use Square1’s GPU pool as its image backend:
The request and response follow NovelAI’s conventions, not OpenAI’s: you send a NAI-syntax prompt, and you get back a ZIP archive containing one PNG. Errors come as {statusCode, message} (the shape NAI clients already parse), not the OpenAI envelope.
Members-only: your account must be active, and a registered email is required while email enforcement is on. Illustration requests draw from the image queue’s capacity — they do not consume your LLM token quota.

Your preset does the heavy lifting

The NAI protocol only carries a prompt and a few sampling numbers. The rest — checkpoint, LoRAs, sampler, scheduler, quality prompt, upscaler — comes from your active illustration preset, configured once in the dashboard under Images → ILLUSTRATION. You can keep up to 10 presets; exactly one is active, and the API always draws with the active one. The NAI model field is accepted for protocol compatibility and ignored.

Parameter precedence

Synchronous semantics

The call blocks until the image is done (up to 180 seconds, then 504). To keep waits bounded, each account may hold at most 2 pending illustration requests — a third returns 429 until one finishes. Generated images are private: they appear in your own gallery but never in the public feed.

Example

Errors (NAI shape)

Content policy is enforced server-side: prompts matching blocked categories are rejected with 400 before anything is queued, and gallery-visible content is subject to the same moderation as the web app.