Documentation de l'API

Intégrez les fonctionnalités d'undress, de face swap et d'animation dans votre application.

Clés API

Connectez-vous pour créer et gérer vos clés API.

Se connecter

Autorisation

Transmettez votre clé API dans l’en-tête Authorization de chaque requête.

Authorization: Bearer <your_api_key>

API Undress

L’API Undress génère une image déshabillée — ou une vidéo animée — à partir d’une photo source. Chaque requête nécessite l’en-tête Authorization: Bearer <your_api_key> et un corps JSON.

Quatre styles, regroupés ici en sous-sections :

Style Sortie Crédits Endpoint
Standard Image fixe 1 POST /api/v1/undress
Premium v2 Image fixe 3 POST /api/v1/undress
Premium v3 Image fixe de plus haute qualité 5 POST /api/v3/undress
Vidéo mp4 animé 7 initial · 5 en continuation POST /api/v1/undress

standard, premium_v2 et video partagent POST /api/v1/undress — choisissez via le champ style, puis interrogez GET /api/v1/undress/:id. source_image est toujours une image encodée en base64 au format jpeg, png ou webp, jusqu’à 12 Mo. premium_v2 est le seul style où mask/automask affectent réellement le comportement ; pour les autres styles v1, le serveur auto-masque toujours.

Premium v3 possède son propre endpoint (POST /api/v3/undress) et cible toujours une personne explicitement sélectionnée, il nécessite donc un appel préalable à l’API d’Analyse des Personnes pour choisir la personne. Voir Premium v3 ci-dessous.

Standard

Style le moins cher — 1 crédit, une seule image fixe, masque généré par le serveur, aucun paramètre de personnalisation.

Créer un Undress

POST /api/v1/undress

Paramètre Type Requis Description
source_image string (base64) oui Image jpeg/png/webp encodée en base64, jusqu’à 12 Mo.
style string oui Doit être "standard".
curl -X POST https://deepstrip.com/api/v1/undress \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"source_image": "<base64_encoded_image>", "style": "standard"}'

Réponses :

201 {"id": "69d280ab-42c5-4f49-9881-51076afb1747"}

400 {"error": "no_credits"} — le compte n’a plus de crédits.

400 {"error": "invalid_params", "errors": ["Image is invalid"]} — échec de validation ; errors liste les raisons.

400 {"error": "internal_server_error"} — la requête a été rejetée comme anormale.

Obtenir le résultat d’Undress

GET /api/v1/undress/:id

Interrogez jusqu’à ce que status soit completed ou failed. result est l’URL de l’image.

curl https://deepstrip.com/api/v1/undress/<identifier> \
  -H "Authorization: Bearer <your_api_key>"

200 {"status": "pending"}

200 {"status": "completed", "result": "<result url>", "image": "<result url>"}image est un alias obsolète de result, conservé pour la rétrocompatibilité.

200 {"status": "failed", "details": "analysis_failed"} — l’entrée a été rejetée (p. ex. aucune personne détectée, sujet mineur). Ne pas réessayer avec la même entrée.

200 {"status": "failed", "details": "system_error"} — la génération elle-même a échoué. Réessai possible.

404 {"error": "NOT_FOUND"}

Premium v2

3 crédits, une seule image fixe. Masque fourni par l’utilisateur ou généré par le serveur, plus les paramètres de forme corporelle / poitrine / pilosité.

Créer un Undress

POST /api/v1/undress

Paramètre Type Requis Description
source_image string (base64) oui Image jpeg/png/webp encodée en base64, jusqu’à 12 Mo.
style string oui Doit être "premium_v2".
mask string (base64) quand automask n’est pas true png encodé en base64, jusqu’à 1 Mo. Blanc = zone à déshabiller, noir = conserver.
automask boolean optionnel true demande au serveur de générer le masque pour vous.
body_shape string optionnel fat, skinny, athletic ou old. Omettre pour normal.
boobs string optionnel small ou large. Omettre pour normal.
hair string optionnel hairy ou shaved. Omettre pour normal.

Avec masque automatique et personnalisation corporelle :

curl -X POST https://deepstrip.com/api/v1/undress \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"source_image": "<base64_encoded_image>", "style": "premium_v2", "automask": true, "body_shape": "athletic", "boobs": "large", "hair": "shaved"}'

Avec un masque fourni par l’utilisateur :

