Skip to main content
These events keep your external database or CRM in sync with Timely.ai’s contact base. Every time a new contact comes in, a field is updated, or a contact is deleted, you receive an event.

Event list


contact.created

When it fires

A new contact is added to the workspace — either because an unknown number sent the first message on a channel, because an agent created it manually, or via API.

Payload

Key fields

Usage example

Use contact.created with source to identify which channel brings in the most new contacts. Combine with contact_id to create the record in your CRM before any interaction.

contact.updated

When it fires

Any field of an existing contact is modified — name, email, phone, tags, custom fields, or responsible agent. The payload includes both the new and previous values.

Payload

Key fields

Usage example

Use the changes object to update only the fields that actually changed in your external system — this avoids overwriting data you may have enriched locally.
For bidirectional sync, record the updated_by_type and ignore updates where updated_by_type is api when you triggered the update yourself — this prevents sync loops.

contact.deleted

When it fires

A contact is permanently removed from the workspace. Deletion can be done manually by an agent with the appropriate permission or via API. Deleted contacts cannot be recovered.

Payload

Key fields

Usage example

Use contact.deleted to ensure LGPD compliance in your CRM — remove or anonymize the contact’s data in your systems as soon as you receive this event. The contact_id will no longer exist in the API after deletion.