document.deleted
A document is deleted. data.object is the document as it was. Sent to the account’s webhooks, and to an OAuth app that subscribes to it while its installation grants knowledge:read.
Parameters
Section titled “ Parameters ”Header Parameters
Section titled “Header Parameters”t=<unix seconds>,v1=<hex HMAC-SHA256>, the HMAC computed over <t>.<raw body> with the signing secret. During a secret rotation it carries one v1 per secret: accept the request if any matches.
The event type, as in type.
The event ID, as in id.
Request Bodyrequired
Section titled “Request Bodyrequired”object
The event’s ID, evt_ and 32 hex characters. Equal to the X-Talki-Delivery header and unchanged on a redelivery: deduplicate on it.
When the event was written, ISO 8601 with a +00:00 offset, possibly with microseconds. Parse it as an instant.
The dated contract version data is shaped for: the endpoint’s version on a webhook, the app’s on an app event.
The Talki account the event happened on.
false for an event from a sandbox account.
object
Where the change came from: voice (the assistant, during a call), dashboard (a person in the Talki web or mobile app), api (a credential through the API) or system (a rule Talki applied on its own). New values may be added; treat one you do not recognise as unknown.
The event’s payload.
object
The Document object, as the REST API returns it.
object
Document identifier.
The location whose assistant uses it (GET /v1/locations). Never null, and it never changes.
The note’s title, the uploaded file’s name, or the imported site’s address.
text for a note written as text, file for an uploaded file, website for pages imported from a site.
The content type: text/markdown for a note, the file’s type for a file, text/html for a website.
What it counts against the account’s knowledge storage: the note’s text, the file as uploaded, or the text extracted from the site. 0 for an upload that failed holding nothing.
How many passages its content is searched as. While it is processing, the count of the content it still answers with; for a new document, 0 until its content has been read. A new copy may show its count from the start.
True when the uploaded file is kept and GET /v1/documents/{document_id}/file returns it: shortly after the file is first ready, later for a copy at another location. False for a note, a website, a file whose first upload is not ready yet or failed, and a file Talki did not keep. A file being replaced keeps its previous file until the new one has been read, then has none until shortly after the new version is ready.
processing while its latest content is being read and indexed, ready once the assistant uses it, failed when its latest content could not be indexed (status_error says why). A document that was ready before keeps answering with its previous content while processing and after failed.
False when it is switched off: kept, but the assistant does not use it until it is switched on again.
True for the location’s FAQ note, which the answers taught with POST /v1/unresolved_requests/{request_id}/teach are added to. A location has one at most.
RFC 3339 UTC.
When its title or content was last written, RFC 3339 UTC: a note’s text or title when it is saved, a file’s title when it is renamed, and a replaced file’s or a website’s new content, a dropped page included, when it is ready. Sending the same text, file or pages again counts as a write; switching it on or off does not.
Example
{ "id": "evt_04d8e87897db4ecab459a456ea55e754", "type": "document.deleted", "created_at": "2026-09-22T15:04:06.218734+00:00", "api_version": "2026-10-01", "account_id": "f7e39b9a-1ac8-45e4-93da-2600f17cb286", "livemode": true, "origin": { "source": "dashboard", "credential_id": null, "idempotency_key": null }, "data": { "object": { "id": "5d2e8b17-3c9a-4f60-b4e1-8a7c2d9f0e36", "location_id": "0b7d4e19-8a2c-4f61-9d3e-5c1a7b2f8e40", "title": "Is there parking?", "source": "text", "mime_type": "text/markdown", "size_bytes": 59, "chunk_count": 1, "status": "ready", "status_error": null, "enabled": true, "faq": false, "file_available": false, "copy_group_id": "c41f7a29-6e3b-4d85-9f02-1b8e5c7a3d94", "created_at": "2026-10-28T09:12:40Z", "updated_at": "2026-10-28T09:12:40Z" } }}Responses
Section titled “ Responses ”Any 2xx acknowledges the event. Any other status, a redirect, or no answer within 10 seconds is a failure and is retried; 410 disables a webhook endpoint at once.
