# ControlNet Scribble - Core.Today AI API > The classic sketch-to-image model (38M+ runs) — turn any scribble or line drawing into a detailed image guided by your prompt. Draw the composition, describe the content. - **Provider**: ControlNet - **Model ID**: jagilley/controlnet-scribble - **Category**: Image Generation - **Credits**: 120 per run (num_samples '4' costs 480) - **Speed**: Medium - **Quality**: High ## Features - Sketch controls composition, prompt controls content - 38M+ runs — the scribble standard - 1 or 4 samples per run - Additional prompt / negative prompt refinement ## Use Cases - Concept art from rough sketches - Whiteboard drawing to illustration - Kid-drawing gift art - Layout-controlled product shots - Storyboard visualization ## API Endpoint Base URL: https://api.core.today/v1 Create Prediction: POST /predictions Get Status: GET /predictions/{job_id} ## Authentication Header: X-API-Key: YOUR_API_KEY ## Input Parameters ### Required - **prompt**: string - What the final image should be - **image**: string - Scribble/line drawing input ### Optional - **num_samples**: string (default: 1) - Number of images ('1' or '4'). '4' is billed 4x Options: 1, 4 - **image_resolution**: string (default: 512) - Output resolution Options: 256, 512, 768 - **ddim_steps**: integer (default: 20) - Denoising steps - **scale**: number (default: 9) - Prompt guidance scale (0.1-30) - **seed**: integer - Random seed - **eta**: number (default: 0) - eta (DDIM) - **a_prompt**: string (default: best quality, extremely detailed) - Added quality prompt - **n_prompt**: string (default: longbody, lowres, bad anatomy, bad hands, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality) - Negative prompt ## Examples ### Sketch to Illustration Turn a rough house sketch into a detailed illustration ```json { "model": "jagilley/controlnet-scribble", "input": { "image": "https://example.com/house-sketch.png", "prompt": "a cozy cottage in a forest, warm sunset light, storybook illustration", "image_resolution": "512" } } ``` ## Response Format ```json { "job_id": "abc123", "status": "pending | processing | completed | failed", "result": "URL or data (when completed)" } ``` ## Usage Flow 1. POST /predictions with model and input -> receive job_id 2. GET /predictions/{job_id} -> poll until status is completed or failed 3. Result contains output URL(s) ## Tips - Bold, clear lines in the sketch give the strongest composition control - num_samples '4' explores variations quickly (billed 4x) - For sketch editing with frontier quality, also try nano-banana or FLUX Kontext with the sketch attached ## Documentation https://replicate.com/jagilley/controlnet-scribble