curl -X POST https://deepstrip.com/api/v1/undress \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"source_image": "<base64_encoded_image>", "mask": "<base64_encoded_mask_png>", "style": "premium_v2"}'

Réponses :

201 {"id": "69d280ab-42c5-4f49-9881-51076afb1747"}

400 {"error": "no_credits"}

400 {"error": "invalid_params", "errors": ["Image is invalid"]}

400 {"error": "internal_server_error"} — la requête a été rejetée comme anormale.

Obtenir le résultat d’Undress

GET /api/v1/undress/:id — même structure de réponse que Standard.

Premium v3

Image fixe de plus haute qualité — 5 crédits. Contrairement aux autres styles, Premium v3 se trouve à un endpoint séparé (POST /api/v3/undress) et nécessite une étape préalable de détection des personnes.

Prérequis : appelez d’abord l’API d’Analyse des Personnes pour obtenir un person_id. Premium v3 cible toujours une personne explicitement sélectionnée — vous ne pouvez pas soumettre une photo sans choisir d’abord qui déshabiller.

Flux complet :

  1. POST /api/v1/persons/analyze avec {image_url} → recevez un id d’analyse.
  2. Interrogez GET /api/v1/persons/analyze/:id jusqu’à completed → recevez la liste des personnes avec leurs id.
  3. POST /api/v3/undress avec la même image_url et le person_id choisi → recevez un id d’undress.
  4. Interrogez GET /api/v3/undress/:id jusqu’à completed ou failed.

Pas de paramètres mask / automask / traits corporels — tout est dérivé de la personne sélectionnée.

Créer un Undress

POST /api/v3/undress

Paramètre Type Requis Description
image_url string oui URL HTTPS d’une image jpeg, png ou webp, jusqu’à 12 Mo. Doit être identique octet à octet à l’URL utilisée dans l’analyse des personnes.
person_id string oui id de la personne à déshabiller, issu du tableau persons[] d’une analyse completed appartenant à la même clé API.
person_gender string optionnel Remplace le genre détecté pour cette personne. Accepte "male" ou "female" (insensible à la casse). Utilisez ceci quand le détecteur se trompe et que vous voulez forcer le workflow opposé.
body_shape string optionnel, femmes uniquement Force la silhouette. L’une de "as_in_photo" (l’IA conserve la silhouette d’origine, valeur par défaut), "fat", "skinny", "athletic".
boobs string optionnel, femmes uniquement Force la taille de poitrine. L’une de "as_in_photo" (l’IA décide, valeur par défaut), "small", "large", "huge".
curl -X POST https://deepstrip.com/api/v3/undress \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"image_url": "https://example.com/photo.jpg", "person_id": "6f2a13e4-5b52-4c39-9a7d-29e80a9c1a62"}'

Réponses :

201 {"id": "69d280ab-42c5-4f49-9881-51076afb1747"}

400 {"error": "invalid_params", "errors": ["image_url is required"]}image_url / person_id manquant, person_gender invalide, ou validation du modèle échouée.

400 {"error": "invalid_person_id"}person_id inconnu, expiré (> 3 heures), appartient à une autre clé API, ou l’image_url fournie ne correspond pas à celle analysée pour cette personne.

400 {"error": "image_fetch_failed"} — le serveur n’a pas pu télécharger l’image à image_url (non HTTPS, pas de 2xx, content-type interdit, > 12 Mo, timeout ou trop de redirections).

400 {"error": "under_age"} — l’âge estimé de la personne choisie est inférieur à 18. Ne réessayez pas avec cette personne.

400 {"error": "no_credits"} — le compte n’a plus de crédits.

Régénérer (gratuit, une fois par undress)

POST /api/v3/undress/:id/regenerate

Lorsqu’un résultat n’est pas satisfaisant, vous pouvez le régénérer gratuitement avec une autre graine aléatoire. Même image source, même personne, aucun crédit consommé. Une régénération gratuite par undress parent, uniquement dans les 24 heures suivant sa création. Le person_gender du parent (le cas échéant) est hérité.

curl -X POST https://deepstrip.com/api/v3/undress/<parent_id>/regenerate \
  -H "Authorization: Bearer <your_api_key>"

Réponses :

201 {"id": "<new_undress_id>"} — interrogez GET /api/v3/undress/:id avec le nouvel id.

400 {"error": "already_regenerated"} — la régénération gratuite a déjà été utilisée pour ce parent.

400 {"error": "parent_expired"} — l’undress parent a plus de 24 heures.

