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.

Enrollments

Use Cases

Enrollments in Pluvo are processed through an OfferEvent. A user does not enroll directly in a training, but in a specific entry moment within an offering.

Enroll users in an event (bulk)

mutation {
  createOfferEventEnrollments(
    offerEventId: "uuid-event"
    userIds: ["uuid-user-1", "uuid-user-2"]
    sendMail: false
    sendNotification: true
  ) {
    id
    user { id name email }
    status
  }
}

Update enrollment status

mutation {
  updateOfferEventEnrollments(
    offerEventEnrollmentIds: ["enrollment-uuid-1"]
    status: APPROVED
    sendMail: true
  ) {
    id
    status
    user { name }
  }
}

Delete enrollments

mutation {
  deleteOfferEventEnrollments(
    offerEventEnrollmentIds: ["enrollment-uuid-1"]
  ) {
    ok
  }
}

Notes

  • Use createOfferEventEnrollments for programmatic enrollment — supports both id and ref.
  • sendMail: false recommended for bulk operations.
  • Enrollment webhooks fire automatically when enrollments change.