Introduction
Head Swap remplace la tête entière de la personne de l’image cible par celle d’une photo de référence. Visage, coiffure, couleur des cheveux et silhouette du crâne sont transférés ; le corps, la tenue, la pose, la lumière et l’arrière-plan de la cible restent tels quels.
La requête se compose de deux URL d’image et d’un seed facultatif : image_url est le corps conservé et reference_image_url fournit la tête. Il n’y a ni prompt, ni masque, ni réglage d’intensité, et chaque requête renvoie une image.
Fonctionnalités et points forts
Placer la tête complète d’un personnage dans un plan existant
Head Swap change plus que l’identité du visage : c’est la bonne étendue quand les cheveux, leur couleur et la silhouette de la tête du nouveau personnage doivent l’accompagner. Cela le rend utile pour changer de personnage, pour des concepts de costume et pour la continuité, quand la coiffure de la cible ne doit pas rester.
La transition du cou sert de test de validation
Choisissez des sources avec un angle de prise de vue et une direction de lumière compatibles, et un cou visible. Vérifiez en taille réelle l’implantation des cheveux, les oreilles, la mâchoire, la jonction du cou et la continuité des ombres avant de valider un résultat : ces frontières montrent si les deux images vont vraiment ensemble.
Partir d’une paire d’images maîtrisée
Commencez avec une seule personne nette dans chaque image et évitez les flous importants, les masquages et les profils extrêmes. Quand les cheveux et la silhouette propres à la cible sont essentiels au plan, choisissez Face Swap plutôt que de forcer un échange de tête.
Paramètres de requête
| Paramètre | Obligatoire | Description |
|---|---|---|
image_url | Oui | L’image que l’on modifie. Son corps, sa tenue, sa pose, son éclairage et son arrière-plan sont préservés ; tout ce qui est au-dessus du cou est remplacé. 1 caractères minimum |
reference_image_url | Oui | L’image qui fournit la tête entière, sa forme, sa coiffure et sa couleur de cheveux comprises. 1 caractères minimum |
seed | Non | Réutilisez une seed pour comparer deux appels sur la même paire d’images à partir d’un tirage identique ; laissez-la vide ou à 0 pour un tirage aléatoire à chaque fois. |
Tarification
$0.013 / image
Cas d’utilisation
Remplacer toute la tête, pas seulement le visage
Utilisez ce point de terminaison quand la coiffure, la couleur des cheveux et la silhouette de la tête de la nouvelle personne doivent arriver avec elle. Vérifiez en taille réelle l’implantation des cheveux, les oreilles et la jonction du cou avant de valider le résultat ; si les cheveux de la cible font partie du plan, Face Swap est l’outil le plus ciblé.
Changer la tête d’un plan de corps qui vous plaît déjà
Quand la tenue, la pose et la lumière d’une image fonctionnent déjà, changer la tête coûte moins cher et reste plus prévisible que régénérer toute l’image en espérant que la composition survive.
Plans de costume et de cosplay
Placez la tête et la coiffure d’un personnage sur un corps qui porte le costume que vous avez généré. L’uniforme de soubrette, la pose et le décor de café restent exactement tels quels, et le travail sur la tenue survit au passage.
Toute scène avec un visage dont vous avez le consentement
Placez une tête que vous êtes autorisé à utiliser sur des images que vous avez produites vous-même, quel que soit leur contenu. Le point de terminaison ne traite pas ce contenu différemment : c’est l’exigence de consentement des limites ci-dessous qui s’applique, et ce n’est pas une formalité.
Guide de prompt et conseils pratiques
Vérifier que vous avez les droits sur les deux personnes
Les deux images représentent une personne, et il vous faut une autorisation pour la tête que vous déplacez comme pour l’image dans laquelle vous la placez. Conservez l’autorisation avec la fiche du travail avant de commencer toute intégration.
Accorder les angles, puis envoyer la paire
image_url est le corps conservé ; reference_image_url fournit la tête. Un éditeur généraliste aurait besoin d’une consigne comme : « Head swap: replace the entire head of the person in the first image — face, hairstyle and hair colour — with the head from the second image, keeping the first image's body, maid outfit, pose, cafe background, lighting and colour grade unchanged. Match the neck seam, skin tone and lighting direction so the result reads as one photograph. » Ici, il n’y a aucun champ de prompt.
Vérifier le résultat avant d’itérer
Le point faible, c’est la jonction du cou : une cible dont le cou est caché par un col montant, une écharpe ou des cheveux, ou dont la tête est inclinée bien autrement que sur la référence, donne une jointure visible. Accordez la direction de la lumière et le teint entre les deux sources et préférez des angles de tête proches. Les deux images doivent montrer une tête bien visible, plutôt de face, bien éclairée et d’une taille suffisante ; sur une photo de groupe, le point de terminaison ne peut pas savoir quelle personne vous visez. Si la coiffure de la cible doit rester, utilisez Face Swap : aucun paramètre ici ne la conserve. Il n’y a ni prompt, ni masque, ni réglage d’intensité ; un mauvais résultat se corrige avec une autre paire d’images.
Démarrage rapide de l’API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "spicyapi/head-swap-v1/edit",
"input": {
"image_url": "https://example.com/reference.png",
"reference_image_url": "https://example.com/reference.png"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
La référence API détaille l’authentification, le schéma complet, le polling et la gestion des erreurs.