400 {"error": "parent_not_completed"} — l’undress parent n’est pas encore terminé ; attendez completed avant de régénérer.

400 {"error": "not_v3"} — seuls les undresses premium v3 peuvent être régénérés via ce endpoint.

404 {"error": "NOT_FOUND"} — l’id parent est inconnu ou a été créé par une autre clé API.

Obtenir le résultat d’Undress

GET /api/v3/undress/:id

Même structure de réponse que GET /api/v1/undress/:id.

curl https://deepstrip.com/api/v3/undress/<id> \
  -H "Authorization: Bearer <your_api_key>"

200 {"status": "pending"}

200 {"status": "completed", "result": "<result url>", "image": "<result url>"}image est un alias obsolète de result.

200 {"status": "failed", "details": "analysis_failed"} — entrée rejetée. Ne réessayez pas avec la même entrée.

200 {"status": "failed", "details": "system_error"} — la génération elle-même a échoué. Réessai possible.

404 {"error": "NOT_FOUND"}

Vidéo

Sortie mp4 animée — 7 crédits pour la vidéo initiale, 5 crédits pour continuer avec la couche de vêtement suivante. Toujours auto-masqué, aucun paramètre de personnalisation.

Créer un Undress

POST /api/v1/undress

Paramètre Type Requis Description
source_image string (base64) oui — sauf avec parent Image jpeg/png/webp encodée en base64, jusqu’à 12 Mo.
style string oui — sauf avec parent Doit être "video".
parent string (uuid) optionnel Id d’un undress video précédent pour continuer avec la couche de vêtement suivante. Le style et la source sont hérités ; le parent doit avoir moins de 24 heures. Coûte 5 crédits.

Undress animé initial — 7 crédits :

curl -X POST https://deepstrip.com/api/v1/undress \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"source_image": "<base64_encoded_image>", "style": "video"}'

Continuer une vidéo précédente — 5 crédits (style et source hérités du parent) :

curl -X POST https://deepstrip.com/api/v1/undress \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"parent": "<id-of-previous-video-undress>"}'

Réponses :

201 {"id": "69d280ab-42c5-4f49-9881-51076afb1747"}

400 {"error": "no_credits"}

400 {"error": "invalid_params", "errors": ["Image is invalid"]}

400 {"error": "parent_expired"} — l’undress parent a plus de 24 heures.

400 {"error": "too_many_retries"} — aucune régénération gratuite restante pour ce parent.

400 {"error": "internal_server_error"} — la requête a été rejetée comme anormale.

Obtenir le résultat d’Undress

GET /api/v1/undress/:id — même structure de réponse que Standard ; result est une URL mp4 au lieu d’une URL d’image.

Face Swap sur Résultat Vidéo

S’applique uniquement aux undresses video terminés. Exécute un face swap gratuit sur le résultat animé pour améliorer la cohérence du visage ; prend généralement 60 à 120 secondes.

POST /api/v1/undress_face_swap_videos

curl -X POST https://deepstrip.com/api/v1/undress_face_swap_videos \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"undress_id": "<id-of-the-video-undress>"}'

201

{
  "id": "69d280ab-42c5-4f49-9881-51076afb1747",
  "face_swap_video_id": "35b4a4a8-e5e6-4613-b1a3-d538b8698d06",
  "undress_id": "69968efe-556d-4805-87bd-1556a49f4e37",
  "undress_result_id": null
}

404 {"error": "NOT_FOUND"} — undress introuvable, n’appartient pas à l’appelant ou n’est pas de style video.

GET /api/v1/undress_face_swap_videos/:id

curl https://deepstrip.com/api/v1/undress_face_swap_videos/<identifier> \
  -H "Authorization: Bearer <your_api_key>"

200 Pendant le traitement, undress_result_id est null. Une fois terminé, undress_result_id pointe vers un nouvel undress — récupérez sa vidéo via GET /api/v1/undress/:id :

{
  "id": "69d280ab-42c5-4f49-9881-51076afb1747",
  "face_swap_video_id": "35b4a4a8-e5e6-4613-b1a3-d538b8698d06",
  "undress_id": "69968efe-556d-4805-87bd-1556a49f4e37",
  "undress_result_id": "616c2b43-c432-416d-8ecb-470a670fbdee"
}

404 {"error": "NOT_FOUND"}

API Analyse des Personnes

