Schémas ressource
Objets de données du contrat API premium — alignés sur @njanggo/types et enrichis pour Plus/Pro.
Dans cet article
Référence complète des ressources échangées par l’API. Les types TypeScript partagés vivent dans packages/types ; les champs marqués « contrat cible » seront exposés via /api/v1.
Event
Événement publié ou brouillon, rattaché à un calendrier (organizationId).
Type partagé : @njanggo/types — Event
Relations : organizationId → Calendartickets[] → Tickethosts[] → EventHost
Champs — Event
idstringrequisIdentifiant interne evt_*
slugstringrequisURL publique unique
titlestringrequisMax 200 caractères
descriptionstring (markdown)requisDescription longue
startAt / endAtISO 8601 UTCrequisendAt > startAt
timezoneIANArequisEx. Europe/Paris
statusenumrequisDRAFT | PUBLISHED | CANCELLED | COMPLETED
visibilityenumrequisPUBLIC | PRIVATE | UNLISTED
locationEventLocationrequisPHYSICAL | VIRTUAL | HYBRID
organizationIdstringoptionnelCalendrier propriétaire
requiresApprovalbooleanoptionnelInscriptions en attente
ticketsTicket[]optionnelCatégories billets (max 5 à la création)
Guest
Invité inscrit ou invité à un événement.
Type partagé : @njanggo/types — Guest
Relations : eventId → EventrsvpId → RSVPticket → Ticket
Champs — Guest
idstringrequisgst_*
eventIdstringrequisÉvénement parent
emailstringrequisLowercase, unique par event
firstName / lastNamestringrequisNom affiché
statusenumrequisINVITED | REGISTERED | WAITLISTED | CONFIRMED | DECLINED | CHECKED_IN
sourceenumoptionnelDIRECT | INVITE | IMPORT | WAITLIST
ticketobjectoptionnel{ id, name, type, price, currency }
registrationAnswersarrayoptionnelRéponses aux questions d’inscription
Ticket
Catégorie de billet pour un événement.
Type partagé : @njanggo/types — Ticket
Champs — Ticket
idstringrequistkt_*
namestringrequisEx. Early bird
priceintegerrequisCentimes — 0 = gratuit
currencystringoptionnelEUR par défaut
capacityintegeroptionnelQuota — null = illimité
soldCountintegeroptionnelBillets vendus (lecture seule)
Order
Commande billetterie payante (contrat cible Pro).
Champs — Order
idstringrequisord_*
eventIdstringrequisÉvénement
guestIdstringoptionnelAcheteur
amountintegerrequisMontant centimes TTC
currencystringrequisEUR
statusenumrequisPENDING | PAID | REFUNDED | FAILED
stripePaymentIntentIdstringoptionnelRéférence Stripe
paidAtISO 8601optionnelDate paiement
Webhook
Configuration webhook calendrier (Plus) ou événement (legacy).
Champs — Webhook
idstringrequiswh_cal_* ou wh_evt_*
urlurirequisHTTPS endpoint destinataire
eventsstring[]requisSous-ensemble des 6 types
isActivebooleanrequisfalse si 410 reçu
secretstringoptionnelwhsec_* — affiché une fois à la création
lastTriggeredAtISO 8601optionnelDernière livraison
WebhookDelivery
Log d’une livraison webhook (Pro).
Champs — WebhookDelivery
idstringrequisdel_* — idempotence X-Njanggo-Delivery-Id
webhookIdstringrequisWebhook source
eventTypestringrequisguest.registered, etc.
statusenumrequispending | success | failed | retrying
attemptsintegerrequis1–4 max
responseCodeintegeroptionnelCode HTTP du destinataire
nextRetryAtISO 8601optionnelProchain essai si échec
payloadobjectoptionnelCorps JSON envoyé
ScheduledExport
Export invités récurrent (Plus).
Champs — ScheduledExport
idstringrequisexp_*
calendarSlugstringrequisCalendrier
cronstringrequisExpression cron UTC — ex. 0 8 * * 1
formatenumrequiscsv | json
destinationenumrequisemail | webhook
destinationConfigobjectoptionnel{ email } ou { webhookUrl }
isActivebooleanrequisActif / suspendu