Base:
https://app.edtools.co/api/client/v1 · 41 operaciones en 8 recursos · OpenAPI 3.1 en /api/client/openapi.jsonRequisitos
1
El Client API está encendido en el entorno
EDTOOLS_CLIENT_API_ENABLED=1. Para webhooks, además EDTOOLS_CLIENT_WEBHOOKS_ENABLED=1.2
La institución tiene el módulo de integraciones
platform_integrations activo, más el módulo funcional del recurso que vas a tocar. Sin esto los endpoints responden 403 MODULE_DISABLED.3
Tienes una API key
Se crea en Ajustes → API e integraciones → API Keys. Necesitas el permiso
settings.api.manage.Tu primera llamada
Qué puedes tocar
Las convenciones que se repiten
Todo viene envuelto en data
Todo viene envuelto en data
Las respuestas de éxito llevan la carga en
data. Los errores llevan error con code, message y requestId.Los listados se paginan con page y limit
Los listados se paginan con page y limit
Y aceptan
updatedSince para sincronización incremental. Pide solo lo que cambió desde tu última corrida.Los POST exigen Idempotency-Key
Los POST exigen Idempotency-Key
Reintentar sin ella duplica recursos. Ver Idempotencia.
Los PUT /external/{externalId} son upserts
Los PUT /external/{externalId} son upserts
Si tu sistema ya tiene un identificador estable, úsalo: sincronizas sin crear duplicados y sin llevar cuenta de los ids de EdTools.
Las escrituras respetan el Source of Record
Las escrituras respetan el Source of Record
Un
403 SOR_WRITE_FORBIDDEN no es un problema de permisos del token, es que ese dominio de datos tiene otro dueño. Ver Multi-tenancy.