# PuLID > 📖 PuLID: Pure and Lightning ID Customization via Contrastive Alignment - **Provider**: replicate - **Model ID**: bytedance/pulid - **Category**: face_image_generation - **Credits**: 6 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 - `mix_identities` (boolean, optional): ID Mix (if you want to mix two ID image, please turn this on, otherwise, turn this off) (Default: `False`) - `generation_mode` (string, optional): mode (Default: `fidelity`; Options: `fidelity`, `extremely style`) - `seed` (integer, optional): Random seed. Leave blank to randomize the seed - `main_face_image` (string, **required**): ID image (main) - `auxiliary_face_image3` (string, optional): Additional ID image (auxiliary) - `auxiliary_face_image2` (string, optional): Additional ID image (auxiliary) - `image_width` (integer, optional): Width (Default: `768`; Range: min: 512, max: 2024) - `output_quality` (integer, optional): Quality of the output images, from 0 to 100. 100 is best quality, 0 is lowest quality. (Default: `80`; Range: min: 0, max: 100) - `num_steps` (integer, optional): Steps (Default: `4`; Range: min: 1, max: 100) - `image_height` (integer, optional): Height (Default: `1024`; Range: min: 512, max: 2024) - `output_format` (string, optional): Format of the output images (Default: `webp`; Options: `webp`, `jpg`, `png`) - `negative_prompt` (string, optional): Negative Prompt (Default: `flaws in the eyes, flaws in the face, flaws, lowres, non-HDRi, low quality, worst quality,artifacts noise, text, watermark, glitch, deformed, mutated, ugly, disfigured, hands, low resolution, partially rendered objects, deformed or partially rendered eyes, deformed, deformed eyeballs, cross-eyed,blurry`) - `auxiliary_face_image1` (string, optional): Additional ID image (auxiliary) - `identity_scale` (number, optional): ID scale (Default: `0.8`; Range: min: 0, max: 5) - `prompt` (string, optional): Prompt (Default: `portrait,color,cinematic,in garden,soft light,detailed face`) - `cfg_scale` (number, optional): CFG, recommend value range [1, 1.5], 1 will be faster (Default: `1.2`; Range: min: 1, max: 1.5) - `num_samples` (integer, optional): Num samples (Default: `4`; Range: min: 1, max: 8) ## Example Request ```json { "model": "bytedance/pulid", "input": { "mix_identities": false, "generation_mode": "fidelity", "main_face_image": "https://replicate.delivery/pbxt/Kr6iendsvYS0F3MLmwRZ8q07XIMEJdemnQI3Cmq9nNrauJbq/zcy.webp", "image_width": 768, "output_quality": 80, "num_steps": 4, "image_height": 1024, "output_format": "webp", "negative_prompt": "flaws in the eyes, flaws in the face, flaws, lowres, non-HDRi, low quality, worst quality,artifacts noise, text, watermark, glitch, deformed, mutated, ugly, disfigured, hands, low resolution, partially rendered objects, deformed or partially rendered eyes, deformed, deformed eyeballs, cross-eyed,blurry", "identity_scale": 0.8, "prompt": "portrait, impressionist painting, loose brushwork, vibrant color, light and shadow play", "cfg_scale": 1.2, "num_samples": 4 } } ``` ## 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, identity-preserving, face-generation, avatar, sdxl ## Documentation https://replicate.com/bytedance/pulid