Manual de uso del API de Galerías (solo lectura)
El API de galerías expone endpoints de solo lectura para consultar galerías de imágenes. Todas las rutas viven bajo /api/gallery/* y devuelven JSON.
Autenticación
- Incluye
Authorization: Bearer <token>en cada solicitud. - El token debe estar activo y tener permisos sobre el recurso que consultas.
- Aunque los endpoints actuales no requieren cuerpo, mantén
Content-Type: application/jsonen caso de enviar parámetros serializados.
Permisos
read: permite ejecutar peticionesGET.
Si el token está vencido, inactivo o carece del permiso read, la respuesta será 401 o 403.
Códigos de respuesta comunes
200 OK: respuesta exitosa.400 Bad Request: parámetros inválidos.401 / 403: token ausente, inválido o sin permisos.404 Not Found: recurso inexistente.405 Method Not Allowed: se intentó un método distinto deGET.500 Internal Server Error: error no controlado en el servidor.
Galerías — /api/gallery
GET listado
Devuelve todas las galerías accesibles para el token. Las imágenes no se incluyen en el listado para reducir el tamaño de la respuesta.
Query params
limit(número, opcional): máximo de resultados (1–100).
Ejemplo
curl "https://cms.begraffic.com/api/gallery?limit=10" \
-H "Authorization: Bearer TU_TOKEN"Respuesta
{
"count": 2,
"galleries": [
{
"id": "galeria-productos-2024",
"name": "Galería de Productos 2024",
"description": "Imágenes de nuestros productos más destacados",
"imageCount": 5,
"createdAt": "2024-05-01T10:00:00.000Z",
"updatedAt": "2024-05-02T12:30:00.000Z"
},
{
"id": "galeria-eventos-2024",
"name": "Galería de Eventos 2024",
"description": "Fotos de nuestros eventos corporativos",
"imageCount": 12,
"createdAt": "2024-05-15T08:00:00.000Z",
"updatedAt": "2024-05-20T09:30:00.000Z"
}
]
}GET detalle
GET /api/gallery?id=<id>
Devuelve una galería específica que coincida con el ID. Este endpoint incluye todas las imágenes con sus variantes.
Respuesta
{
"gallery": {
"id": "galeria-productos-2024",
"name": "Galería de Productos 2024",
"description": "Imágenes de nuestros productos más destacados",
"images": [
{
"variants": {
"original": {
"url": "https://cdn.begraffic.com/galleries/uuid1/original.jpg",
"width": 1920,
"height": 1080,
"size": 245760,
"contentType": "image/jpeg"
},
"medium": {
"url": "https://cdn.begraffic.com/galleries/uuid1/medium.webp",
"width": 1280,
"height": 720,
"size": 156789,
"contentType": "image/webp"
},
"small": {
"url": "https://cdn.begraffic.com/galleries/uuid1/small.webp",
"width": 640,
"height": 360,
"size": 45678,
"contentType": "image/webp"
},
"thumbnail": {
"url": "https://cdn.begraffic.com/galleries/uuid1/thumbnail.webp",
"width": 300,
"height": 300,
"size": 12345,
"contentType": "image/webp"
}
},
"previewUrl": "https://cdn.begraffic.com/galleries/uuid1/medium.webp"
}
],
"createdAt": "2024-05-01T10:00:00.000Z",
"updatedAt": "2024-05-02T12:30:00.000Z"
}
}Estructura de Imágenes
Cada imagen en una galería incluye múltiples variantes optimizadas:
Variantes disponibles
- original: Imagen en tamaño y formato original
- medium: Imagen redimensionada a 1280px de ancho máximo
- small: Imagen redimensionada a 640px de ancho máximo
- thumbnail: Imagen cuadrada de 300x300px
Campos de cada variante
url: URL pública de la imagenwidth: Ancho en píxelesheight: Alto en píxelessize: Tamaño del archivo en bytescontentType: Tipo MIME (image/jpeg, image/webp, etc.)
Campo previewUrl
Cada imagen incluye un campo previewUrl que apunta a la variante medium (o original si medium no está disponible) para facilitar la visualización.
Buenas prácticas
- Utiliza
previewUrlpara mostrar vistas previas de las imágenes. - Las variantes
thumbnailson ideales para listados y grids. - Las variantes
mediumson perfectas para vistas detalladas. - Las variantes
originalsolo deben usarse cuando necesites la máxima calidad. - Maneja específicamente los códigos
404(galería no encontrada) y405(método no permitido) en tus integraciones. - Si llegas a necesitar operaciones de escritura, deberás coordinar con el equipo para habilitar endpoints adicionales.