Détecte les personnes sur une image afin de pouvoir en déshabiller une en particulier avec Premium v3. Les analyses sont créées de manière asynchrone et mises en cache pendant 3 heures. Le endpoint est limité à 15 requêtes par minute par clé API.

Vous n’envoyez jamais les octets de l’image — fournissez une URL HTTPS ; le service de détection la récupère lui-même.

Créer une analyse

POST /api/v1/persons/analyze

Corps de la requête

Paramètre Type Obligatoire Description
image_url string oui URL HTTPS d’une image jpeg, png ou webp. Même URL que vous passerez ensuite à POST /api/v3/undress — elle fait partie de la validation du person_id.
curl -X POST https://deepstrip.com/api/v1/persons/analyze \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"image_url": "https://example.com/photo.jpg"}'

Réponses

201 {"id": "a1e0b0c8-..."} — interrogez GET /api/v1/persons/analyze/:id pour le résultat.

400 {"error": "invalid_params", "errors": ["image_url must use HTTPS"]} — URL manquante, non HTTPS ou malformée.

429 {"error": "rate_limited", "retry_after": 37} — plus de 15 analyses dans la minute courante pour cette clé API. retry_after est le nombre de secondes avant la prochaine fenêtre.


Obtenir le résultat d’une analyse

GET /api/v1/persons/analyze/:id

Interrogez jusqu’à ce que status soit completed ou failed. L’entrée de cache expire 3 heures après la création ; ensuite GET renvoie 404.

curl https://deepstrip.com/api/v1/persons/analyze/<id> \
  -H "Authorization: Bearer <your_api_key>"

Réponses

200 {"status": "pending"} — le détecteur travaille encore.

200 Terminé, avec des personnes :

{
  "status": "completed",
  "persons": [
    {
      "id": "6f2a13e4-5b52-4c39-9a7d-29e80a9c1a62",
      "bbox": [112.0, 80.0, 430.0, 920.0],
      "age": 27.3,
      "gender": "female",
      "score": 0.94
    }
  ]
}

Les personnes dont l’âge ou le genre n’ont pas pu être reconnus sont filtrées. Passez persons[].id comme person_id à POST /api/v3/undress.

200 {"status": "completed", "persons": []} — le détecteur a bien tourné mais n’a pas trouvé de personne reconnaissable. Ce n’est pas un échec ; choisissez une autre image.

200 {"status": "failed", "details": "detector_failed"} — le détecteur n’a pas pu traiter l’URL (inaccessible, image invalide, erreur de service). Réessayez plus tard ou avec une autre URL.

404 {"error": "NOT_FOUND"} — id inconnu, cache expiré (> 3 heures) ou analyse créée par une autre clé API.


API FaceSwap

Créer un FaceSwap

POST /api/v1/face_swaps

Accepte l’image du visage et l’image cible.

Les images du visage et de la cible doivent être des images encodées en base64 au format jpeg, webp ou png.

curl -X POST https://deepstrip.com/api/v1/face_swaps \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"image": "<base64_encoded_image>", "face": "<base64_encoded_face>"}'

Réponses :

201 {"id": "69d280ab-42c5-4f49-9881-51076afb1747"}

400 {"error": "no_credits"}

400 {"error": "invalid_params", "errors": ["Image is invalid"]}


Obtenir le résultat du FaceSwap

GET /api/v1/face_swaps/:id

Retourne l’image générée ou le statut de la génération.

curl https://deepstrip.com/api/v1/face_swaps/<identifier> \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json"

Réponses :

200 {"status": "completed", "image": "<result image url>"}

200 {"status": "pending"}

200 {"status": "failed"}

404 {"error": "NOT_FOUND"}

API Face Swap Videos


Analyser une vidéo

POST /api/v1/face_swap_videos/analyze

Calculer le prix du traitement d’une vidéo en fonction de sa durée.

curl -X POST https://deepstrip.com/api/v1/face_swap_videos/analyze \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"video_url": "https://example.com/video.mp4", "preview": false, "version": "v2"}'

Réponses :

200 {"price": 4.0, "duration": 20}

400 {"error": "INVALID_VIDEO_URL", "details": ["must be a valid URL", "must use HTTPS"]}

422 les dimensions de la vidéo ne doivent pas dépasser 1920x1080 — {"error": "ANALYSIS_FAILED", "details": "too_large"}


Créer un Face Swap Video

POST /api/v1/face_swap_videos

Créer une nouvelle tâche de face swap vidéo en utilisant une URL.

