Cómo se habilita tu acceso

Tu acceso a los datos de un colegio no se autoconfigura: existe porque ese colegio lo autorizó, con un alcance que él eligió y un contrato que él firmó. Esta página recorre ese camino de punta a punta y deja claro, en cada paso, qué hace el colegio y qué haces tú.

Quién hace qué

  • Nombre
    Cuenta de partner
    Tipo
    Edugoverna
    Descripción

    Tu espacio de trabajo y tu cuenta de partner las abre Edugoverna. No hay alta self-service: la ruta que lo permitía se retiró por escalada de privilegios.

  • Nombre
    Solicitud de conexión
    Tipo
    Cualquiera de los dos
    Descripción

    El colegio te invita (school_invites_partner) o tú pides acceso (partner_requests_school). La contraparte decide.

  • Nombre
    Alcances
    Tipo
    El colegio
    Descripción

    Qué espacios de recursos abre y en qué modo. Los pides; él los otorga.

  • Nombre
    Contrato del Art. 15 bis
    Tipo
    El colegio
    Descripción

    Lo registra en la conexión con su rango de vigencia. Sin uno vigente, la API te responde 403.

  • Nombre
    Credencial
    Tipo
    El colegio
    Descripción

    La emite y te la entrega. El texto plano se muestra una sola vez.

  • Nombre
    Integración
    Tipo
    Tú
    Descripción

    Con la credencial —en sandbox o en producción— llamas la Partner API.


Paso 1: tu cuenta de partner

Antes de que ningún colegio pueda conectarte, tiene que existir tu cuenta de partner (partner_account) y, si vas a operar campañas propias, tu espacio de trabajo (una organización de tipo external_partner). Ambas las provisiona Edugoverna: escríbenos y las abrimos.

La cuenta de partner es la identidad que los colegios ven al conectarte. Lleva tu razón social, tu sitio, tu correo de contacto y el correo de privacidad al que se dirigen los avisos que la plataforma genera.

Paso 2: la solicitud de conexión

La conexión es la relación formal entre un colegio y tu cuenta de partner, y nace de una solicitud que puede ir en cualquiera de las dos direcciones. En ambos casos, quien recibe la solicitud es quien la acepta.

Solicitud
POST
/api/integrations/connection-requests
curl https://app.edugoverna.com/api/integrations/connection-requests \
  -H "x-api-key: {api_key_del_partner}" \
  -H "Content-Type: application/json" \
  -d '{
    "direction": "partner_requests_school",
    "targetOrganizationId": "16fd2706-8baf-433b-82eb-8c7fada847da",
    "requestedScopes": [
      { "resourceNamespace": "subjects", "scopeType": "read" },
      { "resourceNamespace": "consents", "scopeType": "write" }
    ],
    "message": "Integración de consentimientos 2026"
  }'

Al aceptarse, la plataforma crea la conexión con los alcances solicitados. Si la solicitud no traía alcances, se aplica un conjunto por defecto: subjects en lectura, consents en lectura y escritura, y rights_requests en lectura. Pide sólo lo que vas a usar: un alcance de más es una conversación de más en la evaluación del colegio.

El detalle completo de la API está en Conexiones.

Paso 3: el contrato del Art. 15 bis

Tratar datos de un colegio a través de tu plataforma te convierte en su encargado de tratamiento, y esa relación se rige por un contrato escrito. El colegio lo registra en la conexión con su rango de vigencia, y la plataforma lo trata como una compuerta dura: sin un contrato vigente, toda llamada tuya se rechaza con 403 PARTNER_DPA_NOT_ACTIVE — no hay que acordarse de cerrar el acceso cuando el contrato vence.

Dos cosas que conviene saber antes de negociarlo:

  • El artículo enumera lo que el contrato deberá establecer: el objeto del encargo, su duración, la finalidad del tratamiento, el tipo de datos tratados, las categorías de titulares y los derechos y obligaciones de las partes.
  • Salirse del encargo tiene una consecuencia nombrada: si tratas los datos con un objeto distinto del convenido, o los cedes sin autorización expresa, la ley te considera responsable para todos los efectos legales, con responsabilidad personal por las infracciones y solidaria por los daños.

Cuando la conexión es de tipo external_registry —un colegio sin cuenta cuyo padrón carga un registrador externo— el instrumento que cumple esta compuerta no es un contrato sino la declaración jurada firmada del registrador. El recorrido completo está en la guía del registrador externo.

Paso 4: la credencial

Con la conexión activa, el colegio emite tu credencial desde su consola (Integraciones → Partners) o por API, eligiendo qué permisos partner.* lleva. La llave en texto plano tiene la forma keyId.secret y se muestra una sola vez: Edugoverna guarda sólo su hash. Si se pierde, se revoca y se emite otra.

Una credencial también lleva su propio límite de tasa (por defecto 600 solicitudes cada 60 segundos) y un vencimiento opcional. Ver Credenciales.

Paso 5: prueba antes de tener datos reales

Una credencial puede emitirse en modo sandbox (isSandbox: true). En ese modo recorres el flujo completo —incluido el código de verificación del portal de consentimiento, que se devuelve en la respuesta— sin envíos reales a familias. Es la forma de integrar antes de tener el primer colegio en producción.

Las cuatro puertas, y cómo saber cuál te frenó

Cada llamada tuya atraviesa cuatro compuertas en orden. Cada una tiene su código, así que un rechazo siempre dice cuál fue:

  • Nombre
    1 · Credencial
    Tipo
    401
    Descripción

    PARTNER_BEARER_REQUIRED, PARTNER_CREDENTIAL_INVALID o PARTNER_CREDENTIAL_EXPIRED.

  • Nombre
    2 · Conexión y espacio de trabajo
    Tipo
    403
    Descripción

    PARTNER_CONNECTION_NOT_ACTIVE o PARTNER_WORKSPACE_NOT_ACTIVE.

  • Nombre
    3 · Contrato del Art. 15 bis
    Tipo
    403
    Descripción

    PARTNER_DPA_NOT_ACTIVE.

  • Nombre
    4 · Permiso × alcance
    Tipo
    403
    Descripción

    PARTNER_PERMISSION_REQUIRED (falta el permiso en la credencial) o PARTNER_SCOPE_REQUIRED (falta el alcance en la conexión).

Entre la tercera y la cuarta se evalúa el límite de tasa, que responde 429 PARTNER_RATE_LIMITED con Retry-After. El detalle de cada puerta está en Autenticación.

Si un 403 te deja con dudas, el colegio puede reproducir la evaluación completa contra tu llave con el diagnóstico de acceso (POST /api/integrations/authorize): la respuesta nombra la compuerta que rechazó en lugar de dejarte adivinar.

Qué queda escrito

Cada acceso concedido y cada rechazo escriben un registro de auditoría en la organización del colegio y, cuando corresponde, un espejo en la tuya. No es un detalle de implementación: es lo que le permite al colegio acreditar ante la Agencia qué hiciste con sus datos y cuándo, y lo que te permite a ti demostrar que no hiciste nada fuera del encargo.

¿Te sirvió esta página?