Usa nuestro inicio rápido para aprender cómo funciona la API de Imagen y personalizar tu flujo.
Completa la incorporación
Necesitas registrarte en Imagen, configurar tu entorno, elegir un Perfil IA y algunos otros pasos antes de usar este inicio rápido. Consulta Incorporación.
Si quieres usar la API de Imagen con poca programación, aquí está el SDK en Python.
1. Obtén una lista de Perfiles de IA disponibles
Obtén una lista de Perfiles de IA y sus claves. Aquí está la documentación de referencia de la API para este endpoint.
GET /v1/profiles/
Ejemplo de respuesta
La respuesta incluye los Perfiles de IA disponibles. Cada Perfil IA tiene un profile_key que lo identifica. Necesitas este profile_key para editar las fotos en tu proyecto.
{
"data": {
"profiles": [
{
"profile_key": <clave de perfil del Perfil IA Personal>,
"profile_name": "boda",
"profile_type": "Personal",
"image_type": "RAW"
},
{
"profile_key": 14715,
"profile_name": "LOVE & LIGHT",
"profile_type": "Talent",
"image_type": "RAW"
},
{
"profile_key": 163322,
"profile_name": "ELEGANT HOME",
"profile_type": "Talent",
"image_type": "RAW"
}
]
}
}
2. Selecciona tus fotos sin la API
Selecciona tus fotos antes de subirlas para editar. La selección no forma parte de la API de Imagen.
3. Crea un proyecto y obtén un ID de proyecto
Te recomendamos crear un proyecto para cada sesión. Un proyecto organiza tus fotos con el Perfil IA que elegiste para editar estas fotos. Aquí están los docs de referencia de la API para este endpoint.
POST /v1/projects/
Ejemplo de respuesta
La respuesta es el project_uuid usado para identificar este proyecto. Usa este project_uuid hasta que exportes tus fotos a JPEG.
{
"data": {
"project_uuid": "<project_uuid>"
}
}
4. Crea enlaces temporales de carga para subir fotos
Necesitas un enlace temporal para subir cada foto. En la solicitud, en el parámetro files_list, incluye los nombres de archivo de las fotos a subir. Usa formato list. Aquí está la documentación de referencia de la API para este endpoint.
POST /v1/projects/<PROJECT_UUID>/get_temporary_upload_links
Ejemplo de solicitud
curl --location 'https://api.dev.imagen-ai.com/v1/projects/<project_uuid>/get_temporary_upload_links' \
--header 'x-api-key: <api_key>' \
--header 'Content-Type: application/json' \
--data '{
“files_list”: [
{“file_name”: “922A4846.CR2”},
{“file_name”: “922A4832.CR2”},
{“file_name”: “922A4818.CR2”},
{“file_name”: “922A4809.CR2”}
]
}'
Ejemplo de respuesta
La respuesta incluye un enlace temporal para cada foto al bucket S3 de Imagen en AWS. Este enlace es la URL prefirmada de AWS.
{
"data": {
"files_list": [
{
"file_name": "922A4846.raw",
"upload_link": "<presigned URL for 922A4846.raw>"
},
{
"file_name": "922A4832.raw",
"upload_link": "<presigned URL for 922A4832.raw>"
},
{
"file_name": "922A4818.raw",
"upload_link": "<presigned URL for 922A4818.raw>"
},
{
"file_name": "922A4809.raw",
"upload_link": "<presigned URL for 922A4809.raw>"
}
]
}
}
5. Sube cada foto a su enlace de carga temporal
Sube las fotos con una PUT solicitud al bucket S3 de Imagen en AWS. Usa los enlaces de carga temporales de la respuesta del paso anterior.
Pruebas en Postman
- Desactiva Content-Type en los encabezados.
- No envíes Content-Type en los parámetros de consulta.
Requisitos del encabezado de solicitud en el código
Añade Content-Type al encabezado con una cadena vacía ("") como valor.
6. Edita las fotos de tu proyecto
Antes de enviar tus fotos a editar, necesitas:
- El valor de tu project_uuid
- El valor de tu profile_key. Consulta la respuesta de 1. Obtener una lista de perfiles de IA disponibles para tu profile_key.
- Herramientas de IA. Consulta Herramientas de IA de Imagen para elegir las herramientas adecuadas para tu proyecto.
- (Opcional) URL de callback. Consulta [Añadir una URL de callback para recibir mensajes de estado]
Aquí está la documentación de referencia de la API para este endpoint.
POST /v1/projects/{project_uuid}/edit
Ejemplo de solicitud
{
"profile_key": <clave de perfil>,
"hdr_merge": true,
"photography_type": "REAL_ESTATE",
"callback_url": "string",
"perspective_correction": true,
"sky_replacement": true,
"sky_replacement_template_id": “2”
}
Ejemplo de respuesta
La respuesta es un mensaje que confirma que el proyecto se editó correctamente. Si hay un error, envía un email a nuestro equipo de atención al cliente.
{“project_uuid”: “<el UUID del proyecto>”, “status”: “Failed/Completed/Pending”, “action”: “edit/export”“}
Añadir una URL de callback para recibir mensajes de estado
La callback_url es un endpoint POST que Imagen puede usar para enviarte mensajes de estado. Este parámetro es opcional. Si lo usas, no necesitas comprobar el estado de la edición. Este endpoint debe estar abierto a Imagen.
Los posibles estados enviados en la solicitud son:
- Failed: Envía un email al equipo de atención al cliente.
-
Completed: La API de Imagen ha terminado de editar las fotos. Continúa con una de las siguientes opciones:
-
Obtén enlaces de descarga temporales para descargar fotos editadas o XMP para retocar ediciones y exportar fotos con tu software de edición.
O - Exportar fotos para entrega para crear JPEGs exportados para clientes.
-
Obtén enlaces de descarga temporales para descargar fotos editadas o XMP para retocar ediciones y exportar fotos con tu software de edición.
Ejemplo de respuesta
{“project_uuid”: “<el UUID del proyecto>”, “status”: “Failed/Completed”, “action”: “edit/export”“}
7. Comprobar el estado de la edición
Si no añadiste una URL de callback a tu solicitud de edición, obtén el estado actual del proceso de edición. Continúa llamando a este endpoint con long polling hasta que el estado sea Completado.
Aquí están los documentos de referencia de la API para este endpoint.
GET /v1/projects/<PROJECT_UUID>/edit/status
Estos son los estados en la respuesta:
- Pendiente: El proceso de edición no ha comenzado. Una vez que la edición comience, el estado cambiará a En proceso.
- En proceso: La API de Imagen está editando las fotos.
- Fallido: Envía un email al equipo de atención al cliente.
-
Completado: La API de Imagen ha terminado de editar las fotos. Continúa con una de las siguientes opciones:
-
Obtén enlaces de descarga temporales para descargar fotos editadas o XMP para retocar ediciones y exportar fotos con tu software de edición.
O - Exporta fotos para entrega para crear JPEG exportados para clientes.
-
Obtén enlaces de descarga temporales para descargar fotos editadas o XMP para retocar ediciones y exportar fotos con tu software de edición.
8. Obtén enlaces de descarga temporales para descargar fotos editadas o XMP
Después de recibir un estado Completado, obtén los enlaces de descarga temporales para descargar las fotos editadas.
Aquí está la documentación de referencia de la API para este endpoint.
GET /v1/projects/<PROJECT_UUID>/edit/get_temporary_download_links
Ejemplo de respuesta
La respuesta incluye un enlace temporal para cada foto al bucket S3 de Imagen en AWS. Este enlace es la URL prefirmada de AWS.
{
"data": {
"files_list": [
{
"file_name": "922A4846.DNG",
"download_link": "<URL prefirmada para 922A4846.DNG>"
},
{
"file_name": "922A4832.DNG",
"download_link": "<URL prefirmada para 922A4832.DNG>"
},
{
"file_name": "922A4818.DNG",
"download_link": "<URL prefirmada para 922A4818.DNG>"
},
{
"file_name": "922A4809.DNG",
"download_link": "<URL prefirmada para 922A4809.DNG>"
}
]
}
}
9. Descarga las fotos editadas localmente
Cuando Imagen devuelve los archivos editados, estos son los formatos respectivos:
| Formato de archivo antes de editar | Formato de archivo devuelto después de editar |
| RAW |
XMP Nota: Al editar fotos con Combinación HDR, el formato devuelto siempre es DNG, aunque el formato del archivo antes de editar fuera RAW. |
| RAW + DNG | DNG con XMP integrado |
| DNG | DNG con XMP integrado |
| JPEG | JPEG con XMP integrado |
Descarga las fotos del bucket S3 de Imagen en AWS con los enlaces de descarga temporales de la respuesta del paso anterior. Usa el método que prefieras. Para ver código de muestra en Python, consulta api_client.py en el proyecto API de Imagen en Github.
Revisa las ediciones en el software de edición de Adobe. Si abres las fotos con el visor de fotos predeterminado de tu ordenador, no verás las ediciones. Para ayuda, consulta:
- Lightroom Classic: Mis fotos no están editadas después de descargar las ediciones
- Lightroom: Mis fotos no están editadas después de descargar las ediciones
- Photoshop: Mis fotos no están editadas después de descargar las ediciones
- Bridge: Mis fotos no están editadas después de descargar las ediciones
10. Opcional: Exporta los JPEG finales para entrega
La API de Imagen exporta todas las fotos de un proyecto a formato JPEG. Este paso es opcional. Algunos fotógrafos retocan las ediciones y las exportan con su software de edición. Después de exportar los JPEG finales, los entregas o los subes a una galería.
1. Exporta las fotos del proyecto
POST /v1/projects/<PROJECT_UUID>/export
Aquí están los documentos de referencia de la API para este endpoint.
La respuesta incluye el project_uuid y un mensaje de que la exportación fue exitosa. Si hay un error, envía un email a nuestro equipo de atención al cliente.
2. Verifica el estado de la exportación
Si no añadiste una URL de callback en tu solicitud de edición, obtén el estado de la exportación.
GET /v1/projects/<PROJECT_UUID>/export/status.
Aquí están los documentos de referencia de la API para este endpoint.
La respuesta incluye el estado de la exportación. Los estados posibles son:
- En proceso: La API de Imagen está editando las fotos.
- Fallido: Envía un email al equipo de atención al cliente.
- Completado: La API de Imagen ha terminado de exportar las fotos a JPEG.
3. Obtén enlaces de descarga temporales para descargar las fotos JPEG finales
Obtén los enlaces de descarga temporales cuando el estado de exportación se devuelva como COMPLETED.
GET /v1/projects/<PROJECT_UUID>/export/get_temporary_download_links
En la solicitud, incluye las fotos exportadas para descargar en el parámetro files_list. Usa formato list.
Aquí están los documentos de referencia de la API para este endpoint.
Ejemplo de respuesta
La respuesta incluye un enlace temporal para cada foto al bucket S3 de Imagen en AWS. Este enlace es la URL prefirmada de AWS.
{
"data": {
"files_list": [
{
"file_name": "922A4846.JPG",
"download_link": "<presigned URL for 922A4846.JPG>"
},
{
"file_name": "922A4832.JPG",
"download_link": "<presigned URL for 922A4832.JPG>"
},
{
"file_name": "922A4818.JPG",
"download_link": "<presigned URL for 922A4818.JPG>"
},
{
"file_name": "922A4809.JPG",
"download_link": "<presigned URL for 922A4809.JPG>"
}
]
}
}
4. Descarga las fotos JPEG finales localmente
Descarga las fotos del bucket S3 de Imagen en AWS con los enlaces de descarga temporales de la respuesta del paso anterior. Usa el método que prefieras. Para ver código de ejemplo en Python, consulta api_client.py en el proyecto API de Imagen en Github.