Event Format
Every event delivered to your webhook endpoint follows the same envelope:{
"id": "evt_01HXYZEVT1",
"type": "sales.deal.won",
"workspace_id": "ws_01HXYZABC",
"timestamp": "2026-07-10T15:00:00Z",
"actor": { "type": "user", "id": "usr_01HXYZ5678" },
"payload": { ... }
}
Office Events
| Event | Description |
|---|---|
office.document.created | A new document is created |
office.document.updated | A document’s content or metadata changes |
office.document.deleted | A document is deleted |
office.document.published | A document is published |
office.export.completed | An async export job finishes |
office.file.uploaded | A file is uploaded to storage |
Access Events
| Event | Description |
|---|---|
access.user.created | A user is provisioned |
access.user.deactivated | A user account is deactivated |
access.user.login | A user successfully logs in |
access.session.revoked | An active session is revoked |
access.sso.configured | An SSO connection is created or updated |
Sales Events
| Event | Description |
|---|---|
sales.contact.created | A new contact is created |
sales.deal.created | A new deal is created |
sales.deal.stage_changed | A deal moves to a new stage |
sales.deal.won | A deal is marked as won |
sales.deal.lost | A deal is marked as lost |
sales.import.completed | A contact import job finishes |
Careers Events
| Event | Description |
|---|---|
careers.job.published | A job posting goes live |
careers.job.closed | A job posting is closed |
careers.application.submitted | A candidate submits an application |
careers.application.stage_changed | An applicant advances to a new stage |
careers.application.disqualified | An applicant is disqualified |
Project Events
| Event | Description |
|---|---|
project.project.created | A new project is created |
project.task.created | A new task is created |
project.task.completed | A task is marked done |
project.project.archived | A project is archived |
Guard Events
| Event | Description |
|---|---|
guard.alert.triggered | A threat detection rule fires |
guard.policy.updated | An access policy is modified |
guard.policy.activated | A policy is set to active |
guard.audit.exported | An audit log export completes |
guard.ip_allowlist.bypassed | An IP allowlist bypass is used |