ΖΩΝΤΑΝΑ · ΑΛΥΣΙΔΑ ΕΛΕΓΧΟΥ · ΕΕ
ΣΥΣΤΗΜΑ · 99,99% ΔΙΑΘΕΣΙΜΟΤΗΤΑ
v 1.0 ↗ ΦΤΙΑΓΜΕΝΟ ΣΤΗΝ ΕΕ

API webhook endpoints

Καταχωρίστε HTTPS endpoints για να λαμβάνετε HMAC-signed POST συμβάντων κάθε φορά που συμβαίνει κάτι αξιοσημείωτο στην πλατφόρμα — άνοιγμα συνεδριών, λήψη τεκμηρίων, αγκύρωση αλυσίδων ελέγχου. Κάθε παράδοση επαναλαμβάνεται με εκθετική υποχώρηση, υπογράφεται με μυστικό ανά endpoint και είναι ασφαλής έναντι επανάληψης μέσω παραθύρου χρονοσφραγίδας 5 λεπτών.

Για τον κατάλογο συμβάντων + τις μορφές payload, δείτε Επισκόπηση Webhooks. Αυτή η σελίδα είναι η επιφάνεια API για τη διαχείριση endpoints + την επιθεώρηση των προσπαθειών παράδοσης.

Το αντικείμενο Endpoint

{
  "id": "we-1f2a...",
  "url": "https://hooks.acme.com/cvp",
  "description": "Production claims pipeline",
  "event_types": ["session.completed", "evidence.created"],
  "active": true,
  "created_at": "2026-04-12T09:00:00Z"
}

Σημείωση: το πεδίο signing_secret επιστρέφεται ακριβώς μία φορά στην απόκριση POST — αποθηκεύστε το αμέσως ή εναλλάξτε το αργότερα μέσω PATCH αν το χάσετε.

Εμφάνιση endpoints

GET /api/v1/public/webhook-endpoints — εύρος webhooks:read

curl https://app.nexbasira.com/api/v1/public/webhook-endpoints \
  -H "Authorization: Bearer nb_sec_..."

Δημιουργία endpoint

POST /api/v1/public/webhook-endpoints — εύρος webhooks:write

curl -X POST https://app.nexbasira.com/api/v1/public/webhook-endpoints \
  -H "Authorization: Bearer nb_sec_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://hooks.acme.com/cvp",
    "description": "Production claims pipeline",
    "event_types": ["session.completed", "evidence.created"]
  }'

Πεδία body

ΠεδίοΤύποςΥποχρεωτικόΣημειώσεις
urlHTTPS URLναιΠρέπει να είναι προσβάσιμο + να επιστρέφει 2xx εντός 10 δευτ. Το HTTP απορρίπτεται.
descriptionstringόχιΕτικέτα ελεύθερου κειμένου. Βοηθά όταν έχετε πολλαπλά endpoints ανά οργανισμό.
event_typesstring[]όχιΕγγραφή μόνο σε ένα υποσύνολο τύπων συμβάντων. Παράλειψη / κενό = εγγραφή σε όλα.
{
  "id": "we-1f2a...",
  "url": "https://hooks.acme.com/cvp",
  "description": "Production claims pipeline",
  "event_types": ["session.completed", "evidence.created"],
  "active": true,
  "created_at": "2026-04-12T09:00:00Z",
  "signing_secret": "whsec_4f9d2a8b3c1e..."
}

Το signing_secret είναι το κλειδί HMAC-SHA256 που χρησιμοποιεί η πλατφόρμα για να υπογράφει κάθε POST. Επαληθεύστε την κεφαλίδα NB-Signature στον δέκτη σας — τα SDK μας παρέχουν έναν βοηθό μιας γραμμής.

Ανάκτηση / ενημέρωση / διαγραφή

GET / PATCH / DELETE /api/v1/public/webhook-endpoints/{endpoint_id}

Το GET απαιτεί webhooks:read· τα PATCH + DELETE απαιτούν webhooks:write. Το PATCH δέχεται την ίδια μορφή body με το POST — κάθε πεδίο προαιρετικό. Χρησιμοποιήστε το για να παύσετε ένα endpoint ({"active": false}), να περιορίσετε την εγγραφή του ή να εναλλάξετε το μυστικό υπογραφής.

Εναλλαγή του μυστικού υπογραφής

curl -X PATCH https://app.nexbasira.com/api/v1/public/webhook-endpoints/we-1f2a... \
  -H "Authorization: Bearer nb_sec_..." \
  -H "Content-Type: application/json" \
  -d '{"rotate_secret": true}'

Το νέο μυστικό επιστρέφεται ακριβώς μία φορά στο body της απόκρισης, με την ίδια μορφή όπως η κλήση δημιουργίας. Τόσο το παλιό όσο και το νέο μυστικό ισχύουν για τις επόμενες 24 ώρες, ώστε ο δέκτης σας να έχει χρόνο να αναπτυχθεί — μετά από αυτό το παλιό ανακαλείται.

Επιθεώρηση προσπαθειών παράδοσης

GET /api/v1/public/webhook-events — εύρος webhooks:read

Οι τελευταίες 100 προσπάθειες παράδοσης για τον οργανισμό του διαπιστευτηρίου. Φιλτράρετε με ?endpoint={id} ή ?status=pending|delivered|failed|dropped.

{
  "data": [{
    "id": "wev-9a01...",
    "endpoint": "we-1f2a...",
    "event_type": "session.completed",
    "status": "delivered",
    "response_status": 200,
    "attempt_count": 1,
    "created_at": "2026-05-23T10:32:00Z",
    "delivered_at": "2026-05-23T10:32:01Z"
  }],
  "has_more": false,
  "next_cursor": null
}

Ρυθμός επανάληψης

Οι αποτυχημένες παραδόσεις επαναλαμβάνονται με αυτό το χρονοδιάγραμμα και έπειτα απορρίπτονται:

  • +30 δευτερόλεπτα
  • +5 λεπτά
  • +1 ώρα
  • +6 ώρες
  • +24 ώρες
  • μετά από αυτό → dropped (ορατό στο αρχείο παράδοσης)

Συνήθη σφάλματα

ΚατάστασηΚωδικόςΠότε
400validation_errorΜη-HTTPS URL, άγνωστος τύπος συμβάντος ή μη προσβάσιμο endpoint κατά τη δημιουργία.
403permission_deniedΤο διαπιστευτήριο δεν διαθέτει το scope.
404not_foundΤο endpoint δεν υπάρχει στον οργανισμό του διαπιστευτηρίου.
409endpoint_pausedΠροσπάθεια αποστολής δοκιμαστικής ενεργοποίησης σε endpoint με active=false.