Files
mmorales.photo/docs/documentacion-api.md
Manuel d957bfc07d
All checks were successful
Deploy Documentation Local / deploy-docs (push) Successful in 32s
docs
2025-09-01 16:41:36 +02:00

6.2 KiB

Galerías Fotográficas - Documentación API

Relacionado

Autenticación y autorización

POST /auth/login -> Inicia sesión y devuelve un token de autenticación.

POST /auth/logout -> Cierra sesión y revoca el token de autenticación.

Endpoints de usuarios

GET /users/ -> Obtiene la lista de usuarios.

GET /users/{id} -> Obtiene los detalles de un usuario específico.

POST /users/ -> Crea un nuevo usuario. Se espera que el cuerpo de la solicitud contenga los datos del usuario.

PUT /users/{id} -> Actualiza los detalles de un usuario específico. Se espera que el cuerpo de la solicitud contenga los datos actualizados del usuario.

DELETE /users/{id} -> Elimina un usuario específico.

Endpoints de imágenes

GET /images/ -> Obtiene la lista de imágenes. En el body se incluirá una variable indicando si tiene que devolver las imágenes de un usuario específico o de un profesional.

POST /images/ -> Crea una nueva imagen. Se espera que el cuerpo de la solicitud contenga los datos de la imagen, incluidos los metadatos.

GET /images/{id} -> Obtiene los detalles de una imagen específica. Incluye los metadatos asociados a la imagen. Según la querystring, devolverá la imagen en 360p, 720p o 1080p.

PUT /images/{id} -> Actualiza los detalles de una imagen específica. Se espera que el cuerpo de la solicitud contenga los datos actualizados de la imagen.

DELETE /images/{id} -> Elimina una imagen específica.

Endpoints de eventos

GET /events/ -> Obtiene la lista de eventos. En el body se incluirá una variable indicando si tiene que devolver los eventos de un usuario específico o de un profesional.

POST /events/ -> Crea un nuevo evento. Se espera que el cuerpo de la solicitud contenga los datos del evento, incluidos los metadatos.

GET /events/{id} -> Obtiene los detalles de un evento específico. Incluye los metadatos asociados al evento.

PUT /events/{id} -> Actualiza los detalles de un evento específico. Se espera que el cuerpo de la solicitud contenga los datos actualizados del evento.

DELETE /events/{id} -> Elimina un evento específico.

Endpoints de colecciones

GET /collection/ -> Obtiene la lista de colecciones. En el body se incluirá una variable indicando si tiene que devolver las colecciones de un usuario específico o de un profesional.

POST /collection/ -> Crea una nueva colección. Devuelve los detalles de la colección creada.

GET /collection/{id} -> Obtiene los detalles de una colección específica. En el body se indica el ID del usuario que la consulta, si no está relacionado con esa colección, se devolverá un error 404 (Not Found).

PUT /collection/{id} -> Actualiza una colección existente.

DELETE /collection/{id} -> Elimina una colección.

GET /collection/{id}/images -> Obtiene la lista de imágenes de una colección específica. Cada imagen incluirá información como el ID de la imagen, la URL de la imagen y los metadatos asociados.

POST /collection/{id}/images -> Crea una nueva imagen en una colección específica. Se espera que el cuerpo de la solicitud contenga los datos de la imagen, incluidos los metadatos.

GET /collection/{id}/images/{id} -> Obtiene los detalles de una imagen específica de una colección. Incluye los metadatos asociados a la imagen.

PUT /collection/{id}/images/{id} -> Actualiza los detalles de una imagen específica de una colección. Se espera que el cuerpo de la solicitud contenga los datos actualizados de la imagen.

DELETE /collection/{id}/images/{id} -> Elimina una imagen específica de una colección.

Endpoints de sesiones

GET /session/ -> Obtiene la lista de sesiones. En el body se incluirá una variable indicando si tiene que devolver las sesiones activas de un usuario específico o de un profesional.

POST /session/ -> Crea una nueva sesión. Devuelve los detalles de la sesión creada.

GET /session/{id} -> Obtiene los detalles de una sesión específica. En el body se indica el ID del usuario que la consulta, si no está relacionado con esa sesión, se devolverá un error 404 (Not Found).

PUT /session/{id} -> Actualiza una sesión existente.

DELETE /session/{id} -> Elimina una sesión.

GET /session/{id}/image/ -> Obtiene la lista de imágenes de una sesión específica. Cada imagen incluirá información como el ID de la imagen, la URL de la imagen y los metadatos asociados y el feedback asociado.

POST /session/{sessionId}/image -> Crea una nueva imagen en una sesión específica. Se espera que el cuerpo de la solicitud contenga los datos de la imagen, incluidos los metadatos.

GET /session/{sessionId}/image/{imageId} -> Obtiene los detalles de una imagen específica de una sesión. Incluye el feedback asociado a la imagen.

PUT /session/{sessionId}/image/{imageId} -> Actualiza los detalles de una imagen específica de una sesión. Incluye el feedback asociado a la imagen.

PATCH /session/{sessionId}/image/{imageId} -> Actualiza el feedback asociado a una imagen específica de una sesión.

DELETE /session/{sessionId}/image/{imageId} -> Elimina una imagen específica de una sesión.

GET /session/{sessionId}/image/{imageId}/revision/{revisionId} -> Obtiene los detalles de una revisión específica de una imagen en una sesión.

POST /session/{sessionId}/image/{imageId}/revision/{revisionId} -> Crea una nueva revisión para una imagen específica en una sesión. Se espera que el cuerpo de la solicitud contenga los datos de la revisión.

PUT /session/{sessionId}/image/{imageId}/revision/{revisionId} -> Actualiza los detalles de una revisión específica de una imagen en una sesión.

DELETE /session/{sessionId}/image/{imageId}/revision/{revisionId} -> Elimina una revisión específica de una imagen en una sesión.

Endpoints de pagos

TODO

Códigos de error y manejo de excepciones

Todos los errores se manejarán mediante el patrón Response<T> descrito anteriormente. En caso de que sean errores de validación, se devolverá un código de estado 400 (Bad Request) junto con una lista de errores detallados. En cualquier otro caso, se tratarán mediante el estandar Problem Details.