Synupv1
Crear clave
v1Recursos/Media

Media

Consulte y suba archivos a la biblioteca de medios de una ubicación.

Devuelve el logo, las fotos y los videos disponibles para una ubicación, agrupados por categoría.

Obtener medios de la ubicación

get/api/v1/media
media:read
Parámetros de consulta
locationIdstringobligatorio
La ubicación a consultar. Obligatorio.
Respuesta
dataobjectopcional
locationIdstringopcional
La ubicación a la que pertenecen estos medios.
logoUrlstringopcional
URL del logo de la ubicación, o null.
mediaByCategoryobjectopcional
Elementos multimedia agrupados por categoría (p. ej. EXTERIOR, INTERIOR, FOOD_AND_DRINK, LOGO, TEAMS). Cada elemento tiene una url y, opcionalmente, un label, un kind (PHOTO o VIDEO), una source, un indicador starred y un assetKey.
photosSummaryobjectopcional
Recuentos agregados de fotos.
totalnumberopcional
Número total de fotos, o null.
byCategoryarray of objectopcional
Número de fotos por categoría.
categorystringopcional
countnumberopcional
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
get/api/v1/media
Su clave de API
locationId *
{
  "data": {
    "locationId": "loc_456",
    "logoUrl": "https://cdn.synup.com/logos/loc_456.png",
    "mediaByCategory": {
      "EXTERIOR": [
        {
          "url": "https://cdn.synup.com/media/1.jpg",
          "kind": "PHOTO",
          "source": "user_upload",
          "starred": true
        }
      ]
    },
    "photosSummary": {
      "total": 12,
      "byCategory": [
        {
          "category": "EXTERIOR",
          "count": 4
        }
      ]
    }
  }
}
v1Recursos/Media/getListar categorías de medios

El conjunto fijo de valores de categoría aceptados por POST/DELETE /api/v1/locations/{id}/media (COVER, LOGO, INTERIOR, ...).

Listar categorías de medios

get/api/v1/media/categories
media:read
Respuesta
dataobjectopcional
categoriesarray of stringopcional
Los valores de categoría, en el orden en que se aplican.
Errores
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
get/api/v1/media/categories
Su clave de API
{
  "data": {
    "categories": [
      "COVER",
      "PROFILE",
      "LOGO",
      "EXTERIOR",
      "INTERIOR",
      "PRODUCT",
      "FOOD_AND_DRINK",
      "MENU",
      "AT_WORK",
      "TEAMS",
      "ROOMS",
      "COMMON_AREA",
      "ADDITIONAL"
    ]
  }
}
v1Recursos/Media/patchActualizar un asset

Actualiza los metadatos de superposición de un asset — etiquetas, pertenencia a carpetas, ubicaciones asignadas — y, solo para subidas, su título. Las fuentes sincronizadas o generadas ignoran el título; ahí es de solo lectura.

Actualizar un asset

patch/api/v1/media/{id}
media:write
Parámetros de consulta
idstringobligatorio
El asset a actualizar.
Cuerpo de la solicitud
titlestringopcional
Nuevo título. Solo subidas; se ignora en otras fuentes.
tagsarray of stringopcional
Reemplaza la lista completa de etiquetas del asset, por nombre.
folderIdsarray of stringopcional
Reemplaza la pertenencia a carpetas del asset.
locationIdsarray of stringopcional
Reemplaza las ubicaciones asignadas del asset.
statusstring (ok | needs_review | spam)opcional
Establece manualmente el veredicto de moderación. Solo medios sincronizados.
statusReasonstringopcional
Nota opcional que explica el estado, mostrada junto a él.
Respuesta
dataobjectopcional
assetobjectopcional
keystringopcional
Identificador compuesto del archivo, con el formato "<source>:<id>".
sourcestringopcional
Origen de este archivo (p. ej. una subida de OS frente a una fuente importada).
idstringopcional
El id del archivo dentro de su fuente.
titlestringopcional
El título del archivo.
filenamestringopcional
El nombre de archivo original del archivo.
mimestringopcional
El tipo MIME del archivo.
kindstringopcional
El tipo del archivo (foto o video).
sizeBytesnumberopcional
Tamaño del archivo en bytes, o null si se desconoce.
urlstringopcional
URL lista para usar con los bytes del archivo.
thumbnailUrlstringopcional
URL de una vista previa en miniatura, o null.
tagsarray of stringopcional
Etiquetas asociadas al archivo.
folderIdsarray of stringopcional
Carpetas de archivos a las que pertenece este archivo.
locationIdsarray of stringopcional
Todas las ubicaciones con las que está asociado este archivo.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
patch/api/v1/media/{id}
Su clave de API
id *
Cuerpo de la solicitud
{
  "data": {
    "asset": {
      "key": "upload:abc123",
      "source": "upload",
      "id": "abc123",
      "title": "Storefront photo",
      "filename": "storefront.jpg",
      "mime": "image/jpeg",
      "kind": "image",
      "sizeBytes": 482913,
      "url": "https://cdn.synup.com/media/abc123.jpg",
      "thumbnailUrl": "https://cdn.synup.com/media/abc123-thumb.jpg",
      "tags": [
        "VIP"
      ],
      "folderIds": [
        "folder_1"
      ],
      "locationIds": [
        "loc_456"
      ]
    }
  }
}
v1Recursos/Media/deleteArchivar un recurso multimedia

