e-bon
e-bon.ro
SDK TypeScript

client.webhooks

Referință pentru WebhooksResource — gestionează abonamentele webhook, rotește secretele de semnare, declanșează livrări de test și inspectează istoricul livrărilor, oglindind /api/v1/org/webhooks.

client.webhooks

client.webhooks împachetează /api/v1/org/webhooks/* — gestionarea abonamentelor webhook, rotirea secretelor de semnătură, livrări sincrone de test și istoric per-webhook al livrărilor. Vezi documentația REST corespondentă la API Webhooks și catalogul de payload-uri la Evenimente webhook.

Eșecurile la nivel HTTP apar ca EBonApiError — vezi Erori și /ro/api/errors.

client.webhooks.list()

Listează toate webhook-urile organizației. Secretele nu sunt niciodată returnate.

async list(): Promise<Webhook[]>

Fără parametri. Returnează un array de Webhook. (SDK-ul desface plicul { webhooks }.)

const webhooks = await client.webhooks.list();

client.webhooks.create(body)

Creează un nou abonament webhook.

Obiectul returnat include secret-ul brut de semnare — stochează-l în siguranță, este returnat o singură dată.

async create(body: CreateWebhookBody): Promise<CreateWebhookResult>
NumeTipObligatoriuNote
urlstringdaEndpoint HTTPS care va primi livrările.
descriptionstringnuEtichetă lizibilă.
eventsWebhookEventType[]daTipurile de evenimente abonate — vezi @e-bon/types.
enabledbooleannuImplicit true pe partea de server.

Returnează Webhook & { secret: string }. (SDK-ul desface plicul { webhook }.) secret-ul brut este afișat o singură dată.

const created = await client.webhooks.create({
  url: 'https://example.com/ebon-hook',
  events: ['receipt.created', 'command.failed'],
});
console.log(created.secret); // stochează-l!

client.webhooks.get(id)

Obține un singur webhook după ID (fără secret).

async get(id: string): Promise<Webhook>
NumeTipObligatoriuNote
idstringdaIdentificatorul webhook-ului.

Returnează un singur Webhook. (SDK-ul desface plicul { webhook }.)

const webhook = await client.webhooks.get('wh_01HZ...');

client.webhooks.update(id, body)

Actualizează URL-ul, descrierea, evenimentele sau câmpul enabled al unui webhook.

async update(id: string, body: UpdateWebhookBody): Promise<Webhook>
NumeTipObligatoriuNote
urlstringnuÎnlocuiește URL-ul de livrare.
descriptionstringnuÎnlocuiește descrierea.
eventsWebhookEventType[]nuÎnlocuiește lista de evenimente abonate.
enabledbooleannuComută livrarea on/off.

Returnează Webhook-ul actualizat.

await client.webhooks.update('wh_01HZ...', { enabled: false });

client.webhooks.delete(id)

Șterge permanent un webhook și toate înregistrările sale de livrare.

async delete(id: string): Promise<undefined>
NumeTipObligatoriuNote
idstringdaIdentificatorul webhook-ului.

Returnează undefined la succes.

await client.webhooks.delete('wh_01HZ...');

client.webhooks.rotateSecret(id)

Rotește secretul de semnare. Returnează noul secret brut (afișat o singură dată).

async rotateSecret(id: string): Promise<RotateWebhookSecretResult>
NumeTipObligatoriuNote
idstringdaIdentificatorul webhook-ului.

Returnează { secret: string }. Secretul anterior continuă să valideze semnăturile pe parcursul unei scurte ferestre de suprapunere — vezi API Webhooks › Rotație.

const { secret } = await client.webhooks.rotateSecret('wh_01HZ...');

client.webhooks.test(id)

Declanșează o livrare sincronă webhook.test și returnează înregistrarea livrării.

async test(id: string): Promise<WebhookDelivery>
NumeTipObligatoriuNote
idstringdaIdentificatorul webhook-ului.

Returnează un singur WebhookDelivery care descrie răspunsul de la endpoint-ul tău. (SDK-ul desface plicul { delivery }.)

const delivery = await client.webhooks.test('wh_01HZ...');
console.log(delivery.status, delivery.responseStatus);

client.webhooks.listDeliveries(id, query?)

Listează încercările recente de livrare pentru un webhook (cele mai noi primele).

async listDeliveries(id: string, query?: ListWebhookDeliveriesQuery): Promise<WebhookDelivery[]>
NumeTipObligatoriuNote
limitnumbernuDimensiunea paginii; serverul plafonează maximul.
statusWebhookDeliveryStatusnuFiltrează după statusul livrării.

Returnează un array de WebhookDelivery. (SDK-ul desface plicul { deliveries }.)

const recent = await client.webhooks.listDeliveries('wh_01HZ...', {
  status: 'failed',
  limit: 50,
});