Webhooks
Get notified when something changes.
Paths are relative to https://evenbooks.org/api/v1. How keys, errors, paging and versions work is in the guide; the whole reference is also an OpenAPI 3.1 document.
Administrator key marks endpoints that need a key with the admin role, Write access those a read-only key can’t call, and Idempotent those that accept an idempotency key.
Resend a delivery
/webhook-deliveries/{id}/retrySends the same event again right away, also after it failed for good.
Parameters
idstring (uuid)path · required
Response 200
WebhookDeliveryDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
List webhook endpoints
/webhook-endpointsResponse 200
array of WebhookEndpointDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Add a webhook endpoint
/webhook-endpointsSubscribes an https URL to events (an empty events list means every event type). The signing secret is in the response and is never shown again.
Request body
CreateWebhookEndpointInput
urlstringrequireddescriptionstring or nulleventsarray of string · WebhookEventType47 possible values
invoice.draft_createdinvoice.issuedinvoice.paidinvoice.voidedinvoice.email_sentinvoice.email_failedinvoice.deletedcredit_note.issuedcredit_note.appliedcredit_note.voidedcredit_note.deletedpayment.createdpayment.allocatedpayment.allocation_reversedpayment.voidedpayment.deletedrefund.createdrefund.voidedrefund.deletedpurchase.createdpurchase.voidedpurchase.deletedjournal.postedjournal.reversedjournal_entry.deletedbank_transaction.createdbank_transaction.categorizedbank_transaction.matchedbank_transaction.transferbank_transaction.excludedbank_transaction.review_undonebank_transaction.deletedbank_connection.syncedbank_connection.sync_failedimport.committedcontact.createdcontact.updatedcontact.archiveditem.createditem.updatedrecurring.issuedreconciliation.completedperiod.closedperiod.reopenedprocessor.charge_settledprocessor.dispute_openedprocessor.payout_posted
Response 200
WebhookEndpointWithSecretDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Get a webhook endpoint
/webhook-endpoints/{id}Parameters
idstring (uuid)path · required
Response 200
WebhookEndpointDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Change a webhook endpoint
/webhook-endpoints/{id}Omitted fields stay as they are. enabled: false turns the endpoint off and drops its pending deliveries; enabled: true turns it back on.
Parameters
idstring (uuid)path · required
Request body
UpdateWebhookEndpointInput
urlstringdescriptionstring or nulleventsarray of string · WebhookEventType47 possible values
invoice.draft_createdinvoice.issuedinvoice.paidinvoice.voidedinvoice.email_sentinvoice.email_failedinvoice.deletedcredit_note.issuedcredit_note.appliedcredit_note.voidedcredit_note.deletedpayment.createdpayment.allocatedpayment.allocation_reversedpayment.voidedpayment.deletedrefund.createdrefund.voidedrefund.deletedpurchase.createdpurchase.voidedpurchase.deletedjournal.postedjournal.reversedjournal_entry.deletedbank_transaction.createdbank_transaction.categorizedbank_transaction.matchedbank_transaction.transferbank_transaction.excludedbank_transaction.review_undonebank_transaction.deletedbank_connection.syncedbank_connection.sync_failedimport.committedcontact.createdcontact.updatedcontact.archiveditem.createditem.updatedrecurring.issuedreconciliation.completedperiod.closedperiod.reopenedprocessor.charge_settledprocessor.dispute_openedprocessor.payout_postedenabledboolean
Response 200
WebhookEndpointDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Delete a webhook endpoint
/webhook-endpoints/{id}Also deletes its delivery log.
Parameters
idstring (uuid)path · required
Response 200
DeleteWebhookEndpointsIdResponse
deletedbooleanAlways
true
Errors 400 · 401 · 403 · 404 · 409 · 429
List deliveries to an endpoint
/webhook-endpoints/{id}/deliveriesNewest first. Kept for 30 days.
Parameters
idstring (uuid)path · requiredlimitintegerquerycursorstringquerystatusstring · WebhookDeliveryStatusqueryOne of:
pendingsucceededfailed
Response 200
A page of WebhookDeliveryDto ({ items, nextCursor, total }, see paging).
Errors 400 · 401 · 403 · 404 · 409 · 429
Rotate a webhook signing secret
/webhook-endpoints/{id}/rotate-secretThe old secret stops working at once. The new one is in the response and is never shown again.
Parameters
idstring (uuid)path · required
Response 200
WebhookEndpointWithSecretDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Send a test event
/webhook-endpoints/{id}/testSends a ping event to the endpoint right away and returns the delivery, including the status code your server answered with.
Parameters
idstring (uuid)path · required
Response 200
WebhookDeliveryDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Schemas
The types these endpoints take or return, by name. Type names above link here.
Uuid
string (uuid)
WebhookDeliveryDto
idstring · UuidendpointIdstring · UuideventIdstring · UuideventTypestringentityTypestringentityIdstring or nullstatusstring · WebhookDeliveryStatusOne of:
pendingsucceededfailedattemptsintegernextAttemptAtstring or nulllastAttemptAtstring or nulllastStatusCodeinteger or nulllastErrorstring or nulllastResponsestring or nulldeliveredAtstring or nullcreatedAtstring
WebhookDeliveryStatus
string
One of: pending succeeded failed
WebhookEndpointDto
idstring · Uuidurlstringdescriptionstring or nulleventsarray of stringstatusstring · WebhookEndpointStatusOne of:
enableddisableddisabledReasonstring or nullOne of:
userfailingkey_revokedsecretPrefixstringfailingSincestring or nulllastSuccessAtstring or nulllastFailureAtstring or nullcreatedBystringconfiguredByApiKeyobject or nullShow 2 fields
idstring · Uuidnamestring
createdAtstringupdatedAtstring
WebhookEndpointStatus
string
One of: enabled disabled
WebhookEndpointWithSecretDto
endpointWebhookEndpointDtosecretstring
WebhookEventType
string
47 possible values
invoice.draft_created invoice.issued invoice.paid invoice.voided invoice.email_sent invoice.email_failed invoice.deleted credit_note.issued credit_note.applied credit_note.voided credit_note.deleted payment.created payment.allocated payment.allocation_reversed payment.voided payment.deleted refund.created refund.voided refund.deleted purchase.created purchase.voided purchase.deleted journal.posted journal.reversed journal_entry.deleted bank_transaction.created bank_transaction.categorized bank_transaction.matched bank_transaction.transfer bank_transaction.excluded bank_transaction.review_undone bank_transaction.deleted bank_connection.synced bank_connection.sync_failed import.committed contact.created contact.updated contact.archived item.created item.updated recurring.issued reconciliation.completed period.closed period.reopened processor.charge_settled processor.dispute_opened processor.payout_posted