NjanggoNjanggoDocumentation API
Pro

Schémas ressource

Objets de données du contrat API premium — alignés sur @njanggo/types et enrichis pour Plus/Pro.

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.

Voir aussi Migration /api → /v1 pour les différences pagination et erreurs.

Event

Événement publié ou brouillon, rattaché à un calendrier (organizationId).

Type partagé : @njanggo/types — Event

Relations : organizationId → Calendartickets[] → Tickethosts[] → EventHost

Champs — Event

idstringrequis

Identifiant interne evt_*

slugstringrequis

URL publique unique

titlestringrequis

Max 200 caractères

descriptionstring (markdown)requis

Description longue

startAt / endAtISO 8601 UTCrequis

endAt > startAt

timezoneIANArequis

Ex. Europe/Paris

statusenumrequis

DRAFT | PUBLISHED | CANCELLED | COMPLETED

visibilityenumrequis

PUBLIC | PRIVATE | UNLISTED

locationEventLocationrequis

PHYSICAL | VIRTUAL | HYBRID

organizationIdstringoptionnel

Calendrier propriétaire

requiresApprovalbooleanoptionnel

Inscriptions en attente

ticketsTicket[]optionnel

Caté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

idstringrequis

gst_*

eventIdstringrequis

Événement parent

emailstringrequis

Lowercase, unique par event

firstName / lastNamestringrequis

Nom affiché

statusenumrequis

INVITED | REGISTERED | WAITLISTED | CONFIRMED | DECLINED | CHECKED_IN

sourceenumoptionnel

DIRECT | INVITE | IMPORT | WAITLIST

ticketobjectoptionnel

{ id, name, type, price, currency }

registrationAnswersarrayoptionnel

Réponses aux questions d’inscription

Ticket

Catégorie de billet pour un événement.

Type partagé : @njanggo/types — Ticket

Champs — Ticket

idstringrequis

tkt_*

namestringrequis

Ex. Early bird

priceintegerrequis

Centimes — 0 = gratuit

currencystringoptionnel

EUR par défaut

capacityintegeroptionnel

Quota — null = illimité

soldCountintegeroptionnel

Billets vendus (lecture seule)

Order

Commande billetterie payante (contrat cible Pro).

Champs — Order

idstringrequis

ord_*

eventIdstringrequis

Événement

guestIdstringoptionnel

Acheteur

amountintegerrequis

Montant centimes TTC

currencystringrequis

EUR

statusenumrequis

PENDING | PAID | REFUNDED | FAILED

stripePaymentIntentIdstringoptionnel

Référence Stripe

paidAtISO 8601optionnel

Date paiement

Webhook

Configuration webhook calendrier (Plus) ou événement (legacy).

Champs — Webhook

idstringrequis

wh_cal_* ou wh_evt_*

urlurirequis

HTTPS endpoint destinataire

eventsstring[]requis

Sous-ensemble des 6 types

isActivebooleanrequis

false si 410 reçu

secretstringoptionnel

whsec_* — affiché une fois à la création

lastTriggeredAtISO 8601optionnel

Dernière livraison

WebhookDelivery

Log d’une livraison webhook (Pro).

Champs — WebhookDelivery

idstringrequis

del_* — idempotence X-Njanggo-Delivery-Id

webhookIdstringrequis

Webhook source

eventTypestringrequis

guest.registered, etc.

statusenumrequis

pending | success | failed | retrying

attemptsintegerrequis

1–4 max

responseCodeintegeroptionnel

Code HTTP du destinataire

nextRetryAtISO 8601optionnel

Prochain essai si échec

payloadobjectoptionnel

Corps JSON envoyé

ScheduledExport

Export invités récurrent (Plus).

Champs — ScheduledExport

idstringrequis

exp_*

calendarSlugstringrequis

Calendrier

cronstringrequis

Expression cron UTC — ex. 0 8 * * 1

formatenumrequis

csv | json

destinationenumrequis

email | webhook

destinationConfigobjectoptionnel

{ email } ou { webhookUrl }

isActivebooleanrequis

Actif / suspendu