curl -X POST https://deepstrip.com/api/v1/face_swap_videos \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"video_url": "https://example.com/video.mp4", "face_url": "https://example.com/face.jpg", "preview": false, "version": "v2"}'

Réponses :

201 {"id": "69d280ab-42c5-4f49-9881-51076afb1747", "status": "created", "message": "Face swap video creation started"}

400 {"error": "VALIDATION_ERROR", "details": ["Video is required"]}


Obtenir le statut du Face Swap Video

GET /api/v1/face_swap_videos/:id

Vérifier le statut d’une tâche de face swap vidéo et obtenir l’URL du résultat une fois terminé.

curl https://deepstrip.com/api/v1/face_swap_videos/<identifier> \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json"

Réponses :

200 En cours de traitement

{
  "id": "69d280ab-42c5-4f49-9881-51076afb1747",
  "status": "processing",
  "progress": 45.5,
  "step": "working",
  "result_url": null,
  "error_details": null
}

200 Terminé

{
  "id": "69d280ab-42c5-4f49-9881-51076afb1747",
  "status": "completed",
  "progress": 100.0,
  "step": "uploading",
  "result_url": "https://assets.nodress.ai/videos/result.mp4",
  "error_details": null
}

404 {"error": "NOT_FOUND"}

API Animation Photo

L’API Animation Photo convertit des photos statiques en vidéos avec un mouvement fluide et naturel.

Créer une animation

POST /api/v1/animations

Accepte une image source et un identifiant de modèle pour créer une tâche d’animation.

L’image source doit être un URI de données encodé en base64 au format jpeg, png ou webp (par exemple, data:image/jpeg;base64,/9j/4AAQ...).

Modèles disponibles

Le paramètre template_id est requis et détermine le style de l’animation. preset_id est également accepté pour la rétrocompatibilité (obsolète).

GET /api/v1/animation_templates (également disponible à /api/v1/animation_presets, obsolète)

curl https://deepstrip.com/api/v1/animation_templates

Exemple de réponse :

[{"id": 1, "name": "Missionary POV", "name_de": "Missionarsstellung POV", "name_es": "Misionero POV", ..., "combo": false, "price": 7}, ...]

La réponse inclut des noms localisés pour toutes les langues prises en charge (en, de, es, pt, fr, ru, zh). Le champ name contient le nom en anglais. Chaque champ name_XX contient la traduction pour cette langue, avec un repli sur l’anglais si non défini.

Modèles actuels :

ID Name Combo Price (credits)
3 Reverse Cowgirl No 7
4 Face Sitting No 7
5 Breast Expansion No 7
6 Doggy Style No 7
8 Cumshot on the face No 7
9 Foot Show No 7
12 Pet Play No 7
13 Squirt No 7
30 Breast Play No 7
16 Breast Play Solo No 7
17 Spooning No 7
18 Deep Throat BBC No 7
19 Blowjob No 7
21 Double Blowjob No 7
7 Dildo Handjob No 7
24 Handjob No 7
26 Two-Hand Handjob No 7
29 Standing Doggy No 7
33 Sex Machine No 7
36 Pussy Fingering No 7
38 Doggy POV No 7
1 Missionary POV No 7
45 Missionary Side View No 7
28 Kissing No 7
46 Lesbian Kissing No 7
47 Gay Kissing No 7
48 Smoking No 7
49 Blowjob POV No 7
79 Ahegao No 7
55 Pregnant No 7
56 Deep Throat with Cumshot BBC Yes 14
57 Two Guys Handjob No 7
58 Rough Blowjob No 7
83 Kissing & Undressing Yes 14
75 Pussy Rubbing No 7
76 Pussy rubbing with creampie Yes 14
77 Riding the gear shift No 7
86 Gains weight quickly No 7
78 Continue Action No 7

Les modèles combo combinent deux styles d’animation et coûtent 14 crédits au lieu de 7.

Exemple de requête :

curl -X POST https://deepstrip.com/api/v1/animations \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"source_image": "<base64_encoded_image>", "template_id": 1}'

Réponses :

201 {"id": "69d280ab-42c5-4f49-9881-51076afb1747"}

400 {"error": "no_credits"}

400 {"error": "invalid_params", "errors": ["Input is invalid"]}

400 Analyse échouée — mineur détecté :

{"error": "analysis_failed", "error_details": {"code": "face.child", "underage_persons": [{"age": 17.6, "face": {"x1": 36, "x2": 99, "y1": 103, "y2": 176}, "body": {"x1": 1, "x2": 170, "y1": 72, "y2": 735}}]}}

