Freedam

Desarrolladores · API REST y SDK

Desarrolla con la API REST de Freedam

La API lleva la versión en la URL y usa JSON en las solicitudes y las respuestas. Te autenticas con tokens limitados a los permisos que elijas, y un SDK tipado de TypeScript en npm cubre todos los endpoints.

Qué cubre la API

La API cubre las áreas principales del producto. Todos los endpoints usan el mismo envoltorio JSON, la misma paginación y el mismo formato de error.

Recursos

Busca, lee, actualiza y elimina recursos. La búsqueda combina texto completo y coincidencia semántica.

Colecciones

Crea y organiza colecciones, y añade o quita recursos de forma masiva.

Importaciones

Importa archivos por lotes. Freedam busca virus en ellos, comprueba su formato y ejecuta el enriquecimiento con IA.

Enlaces compartidos

Crea enlaces compartidos firmados con fecha de vencimiento, marcas de agua, límites de resolución y controles de acceso.

Metadatos

Lee los esquemas de campos, los vocabularios y las listas de términos de tu espacio de trabajo, para que tu propia interfaz use las mismas definiciones.

Operaciones

Inicia acciones masivas de larga duración, consulta su progreso y cancélalas si hace falta.

Webhooks

Gestiona los endpoints de webhook y consulta el historial de entregas con la misma API.

Tokens

Crea, lista y revoca tokens de API a través de la API. Cada token tiene los permisos que le asignas.

Autenticación y permisos

Tokens limitados a lo que necesita cada integración

Cada token de API tiene una lista explícita de permisos. Por ejemplo, un token que usa un script de importación no puede leer tu registro de enlaces compartidos, y un token detrás de un catálogo público no puede eliminar recursos. Un token nuevo solo recibe los permisos que selecciones.

Autentícate con un header estándar Authorization: Bearer. Puedes crear tokens a través de la API o en la página Configuración. Cada token puede hacer hasta sesenta solicitudes por minuto.

curl -X GET https://{workspace}.freedam.io/api/v1/assets \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/json"

Los quince permisos disponibles

Da a cada integración solo los que necesita.

Recursos

  • assets:readListar, buscar y leer recursos
  • assets:writeCrear y actualizar fichas de recursos
  • assets:deleteEliminar recursos de forma reversible y definitiva
  • assets:downloadObtener archivos originales o generados

Colecciones

  • collections:readListar y leer colecciones
  • collections:writeCrear, actualizar, añadir o quitar miembros
  • collections:deleteEliminar colecciones

Importaciones y metadatos

  • uploads:manageCrear lotes y añadirles archivos
  • metadata:readLeer vocabularios, términos y definiciones de campos
  • metadata:writeActualizar los valores de los campos de metadatos

Uso compartido y estadísticas

  • shares:readLeer enlaces compartidos y registros de acceso
  • shares:manageCrear, actualizar y revocar enlaces compartidos
  • analytics:readLeer métricas de uso e interacción
  • consents:readLeer los registros de consentimiento de personas

Webhooks

  • webhooks:manageSuscribir endpoints a los eventos que tus otros scopes pueden leer
import { createClient } from '@freedam/sdk';

const client = createClient({
    baseUrl: 'https://{workspace}.freedam.io',
    token: process.env.FREEDAM_TOKEN!,
});

// List recent assets
const { data } = await client.GET('/api/v1/assets', {
    params: { query: { per_page: 24 } },
});
SDK de TypeScript

Cliente de TypeScript

El paquete oficial @freedam/sdk es un cliente tipado con autocompletado para cada endpoint, parámetro y respuesta. Se distribuye como ESM y CJS, funciona en Node y en los navegadores modernos, y se actualiza con cada versión de la API.

Para otros lenguajes, puedes generar un cliente a partir del documento OpenAPI con la herramienta de generación de código que prefiera tu equipo.

Otros lenguajes

El documento OpenAPI describe toda la API en un formato legible por máquina, así que puedes desarrollar con él en Python, Go, Ruby, PHP, C#, Java u otro lenguaje, además del SDK de TypeScript. Para solicitar un SDK oficial en otro lenguaje, contáctanos.

Desarrolladores · API REST

Prueba una solicitud en la referencia de la API

La referencia en /docs/api te permite llamar a los endpoints desde la página con tu propio token, sobre tu propio espacio de trabajo.