Developer docs

De Pluvo API geeft je programmatische toegang tot je leeromgeving. Beheer gebruikers, groepen, trainingen, inschrijvingen en certificaten vanuit je eigen systemen.

De API is gebaseerd op GraphQL. Je bepaalt zelf welke data je opvraagt of muteert, zonder overbodige velden. Authenticatie verloopt via OAuth 2.0 met client credentials. Webhooks houden je systemen real-time op de hoogte van wijzigingen.

Webhooks

Event Notifications

Pluvo supports webhooks that notify external systems when events occur. Webhooks send POST requests to your configured endpoint with event data.

Available Events

  • USER_CREATED, USER_UPDATED, USER_ARCHIVED, USER_DELETED
  • OFFER_EVENT_ENROLLED, OFFER_EVENT_ENROLLMENT_STATUS_UPDATED, OFFER_EVENT_UNENROLLED
  • TRAINING_COMPLETED, TRAINING_PROGRESS_UPDATED
  • CERTIFICATE_ISSUED, CERTIFICATE_EXPIRED
  • GROUP_USER_ADDED, GROUP_USER_REMOVED

Configure webhook

mutation {
  createWebhook(webhook: {
    url: "https://your-endpoint.com/webhook"
    events: [USER_CREATED, TRAINING_COMPLETED]
    secret: "your-secret"
  }) {
    webhook { id url events }
  }
}

Payload format

{
  "event": "USER_CREATED",
  "timestamp": "2024-01-15T10:30:00Z",
  "data": { ... }
}

Notes

  • Webhooks include HMAC signature for verification.
  • Failed deliveries are retried with exponential backoff.
  • Use secret for payload signature verification.