Skip to main content
Si integras desde Node o TypeScript, usa el SDK. Vive en packages/client y se encarga de lo repetitivo: la URL base, la cabecera de autorización, los parámetros de consulta, el timeout, y convertir los errores en excepciones tipadas.

Empezar

El constructor acepta:

Lo que cubre

me()

edtools.me() — tenant, scopes, módulos y Source of Record.

students

list, get, create, update, upsertExternal.

admissions

pipeline.statuses.list, applications.* con sus contactos.

payments

list, get, create, update, upsertExternal.

programs · courses

Catálogos de solo lectura.

forms

templates.list, submissions.list.

vault

Tipos de documento, documentos, versiones, cargas y solicitudes.

webhooks

verifyEdToolsWebhook, signEdToolsWebhook.

Crear exige la clave de idempotencia

No es opcional a nivel de tipos: en los create, el segundo argumento pide idempotencyKey. Si lo olvidas, no compila.

Sincronizar con upsert

La forma recomendada cuando tu sistema ya tiene identificadores propios — sin llevar un mapa de ids de EdTools y sin riesgo de duplicar:

Manejar errores

Los errores de la API se lanzan como EdToolsApiError, con el código público, el mensaje y el requestId:
Ver el catálogo de códigos para saber cuáles vale la pena reintentar y cuáles no.

Verificar webhooks

El mismo paquete trae el verificador, así no reimplementas el HMAC:
Ver Webhooks para las tres trampas clásicas (cuerpo crudo, comparación en tiempo constante, ventana de tolerancia).