Documentacion de la API

Integra capacidades de desnudo, cambio de rostro y animacion en tu aplicacion.

Claves de API

Inicia sesion para crear y gestionar tus claves de API.

Iniciar sesion

Autorizacion

Incluye tu clave de API en el encabezado Authorization de cada solicitud.

Authorization: Bearer <your_api_key>

API de Undress

Crear Undress

POST /api/v1/undress

Acepta la imagen de origen, la mascara de imagen y uno de los estilos.

La imagen de origen debe estar codificada en base64 en formato jpeg, la mascara debe estar codificada en base64 en formato png. La mascara debe contener 2 colores: blanco para las regiones que deben ser desvestidas y negro para el resto de la imagen.

Estilos disponibles: standard premium premium_v2 video premium_v3

video es un estilo especial que genera un video de animacion de desnudo como resultado.

Premium v3

Premium v3 utiliza el ultimo modelo de IA a 2.0 MP de resolucion. La mascara se genera automaticamente. Solo necesitas proporcionar la imagen de origen. Cuesta 10 creditos.

Solicitud de ejemplo:

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_v3"}'

Opciones de Premium v2

Al usar premium_v2, puedes especificar opcionalmente opciones de personalizacion corporal:

Parametro Tipo Descripcion
body_shape string | null null (normal), fat, skinny, athletic
boobs string | null null (normal), small, large
hair string | null null (normal), hairy, shaved

Solicitud de ejemplo con opciones de premium_v2:

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>", "automask": true, "style": "premium_v2", "body_shape": "athletic", "boobs": "large", "hair": "shaved"}'

Solicitud de ejemplo:

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>", "style": "standard"}'

Solicitud de ejemplo con generacion automatica de mascara:

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>", "automask": true, "style": "standard"}'

Solicitud de ejemplo para generar Undress Animado:

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"}'

Para la generacion de video puedes enviar una solicitud para generar un video con el desnudo de la siguiente prenda usando el parametro parent, que debe ser igual al campo id de la respuesta del resultado anterior.

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

Respuestas:

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

400 {"error": "no_credits"}

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


Face Swap de Video de Undress Animado

POST /api/v1/undress_face_swap_video

Para el undress animado puedes ejecutar opcionalmente un cambio de rostro gratuito en el resultado para mejorar (generalmente) la consistencia del rostro. Normalmente tarda entre 60 y 120 segundos en completarse.

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

Respuestas:

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"}

Puedes verificar el estado del face swap de video usando el id proporcionado y el endpoint estandar de face swap de video para consultar el estado.

Cuando el face swap de video este completado, puedes consultar el estado del face swap de video de undress usando el siguiente endpoint para obtener el id del undress resultante y consultarlo usando el endpoint estandar de undress.

GET /api/v1/undress_face_swap_video/:id

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

Respuestas:

200

{
  "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"}


Obtener Resultado de Undress

GET /api/v1/undress/:id

Devuelve la imagen generada y la mascara generada o el estado de la generacion.

El parametro image esta obsoleto en favor de result.

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

Respuestas:

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

200 {"status": "pending"}

200 {"status": "failed"}

404 {"error": "NOT_FOUND"}

API de FaceSwap

Crear FaceSwap

POST /api/v1/face_swaps

Acepta la imagen del rostro y la imagen de destino.

Las imagenes del rostro y de destino deben estar codificadas en base64 en formato jpeg, webp o 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>"}'

Respuestas:

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

400 {"error": "no_credits"}

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


Obtener Resultado de FaceSwap

GET /api/v1/face_swaps/:id

Devuelve la imagen generada o el estado de la generacion.

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

Respuestas:

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

200 {"status": "pending"}

200 {"status": "failed"}

404 {"error": "NOT_FOUND"}

API de Face Swap de Videos

Requisito de pago La API de face swap de videos solo esta disponible para usuarios que hayan completado pagos de $100 o mas.

402 {"error": "PAYMENT_REQUIRED", "message": "Face swap video API requires a completed payment of $100 or more"}


Analizar Video

POST /api/v1/face_swap_videos/analyze

Calcula el precio para procesar un video segun su duracion.

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"}'

Respuestas:

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

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

422 las dimensiones del video no deben exceder 1920x1080 — {"error": "ANALYSIS_FAILED", "details": "too_large"}