Archiva una foto/archivo subido de la biblioteca de recursos — esta API nunca elimina permanentemente. Los bytes, el registro, las membresías de tags/carpetas y los enlaces compartidos permanecen intactos; solo deja de aparecer en cualquier lugar de la biblioteca. Solo las subidas pueden archivarse así.

Archivar un recurso multimedia

delete/api/v1/media/{id}
media:write
Parámetros de consulta
idstringobligatorio
La clave del recurso, codificada en URL (p. ej. upload%3Aabc123).
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
409El origen de este recurso es de solo lectura (generado por Sydekick o multimedia sincronizado) y no se puede archivar aquí.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
delete/api/v1/media/{id}
Su clave de API
id *
{}
v1Recursos/Media/postEditar un asset con IA

Regenera la imagen (o el texto) de un asset generado por Sydekick en el mismo lugar a partir de un prompt de texto — la misma acción "Editar con IA" disponible en la pestaña Datos. Solo assets generados por Sydekick; las subidas y los medios sincronizados devuelven un 409. Ejecuta un trabajo en segundo plano que puede tardar un minuto o más en un arranque en frío.

Editar un asset con IA

post/api/v1/media/{id}/edit
media:write
Parámetros de consulta
idstringobligatorio
El asset generado a editar, codificado en porcentaje (p. ej. generated%3Aabc123).
Cuerpo de la solicitud
promptstringobligatorio
Qué cambiar, en lenguaje sencillo.
Respuesta
dataobjectopcional
assetobjectopcional
keystringopcional
Identificador compuesto del archivo, con el formato "<source>:<id>".
sourcestringopcional
Origen de este archivo (p. ej. una subida de OS frente a una fuente importada).
idstringopcional
El id del archivo dentro de su fuente.
titlestringopcional
El título del archivo.
filenamestringopcional
El nombre de archivo original del archivo.
mimestringopcional
El tipo MIME del archivo.
kindstringopcional
El tipo del archivo (foto o video).
sizeBytesnumberopcional
Tamaño del archivo en bytes, o null si se desconoce.
urlstringopcional
URL lista para usar con los bytes del archivo.
thumbnailUrlstringopcional
URL de una vista previa en miniatura, o null.
tagsarray of stringopcional
Etiquetas asociadas al archivo.
folderIdsarray of stringopcional
Carpetas de archivos a las que pertenece este archivo.
locationIdsarray of stringopcional
Todas las ubicaciones con las que está asociado este archivo.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
409Solo los assets generados por Sydekick se pueden editar con IA.
422A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/media/{id}/edit
Su clave de API
id *
Cuerpo de la solicitud*
{
  "data": {
    "asset": {
      "key": "upload:def456",
      "source": "upload",
      "id": "def456",
      "title": "Storefront photo (edited)",
      "filename": "storefront-edited.jpg",
      "mime": "image/jpeg",
      "kind": "image",
      "sizeBytes": 511204,
      "url": "https://cdn.synup.com/media/def456.jpg",
      "thumbnailUrl": "https://cdn.synup.com/media/def456-thumb.jpg",
      "tags": [
        "VIP"
      ],
      "folderIds": [
        "folder_1"
      ],
      "locationIds": [
        "loc_456"
      ]
    }
  }
}
v1Recursos/Media/postSubir un archivo multimedia

