# Change Haircut > Quickly change someone's hair style and hair color, powered by FLUX.1 Kontext [pro] - **Provider**: replicate - **Model ID**: flux-kontext-apps/change-haircut - **Category**: face_image_generation - **Credits**: 93 per request - **Pricing Type**: fixed ## API Endpoint Base URL: https://api.core.today/v1 ### Create Prediction POST /predictions ### Get Status GET /predictions/{job_id} ### Cancel DELETE /predictions/{job_id} ## Authentication Header: `X-API-Key: YOUR_API_KEY` ## Input Parameters - `output_format` (string, optional): Output format for the generated image (Default: `png`; Options: `jpg`, `png`) - `hair_color` (string, optional): The color of the person's hair (Default: `No change`; Options: `No change`, `Random`, `Blonde`, `Brunette`, `Black`, `Dark Brown`, `Medium Brown`, `Light Brown`, `Auburn`, `Copper`, `Red`, `Strawberry Blonde`, `Platinum Blonde`, `Silver`, `White`, `Blue`, `Purple`, `Pink`, `Green`, `Blue-Black`, `Golden Blonde`, `Honey Blonde`, `Caramel`, `Chestnut`, `Mahogany`, `Burgundy`, `Jet Black`, `Ash Brown`, `Ash Blonde`, `Titanium`, `Rose Gold`) - `input_image` (string, **required**): Image of the person's haircut you want to edit. Must be jpeg, png, gif, or webp. - `aspect_ratio` (string, optional): Aspect ratio of the generated image. Use 'match_input_image' to match the aspect ratio of the input image. (Default: `match_input_image`; Options: `match_input_image`, `1:1`, `16:9`, `9:16`, `4:3`, `3:4`, `3:2`, `2:3`, `4:5`, `5:4`, `21:9`, `9:21`, `2:1`, `1:2`) - `seed` (integer, optional): Random seed. Set for reproducible generation - `gender` (string, optional): The gender of the person (Default: `none`; Options: `none`, `male`, `female`) - `safety_tolerance` (integer, optional): Safety tolerance, 0 is most strict and 2 is most permissive. 2 is currently the maximum allowed. (Default: `2`; Range: min: 0, max: 2) - `haircut` (string, optional): The haircut to give them (Default: `No change`; Options: `No change`, `Random`, `Straight`, `Wavy`, `Curly`, `Bob`, `Pixie Cut`, `Layered`, `Messy Bun`, `High Ponytail`, `Low Ponytail`, `Braided Ponytail`, `French Braid`, `Dutch Braid`, `Fishtail Braid`, `Space Buns`, `Top Knot`, `Undercut`, `Mohawk`, `Crew Cut`, `Faux Hawk`, `Slicked Back`, `Side-Parted`, `Center-Parted`, `Blunt Bangs`, `Side-Swept Bangs`, `Shag`, `Lob`, `Angled Bob`, `A-Line Bob`, `Asymmetrical Bob`, `Graduated Bob`, `Inverted Bob`, `Layered Shag`, `Choppy Layers`, `Razor Cut`, `Perm`, `Ombré`, `Straightened`, `Soft Waves`, `Glamorous Waves`, `Hollywood Waves`, `Finger Waves`, `Tousled`, `Feathered`, `Pageboy`, `Pigtails`, `Pin Curls`, `Rollerset`, `Twist Out`, `Bantu Knots`, `Dreadlocks`, `Cornrows`, `Box Braids`, `Crochet Braids`, `Double Dutch Braids`, `French Fishtail Braid`, `Waterfall Braid`, `Rope Braid`, `Heart Braid`, `Halo Braid`, `Crown Braid`, `Braided Crown`, `Bubble Braid`, `Bubble Ponytail`, `Ballerina Braids`, `Milkmaid Braids`, `Bohemian Braids`, `Flat Twist`, `Crown Twist`, `Twisted Bun`, `Twisted Half-Updo`, `Twist and Pin Updo`, `Chignon`, `Simple Chignon`, `Messy Chignon`, `French Twist`, `French Twist Updo`, `French Roll`, `Updo`, `Messy Updo`, `Knotted Updo`, `Ballerina Bun`, `Banana Clip Updo`, `Beehive`, `Bouffant`, `Hair Bow`, `Half-Up Top Knot`, `Half-Up, Half-Down`, `Messy Bun with a Headband`, `Messy Bun with a Scarf`, `Messy Fishtail Braid`, `Sideswept Pixie`, `Mohawk Fade`, `Zig-Zag Part`, `Victory Rolls`) ## Example Request ```json { "model": "flux-kontext-apps/change-haircut", "input": { "input_image": "https://replicate.delivery/pbxt/N5o15ynZVT5jiV825Y4DdB1sBV0xR3kdGq6Wf44dY98brb7o/replicate-prediction-f2d25rg6gnrma0cq257vdw2n4c.png", "aspect_ratio": "match_input_image", "haircut": "Random", "gender": "none", "hair_color": "Random" } } ``` ## Response Format ```json { "job_id": "abc123", "status": "pending", "provider": "replicate", "model": "black-forest-labs/flux-schnell", "created_at": "2026-01-01T00:00:00Z", "result": null, "error": null } ``` Status values: `pending`, `processing`, `completed`, `failed`, `cancelled` ## Usage Flow 1. POST /predictions with model and input → receive job_id 2. Poll GET /predictions/{job_id} until status is `completed` or `failed` 3. Result contains output URL(s) or data ## Output Type url ## Tags flux-kontext, hairstyle, hair-color, face-editing, virtual-try-on ## Documentation https://replicate.com/flux-kontext-apps/change-haircut