# FLUX PuLID > ⚡️FLUX PuLID: FLUX-dev based Pure and Lightning ID Customization via Contrastive Alignment🎭 - **Provider**: replicate - **Model ID**: bytedance/flux-pulid - **Category**: face_image_generation - **Credits**: 47 per request - **Pricing Type**: input_based ## 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 - `true_cfg` (number, optional): Set the Classifier-Free Guidance (CFG) scale. 1.0 uses standard CFG, while values >1.0 enable True CFG for more precise control over generation. Higher values increase adherence to the prompt at the cost of image quality. (Default: `1`; Range: min: 1, max: 10) - `num_outputs` (integer, optional): Set the number of images to generate (1-4) (Default: `1`; Range: min: 1, max: 4) - `seed` (integer, optional): Set a random seed for generation (leave blank or -1 for random) - `main_face_image` (string, **required**): Upload an ID image for face generation - `max_sequence_length` (integer, optional): Set the max sequence length for prompt (T5), smaller is faster (128-512) (Default: `128`; Range: min: 128, max: 512) - `output_quality` (integer, optional): Set the quality of the output image for jpg and webp (1-100) (Default: `80`; Range: min: 1, max: 100) - `num_steps` (integer, optional): Set the number of denoising steps (1-20) (Default: `20`; Range: min: 1, max: 20) - `start_step` (integer, optional): Set the timestep to start inserting ID (0-4 recommended, 0 for highest fidelity, 4 for more editability) (Default: `0`; Range: min: 0, max: 10) - `id_weight` (number, optional): Set the weight of the ID image influence (0.0-3.0) (Default: `1`; Range: min: 0, max: 3) - `output_format` (string, optional): Choose the format of the output image (Default: `webp`; Options: `png`, `jpg`, `webp`) - `negative_prompt` (string, optional): Enter a negative prompt to specify what to avoid in the image (Default: `bad quality, worst quality, text, signature, watermark, extra limbs, low resolution, partially rendered objects, deformed or partially rendered eyes, deformed, deformed eyeballs, cross-eyed, blurry`) - `guidance_scale` (number, optional): Set the guidance scale for text prompt influence (1.0-10.0) (Default: `4`; Range: min: 1, max: 10) - `width` (integer, optional): Set the width of the generated image (256-1536 pixels) (Default: `896`; Range: min: 256, max: 1536) - `prompt` (string, optional): Enter a text prompt to guide image generation (Default: `portrait, color, cinematic`) - `height` (integer, optional): Set the height of the generated image (256-1536 pixels) (Default: `1152`; Range: min: 256, max: 1536) ## Example Request ```json { "model": "bytedance/flux-pulid", "input": { "true_cfg": 1, "num_outputs": 4, "main_face_image": "https://replicate.delivery/pbxt/MayZhLThspqLqRhirB8VEjqbEX5B0PWqjd9xe3PkTv2wLMcr/woman.png", "max_sequence_length": 128, "output_quality": 80, "num_steps": 20, "start_step": 4, "id_weight": 1, "output_format": "webp", "negative_prompt": "bad quality, worst quality, text, signature, watermark, extra limbs", "guidance_scale": 4, "width": 896, "prompt": "a woman holding sign with glowing green text \"PuLID for FLUX\"", "height": 1152 } } ``` ## 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 bytedance, pulid, flux, identity-preserving, face-generation, avatar ## Documentation https://replicate.com/bytedance/flux-pulid