Añade una nueva foto o video a la biblioteca de medios de la agencia a partir de una URL o un payload codificado en base64, opcionalmente limitado a una cuenta, cliente, ubicación o marca.

Subir un archivo multimedia

post/api/v1/media/upload
media:write
Cuerpo de la solicitud
urlstringopcional
Una URL públicamente accesible desde la que obtener el archivo. Proporcione esto o base64, no ambos.
base64stringopcional
El contenido del archivo en bruto, codificado en base64. Proporcione esto o url, no ambos.
mimestringopcional
Tipo MIME del archivo, p. ej. image/jpeg. Se infiere si se omite.
filenamestringopcional
Nombre de archivo original, usado para la visualización.
titlestringopcional
Un título legible para el archivo.
scopeTypestring (account | client | location | brand)opcional
A qué pertenece este archivo: account (toda la agencia), client, location o brand.
scopeIdstringopcional
El id del cliente o ubicación al que se limita el archivo, cuando scopeType es client o location.
folderIdstringopcional
Una carpeta de archivos existente en la que clasificar esta subida.
tagsarray of stringopcional
Etiquetas libres para asociar al archivo.
locationIdsarray of stringopcional
Ubicaciones adicionales a las que asociar este archivo, además de scopeId.
Respuesta
dataobjectopcional
assetobjectopcional
keystringopcional
Identificador compuesto del archivo, con el formato "<source>:<id>".
sourcestringopcional
Origen de este archivo (p. ej. una subida de OS frente a una fuente importada).
idstringopcional
El id del archivo dentro de su fuente.
titlestringopcional
El título del archivo.
filenamestringopcional
El nombre de archivo original del archivo.
mimestringopcional
El tipo MIME del archivo.
kindstringopcional
El tipo del archivo (foto o video).
sizeBytesnumberopcional
Tamaño del archivo en bytes, o null si se desconoce.
urlstringopcional
URL lista para usar con los bytes del archivo.
thumbnailUrlstringopcional
URL de una vista previa en miniatura, o null.
tagsarray of stringopcional
Etiquetas asociadas al archivo.
folderIdsarray of stringopcional
Carpetas de archivos a las que pertenece este archivo.
locationIdsarray of stringopcional
Todas las ubicaciones con las que está asociado este archivo.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
422A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/media/upload
Su clave de API
Cuerpo de la solicitud
{
  "data": {
    "asset": {
      "key": "upload:ghi789",
      "source": "upload",
      "id": "ghi789",
      "title": "New storefront photo",
      "filename": "new-storefront.jpg",
      "mime": "image/jpeg",
      "kind": "image",
      "sizeBytes": 398211,
      "url": "https://cdn.synup.com/media/ghi789.jpg",
      "thumbnailUrl": "https://cdn.synup.com/media/ghi789-thumb.jpg",
      "tags": [],
      "folderIds": [],
      "locationIds": []
    }
  }
}
v1Recursos/Media/postCompartir un asset

Emite (o rota) un enlace público para el asset. Rotar revoca cualquier enlace emitido antes.

Compartir un asset

post/api/v1/media/{id}/share
media:write
Parámetros de consulta
idstringobligatorio
El asset a compartir.
Respuesta
dataobjectopcional
urlstringopcional
La URL pública para compartir.
accessstring (link)opcional
Siempre "link" si tiene éxito.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/media/{id}/share
Su clave de API
id *
{
  "data": {
    "url": "https://synup.com/s/kL9mN2pQr",
    "access": "link"
  }
}
v1Recursos/Media/deleteDejar de compartir un asset

Revoca el enlace público del asset.

Dejar de compartir un asset

delete/api/v1/media/{id}/share
media:write
Parámetros de consulta
idstringobligatorio
El asset cuyo enlace se revoca.
Respuesta
dataobjectopcional
accessstring (restricted)opcional
Siempre "restricted" si tiene éxito.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
delete/api/v1/media/{id}/share
Su clave de API
id *
{
  "data": {
    "access": "restricted"
  }
}