1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 const axios = require('axios'); const fs = require('fs'); const path = require('path'); async function toB64(imgPath) { const data = fs.readFileSync(path.resolve(imgPath)); return Buffer.from(data).toString('base64'); } const api_key = "YOUR API-KEY"; const url = ""; const data = { "image": "toB64('')", "samples": 1, "prompt": "steampunk underwater helmet, dark ocean background", "negative_prompt": "Disfigured, cartoon, blurry, nude", "scheduler": "UniPC", "num_inference_steps": 25, "guidance_scale": 7.5, "strength": 1, "seed": 85497675147333, "base64": false }; (async function() { try { const response = await, data, { headers: { 'x-api-key': api_key } }); console.log(; } catch (error) { console.error('Error:',; } })();
HTTP Response Codes
200 - OKImage Generated
401 - UnauthorizedUser authentication failed
404 - Not FoundThe requested URL does not exist
405 - Method Not AllowedThe requested HTTP method is not allowed
406 - Not AcceptableNot enough credits
500 - Server ErrorServer had some issue with processing


imageimage *

Input Image

samplesint ( default: 1 ) Affects Pricing

Number of samples to generate.

min : 1,

max : 4

promptstr *

Prompt to render

negative_promptstr ( default: None )

Prompts to exclude, eg. 'bad anatomy, bad hands, missing fingers'

schedulerenum:str ( default: UniPC )

Type of scheduler.

Allowed values:

num_inference_stepsint ( default: 20 ) Affects Pricing

Number of denoising steps.

min : 20,

max : 100

guidance_scalefloat ( default: 7.5 )

Scale for classifier-free guidance

min : 0.1,

max : 25

strengthfloat ( default: 1 )

How much to transform the reference image

min : 0.1,

max : 1

seedint ( default: -1 )

Seed for image generation.

base64boolean ( default: 1 )

Base64 encoding of the output image.

To keep track of your credit usage, you can inspect the response headers of each API call. The x-remaining-credits property will indicate the number of remaining credits in your account. Ensure you monitor this value to avoid any disruptions in your API usage.

ControlNet Scribble

ControlNet Scribble model, revolutionizes image generation through manual annotations. This innovative technique empowers users to directly influence the generation process by simply scribbling or marking desired modifications on the image, bridging the gap between user intent and AI capabilities.

At the heart of ControlNet Scribble lies a sophisticated mechanism that interprets user annotations as directives for image generation. By integrating these manual markings, the model comprehends and incorporates user preferences, ensuring that the generated output aligns closely with the user's vision.


  1. User-Directed Generation: Provides users with the autonomy to guide the image generation process through direct annotations.

  2. Fine-Grained Control: Offers unparalleled precision, allowing users to influence specific aspects of the generated image.

  3. Tailored Outputs: Ensures that the generated images resonate with user preferences, capturing the essence of their desired modifications.

Use Cases

  1. Customized Image Editing: Ideal for users who wish to make specific edits or modifications to their images.

  2. Artistic Creations: Artists can harness the scribble preprocessors to infuse hand-drawn authenticity into digital artworks.

  3. Interactive Design: Designers can iteratively shape their designs, making real-time adjustments through scribbles.

  4. Educational Tools: Can be integrated into learning platforms, allowing students to interactively engage with image-based content.

ControlNet Scribble License

ControlNet Scribble, in its commitment to ethical AI practices, has embraced the CreativeML OpenRAIL M license. This decision not only underscores the model's dedication to responsible AI but also aligns it with the principles set forth by BigScience and the RAIL Initiative. Their collaborative work in AI ethics and responsibility has set the benchmark for licenses like the OpenRAIL M.