400 Analyse échouée — aucun visage trouvé :

{"error": "analysis_failed", "error_details": {"code": "no_face_found"}}

Obtenir le résultat de l’animation

GET /api/v1/animations/:id

Retourne l’URL de la vidéo générée ou le statut de la génération.

curl https://deepstrip.com/api/v1/animations/<identifier> \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json"

Réponses :

200 {"status": "completed", "result": "<result video url>"}

200 {"status": "pending"}

200 {"status": "failed"} — erreur système ou échec inconnu

200 Échoué — mineur détecté :

{"status": "failed", "error_details": {"code": "face.child", "underage_persons": [{"age": 17.6, "face": {"x1": 36, "x2": 99, "y1": 103, "y2": 176}, "body": {"x1": 1, "x2": 170, "y1": 72, "y2": 735}}]}}

200 Échoué — aucun visage trouvé :

{"status": "failed", "error_details": {"code": "no_face_found"}}

404 {"error": "NOT_FOUND"}

Journal des modifications

Date Modification
29.04.2026 Ajout de "athletic" aux options body_shape en Premium v3 (POST /api/v3/undress).
24.04.2026 person_gender simplifié en Premium v3 : seuls "male" et "female" sont acceptés (les alias "man"/"woman" ne sont plus supportés). Champ interne gender_score retiré de la documentation de la réponse Persons Analysis.
24.04.2026 Documentation API réorganisée : Undress est désormais une section unique avec les sous-sections Standard, Premium v2, Premium v3, Vidéo. La description du Premium v3 inclut maintenant un lien explicite vers l’API d’Analyse des Personnes comme prérequis.
21.04.2026 Ajout de POST /api/v3/undress/:id/regenerate — une régénération gratuite par undress parent, valable 24 heures.
21.04.2026 Breaking : style premium_v3 retiré de POST /api/v1/undress ; Premium v3 se trouve désormais à POST /api/v3/undress et nécessite image_url + person_id. Ajout de POST /api/v1/persons/analyze + GET /api/v1/persons/analyze/:id (15 requêtes/min par clé API, cache de 3 heures).
20.04.2026 Prix de premium_v3 réduit de 10 crédits à 5 crédits
19.04.2026 Réécriture de la section API Undress ; correction de l’URL /api/v1/undress_face_swap_videos (pluriel), documentation du champ details sur failed, ajout de too_many_retries/parent_expired/internal_server_error, ajout de old aux options body_shape
07.04.2026 Premium v3 simplifié en un seul style premium_v3 à 2.0 MP, 10 crédits forfaitaires
01.04.2026 Ajout des styles Premium v3
28.03.2026 Ajout de error_details aux réponses de l’API d’animation (détection de mineur et visage non trouvé)
15.03.2026 Ajout des modèles d’animation combo (14 crédits)
24.02.2026 Renommage des presets d’animation en modèles d’animation ; /api/v1/animation_presets fonctionne toujours (obsolète)
03.02.2026 Ajout de noms localisés au point de terminaison des presets d’animation
02.02.2026 Ajout du point de terminaison de la liste des presets d’animation
01.02.2026 Mise à jour majeure de l’API Animation Photo
21.01.2026 Ajout de l’API Animation Photo
21.01.2026 Ajout des options body_shape, boobs, hair pour le style premium_v2
19.12.2025 Suppression du face swap photo basique
13.12.2025 Mise à jour de la documentation sur les vidéos d’undress
12.12.2025 Ajout de la possibilité de créer des vidéos d’undress
11.12.2025 Suppression des options obsolètes de la spécification OpenAPI
26.09.2025 Suppression des informations sur les styles d’undress non pris en charge
30.12.2024 Ajout d’un lien vers la version bêta de la documentation de l’API
27.12.2024 Ajout de l’API Face Swap Videos
10.12.2024 Ajout du champ version à l’API FaceSwap
25.10.2024 Ajout de l’API FaceSwap
18.10.2024 Ajout du style premium v2
21.09.2024 Ajout d’un lien vers la spécification OpenAPI
21.09.2024 Ajout d’informations sur la génération automatique du masque
16.09.2024 Ajout d’un lien vers la page de tarification
11.05.2024 Ajout d’un exemple d’utilisation avec curl
10.05.2024 Mise à jour de la documentation de l’API pour correspondre à la version actuelle