Crear Face Swap de Video

POST /api/v1/face_swap_videos

Crea un nuevo trabajo de face swap de video usando una 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"}'

Respuestas:

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

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


Obtener Estado de Face Swap de Video

GET /api/v1/face_swap_videos/:id

Verifica el estado de un trabajo de face swap de video y obtiene la URL del resultado cuando este completado.

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

Respuestas:

200 Procesando

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

200 Completado

{
  "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 de Animar Foto

La API de Animar Foto convierte fotos estaticas en videos con movimiento suave y natural.

Crear Animacion

POST /api/v1/animations

Acepta una imagen de origen y un ID de plantilla para crear un trabajo de animacion.

La imagen de origen debe ser un URI de datos codificado en base64 en formato jpeg, png o webp (por ejemplo, data:image/jpeg;base64,/9j/4AAQ...).

Plantillas Disponibles

El parametro template_id es obligatorio y determina el estilo de animacion. preset_id tambien se acepta por compatibilidad con versiones anteriores (obsoleto).

GET /api/v1/animation_templates (tambien disponible en /api/v1/animation_presets, obsoleto)

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

Respuesta de ejemplo:

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

La respuesta incluye nombres localizados para todos los idiomas soportados (en, de, es, pt, fr, ru, zh). El campo name contiene el nombre en ingles. Cada campo name_XX contiene la traduccion para ese idioma, utilizando el ingles como valor predeterminado si no esta configurado.

Plantillas actuales:

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
73 Kissing & Undressing No 7
75 Pussy Rubbing No 7
76 Pussy rubbing with creampie Yes 14
77 Riding the gear shift No 7

Las plantillas combo combinan dos estilos de animacion y cuestan 14 creditos en lugar de 7.

Solicitud de ejemplo:

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}'

Respuestas:

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

400 {"error": "no_credits"}

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

400 Analisis fallido — menor detectado:

{"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 Analisis fallido — no se encontro rostro:

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

Obtener Resultado de Animacion

GET /api/v1/animations/:id

Devuelve la URL del video generado o el estado de la generacion.

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

Respuestas:

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

200 {"status": "pending"}

200 {"status": "failed"} — error del sistema o fallo desconocido

200 Fallido — menor detectado:

{"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 Fallido — no se encontro rostro:

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

404 {"error": "NOT_FOUND"}

Registro de cambios

Fecha Cambio
07.04.2026 Premium v3 simplificado a un unico estilo premium_v3 a 2.0 MP, 10 creditos fijos
01.04.2026 Se agregaron los estilos Premium v3
28.03.2026 Se agrego error_details a las respuestas de la API de animacion (deteccion de menores y rostro no encontrado)
15.03.2026 Se agregaron plantillas de animacion combo (14 creditos)
24.02.2026 Se renombraron los presets de animacion a plantillas de animacion; /api/v1/animation_presets sigue funcionando (obsoleto)
03.02.2026 Se agregaron nombres localizados al endpoint de presets de animacion
02.02.2026 Se agrego el endpoint de lista de presets de animacion
01.02.2026 Actualizacion importante de la API de Animar Foto
21.01.2026 Se agrego la API de Animar Foto
21.01.2026 Se agregaron las opciones body_shape, boobs, hair para el estilo premium_v2
19.12.2025 Se elimino el face swap basico de fotos
13.12.2025 Se actualizo la documentacion sobre videos de undress
12.12.2025 Se agrego la capacidad de crear videos de undress
11.12.2025 Se eliminaron opciones obsoletas de la especificacion OpenAPI
26.09.2025 Se elimino informacion sobre estilos de undress no soportados
30.12.2024 Se agrego enlace a la version beta de la documentacion de la API
27.12.2024 Se agrego la API de Face Swap de Videos
10.12.2024 Se agrego el campo version a la API de FaceSwap
25.10.2024 Se agrego la API de FaceSwap
18.10.2024 Se agrego el estilo premium v2
21.09.2024 Se agrego enlace a la especificacion OpenAPI
21.09.2024 Se agrego informacion sobre la generacion automatica de mascara
16.09.2024 Se agrego enlace a la pagina de precios
11.05.2024 Se agrego ejemplo de uso con curl
10.05.2024 Se actualizo la documentacion de la API para sincronizar con la version actual