Skip to content

Event catalog

This page is generated from the API contract: the event list is the same one that validates an endpoint subscription, and each example is built by the same function that builds the real body before sending. A new event shows up here on its own.

  • The event name is contract. Within v1, new events may be added, but none is removed or renamed.
  • The object is the one from GET. data.object is what the resource’s GET would return at that moment, under the same field rules. The fields, one by one, are in the Reference, in the schema shown on each event.
  • Requires <module>:read. To subscribe to an event, the key must read its module, and the subscriber must keep reading it to keep receiving. See Who receives what.
  • One write can produce more than one event. .status_changed, .rescheduled and financial_transaction.paid are sent for the change they are named after; if other fields changed in the same write, .updated is sent too, with every changed field in changed_fields. Sales work differently: each action has its own event (sale.version_created, sale.canceled, sale.payment_registered, sale.payment_canceled), which replaces sale.updated, and sale.paid is sent along when the action leaves the sale fully paid. The financial entries the action creates or changes go out as financial_transaction.*.
  • Deleting a series produces one event per deleted record. Deleting a series of tasks or entries sends a .deleted for each one. Other cascading deletes send no event: see What does not send an event.
  • .deleted carries the object from before the deletion, so you know what went away.
  • Summarized events. Through the paths listed in Events that arrive summarized, any event may arrive with only { object, id } and object_truncated: true.
  • ping is not in the catalog: nobody subscribes to it. It only goes to the endpoint that asked for it, through POST /public/v1/webhook_endpoints/{id}/ping.
  • ["*"] subscribes the endpoint to every event on this page, including those added later.

In the examples, the object values show each field’s type ("string", 0, false), not real data. A field that can be null is shown with its type when it is filled in.

Clients

client.created

A client was created, through any path: dashboard, API, spreadsheet import, WhatsApp or automation.

Requiresclients:readObjectClient

Example body
{
"id": "evt_a153b99e31db43ad870fa736315bed85",
"type": "client.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "client",
"id": "e5dbdeed-1b97-494d-8b5a-7d45a049b945",
"name": "string",
"email": "string",
"phone": "string",
"additional_phones": [
{
"phone": "string",
"label": "string"
}
],
"address": "string",
"birth_date": "string",
"cpf_cnpj": "string",
"notes": "string",
"status": "lead",
"source": "string",
"last_interaction_at": "string",
"next_follow_up": "string",
"follow_up_note": "string",
"sla_response_target_minutes": 0,
"person_type": "pf",
"legal_name": "string",
"inscricao_municipal": "string",
"inscricao_estadual": "string",
"email_fiscal": "string",
"address_street": "string",
"address_number": "string",
"address_complement": "string",
"address_district": "string",
"address_city": "string",
"address_state": "string",
"address_zip": "string",
"address_city_ibge": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

client.updated

Some client field changed. changed_fields says which.

Requiresclients:readObjectClient

Example body
{
"id": "evt_75dc5cf559df4c8d8640692d327ba9c5",
"type": "client.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "client",
"id": "e5dbdeed-1b97-494d-8b5a-7d45a049b945",
"name": "string",
"email": "string",
"phone": "string",
"additional_phones": [
{
"phone": "string",
"label": "string"
}
],
"address": "string",
"birth_date": "string",
"cpf_cnpj": "string",
"notes": "string",
"status": "lead",
"source": "string",
"last_interaction_at": "string",
"next_follow_up": "string",
"follow_up_note": "string",
"sla_response_target_minutes": 0,
"person_type": "pf",
"legal_name": "string",
"inscricao_municipal": "string",
"inscricao_estadual": "string",
"email_fiscal": "string",
"address_street": "string",
"address_number": "string",
"address_complement": "string",
"address_district": "string",
"address_city": "string",
"address_state": "string",
"address_zip": "string",
"address_city_ibge": "string",
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"notes"
]
}
}

client.deleted

The client was deleted. The object is the client as it was before deletion.

Requiresclients:readObjectClient

Example body
{
"id": "evt_389ab7531bb74a518eb5fc771c15386d",
"type": "client.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "client",
"id": "e5dbdeed-1b97-494d-8b5a-7d45a049b945",
"name": "string",
"email": "string",
"phone": "string",
"additional_phones": [
{
"phone": "string",
"label": "string"
}
],
"address": "string",
"birth_date": "string",
"cpf_cnpj": "string",
"notes": "string",
"status": "lead",
"source": "string",
"last_interaction_at": "string",
"next_follow_up": "string",
"follow_up_note": "string",
"sla_response_target_minutes": 0,
"person_type": "pf",
"legal_name": "string",
"inscricao_municipal": "string",
"inscricao_estadual": "string",
"email_fiscal": "string",
"address_street": "string",
"address_number": "string",
"address_complement": "string",
"address_district": "string",
"address_city": "string",
"address_state": "string",
"address_zip": "string",
"address_city_ibge": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

Service orders

service_order.created

A service order was opened, including one created by converting a quote.

Requiresservice_orders:readObjectServiceOrder

Example body
{
"id": "evt_c68bf6abfebd46d58701f9ab91fffd65",
"type": "service_order.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "service_order",
"id": "6562d80b-0a65-4eed-8646-d2131bc84e45",
"order_number": "string",
"status": "pending",
"priority": "low",
"type_id": "915f8fd6-7bd0-4949-8046-2fc2ff5b3edd",
"type_name": "string",
"client_id": "fb479993-ad66-4575-8ac7-4ef3a50cf2a5",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_description": "string",
"service_address": "string",
"client_address_id": "9a358916-4917-49a5-8dbe-fa6646562285",
"technician_id": "333b55fc-df0a-4621-8ddd-3b60744f977d",
"technician_name": "string",
"support_technicians": [
{
"id": "f132f094-815c-4843-8bfd-39228f061e19",
"name": "string"
}
],
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"total_cents": 0,
"scheduled_start": "string",
"scheduled_end": "string",
"started_at": "string",
"completed_at": "string",
"notes": "string",
"internal_notes": "string",
"technical_report": "string",
"quote_id": "d4f48112-a137-4407-8e76-98e8cd5c3dc1",
"appointment_id": "e1964041-cc51-4a2d-80ba-b24980b2a785",
"financial_transaction_id": "9ef9f166-2ed2-4ba3-8e58-2a9857cc4121",
"created_at": "string",
"updated_at": "string"
}
}
}

service_order.updated

A service order field other than the status changed. If the status changed in the same write, service_order.status_changed is sent too.

Requiresservice_orders:readObjectServiceOrder

Example body
{
"id": "evt_115035c0336c47f78669f08eeb0b2a39",
"type": "service_order.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "service_order",
"id": "6562d80b-0a65-4eed-8646-d2131bc84e45",
"order_number": "string",
"status": "pending",
"priority": "low",
"type_id": "915f8fd6-7bd0-4949-8046-2fc2ff5b3edd",
"type_name": "string",
"client_id": "fb479993-ad66-4575-8ac7-4ef3a50cf2a5",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_description": "string",
"service_address": "string",
"client_address_id": "9a358916-4917-49a5-8dbe-fa6646562285",
"technician_id": "333b55fc-df0a-4621-8ddd-3b60744f977d",
"technician_name": "string",
"support_technicians": [
{
"id": "f132f094-815c-4843-8bfd-39228f061e19",
"name": "string"
}
],
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"total_cents": 0,
"scheduled_start": "string",
"scheduled_end": "string",
"started_at": "string",
"completed_at": "string",
"notes": "string",
"internal_notes": "string",
"technical_report": "string",
"quote_id": "d4f48112-a137-4407-8e76-98e8cd5c3dc1",
"appointment_id": "e1964041-cc51-4a2d-80ba-b24980b2a785",
"financial_transaction_id": "9ef9f166-2ed2-4ba3-8e58-2a9857cc4121",
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"notes"
]
}
}

service_order.status_changed

The service order status (status) changed, or the dates that go with it (started_at and completed_at).

Requiresservice_orders:readObjectServiceOrder

Example body
{
"id": "evt_fab18bf42e5341d98aedf7407fe2424d",
"type": "service_order.status_changed",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "service_order",
"id": "6562d80b-0a65-4eed-8646-d2131bc84e45",
"order_number": "string",
"status": "pending",
"priority": "low",
"type_id": "915f8fd6-7bd0-4949-8046-2fc2ff5b3edd",
"type_name": "string",
"client_id": "fb479993-ad66-4575-8ac7-4ef3a50cf2a5",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_description": "string",
"service_address": "string",
"client_address_id": "9a358916-4917-49a5-8dbe-fa6646562285",
"technician_id": "333b55fc-df0a-4621-8ddd-3b60744f977d",
"technician_name": "string",
"support_technicians": [
{
"id": "f132f094-815c-4843-8bfd-39228f061e19",
"name": "string"
}
],
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"total_cents": 0,
"scheduled_start": "string",
"scheduled_end": "string",
"started_at": "string",
"completed_at": "string",
"notes": "string",
"internal_notes": "string",
"technical_report": "string",
"quote_id": "d4f48112-a137-4407-8e76-98e8cd5c3dc1",
"appointment_id": "e1964041-cc51-4a2d-80ba-b24980b2a785",
"financial_transaction_id": "9ef9f166-2ed2-4ba3-8e58-2a9857cc4121",
"created_at": "string",
"updated_at": "string"
}
}
}

service_order.deleted

The service order was deleted. In the dashboard and in the API, deleting archives the order, and it starts answering 404.

Requiresservice_orders:readObjectServiceOrder

Example body
{
"id": "evt_dc1c3bfa7b93432b8f33e8c4229fd111",
"type": "service_order.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "service_order",
"id": "6562d80b-0a65-4eed-8646-d2131bc84e45",
"order_number": "string",
"status": "pending",
"priority": "low",
"type_id": "915f8fd6-7bd0-4949-8046-2fc2ff5b3edd",
"type_name": "string",
"client_id": "fb479993-ad66-4575-8ac7-4ef3a50cf2a5",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_description": "string",
"service_address": "string",
"client_address_id": "9a358916-4917-49a5-8dbe-fa6646562285",
"technician_id": "333b55fc-df0a-4621-8ddd-3b60744f977d",
"technician_name": "string",
"support_technicians": [
{
"id": "f132f094-815c-4843-8bfd-39228f061e19",
"name": "string"
}
],
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"total_cents": 0,
"scheduled_start": "string",
"scheduled_end": "string",
"started_at": "string",
"completed_at": "string",
"notes": "string",
"internal_notes": "string",
"technical_report": "string",
"quote_id": "d4f48112-a137-4407-8e76-98e8cd5c3dc1",
"appointment_id": "e1964041-cc51-4a2d-80ba-b24980b2a785",
"financial_transaction_id": "9ef9f166-2ed2-4ba3-8e58-2a9857cc4121",
"created_at": "string",
"updated_at": "string"
}
}
}

Quotes

quote.created

A quote was created.

Requiresquotes:readObjectQuote

Example body
{
"id": "evt_782edd1beb7b4b79841db1474c89517d",
"type": "quote.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "quote",
"id": "54f08356-74eb-4a09-803c-5bfae5947ead",
"quote_number": "string",
"version": 0,
"is_current": false,
"status": "pending",
"quote_type": "service",
"title": "string",
"client_id": "9c0a607c-a9cf-449f-81fa-6fae124337c1",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_address": "string",
"seller_id": "9bcf6f7c-4af0-4d8b-89ca-b962aa7aaa09",
"seller_name": "string",
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string",
"section": "products",
"block_id": "string",
"optional": false,
"optional_included": false
}
],
"blocks": [
{
"id": "string",
"name": "string",
"position": 0,
"status": "pending",
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"recurring_total_cents": 0,
"valid_until": "string",
"estimated_start_date": "string",
"estimated_completion_date": "string",
"notes": "string",
"internal_notes": "string",
"observations": "string",
"terms_and_conditions": "string",
"payment_conditions": "string",
"approved_at": "string",
"rejected_at": "string",
"rejection_reason": "string",
"converted_to_sale": false,
"sale_id": "b4280fa8-ac6c-420b-8efc-97ba707e1451",
"merged_into_quote_id": "bf3d2127-4e85-4f99-8ac5-8ab330a9e97d",
"created_at": "string",
"updated_at": "string"
}
}
}

quote.updated

A quote field other than the status changed. A quote absorbed into a merge, and the previous version when a new version is created, also arrive here.

Requiresquotes:readObjectQuote

Example body
{
"id": "evt_e4907390dad54f838853167eb92912b1",
"type": "quote.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "quote",
"id": "54f08356-74eb-4a09-803c-5bfae5947ead",
"quote_number": "string",
"version": 0,
"is_current": false,
"status": "pending",
"quote_type": "service",
"title": "string",
"client_id": "9c0a607c-a9cf-449f-81fa-6fae124337c1",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_address": "string",
"seller_id": "9bcf6f7c-4af0-4d8b-89ca-b962aa7aaa09",
"seller_name": "string",
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string",
"section": "products",
"block_id": "string",
"optional": false,
"optional_included": false
}
],
"blocks": [
{
"id": "string",
"name": "string",
"position": 0,
"status": "pending",
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"recurring_total_cents": 0,
"valid_until": "string",
"estimated_start_date": "string",
"estimated_completion_date": "string",
"notes": "string",
"internal_notes": "string",
"observations": "string",
"terms_and_conditions": "string",
"payment_conditions": "string",
"approved_at": "string",
"rejected_at": "string",
"rejection_reason": "string",
"converted_to_sale": false,
"sale_id": "b4280fa8-ac6c-420b-8efc-97ba707e1451",
"merged_into_quote_id": "bf3d2127-4e85-4f99-8ac5-8ab330a9e97d",
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"notes"
]
}
}

quote.status_changed

The quote status changed: send, approve, reject, cancel, the client decision on the portal, and expiration. Expiration is recorded when someone opens the quote list, not on the expiry date.

Requiresquotes:readObjectQuote

Example body
{
"id": "evt_cb92bd0450d4499d8859ec3c6dcfe625",
"type": "quote.status_changed",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "quote",
"id": "54f08356-74eb-4a09-803c-5bfae5947ead",
"quote_number": "string",
"version": 0,
"is_current": false,
"status": "pending",
"quote_type": "service",
"title": "string",
"client_id": "9c0a607c-a9cf-449f-81fa-6fae124337c1",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_address": "string",
"seller_id": "9bcf6f7c-4af0-4d8b-89ca-b962aa7aaa09",
"seller_name": "string",
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string",
"section": "products",
"block_id": "string",
"optional": false,
"optional_included": false
}
],
"blocks": [
{
"id": "string",
"name": "string",
"position": 0,
"status": "pending",
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"recurring_total_cents": 0,
"valid_until": "string",
"estimated_start_date": "string",
"estimated_completion_date": "string",
"notes": "string",
"internal_notes": "string",
"observations": "string",
"terms_and_conditions": "string",
"payment_conditions": "string",
"approved_at": "string",
"rejected_at": "string",
"rejection_reason": "string",
"converted_to_sale": false,
"sale_id": "b4280fa8-ac6c-420b-8efc-97ba707e1451",
"merged_into_quote_id": "bf3d2127-4e85-4f99-8ac5-8ab330a9e97d",
"created_at": "string",
"updated_at": "string"
}
}
}

quote.deleted

The quote was permanently deleted.

Requiresquotes:readObjectQuote

Example body
{
"id": "evt_b1c607caec604feb888af7903facd811",
"type": "quote.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "quote",
"id": "54f08356-74eb-4a09-803c-5bfae5947ead",
"quote_number": "string",
"version": 0,
"is_current": false,
"status": "pending",
"quote_type": "service",
"title": "string",
"client_id": "9c0a607c-a9cf-449f-81fa-6fae124337c1",
"client_name": "string",
"client_email": "string",
"client_phone": "string",
"client_address": "string",
"seller_id": "9bcf6f7c-4af0-4d8b-89ca-b962aa7aaa09",
"seller_name": "string",
"items": [
{
"type": "product",
"catalog_item_id": "string",
"variation_id": "string",
"variation_name": "string",
"description": "string",
"quantity": 0,
"unit_price_cents": 0,
"total_cents": 0,
"notes": "string",
"section": "products",
"block_id": "string",
"optional": false,
"optional_included": false
}
],
"blocks": [
{
"id": "string",
"name": "string",
"position": 0,
"status": "pending",
"notes": "string"
}
],
"subtotal_cents": 0,
"discount_percentage": 0,
"discount_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"recurring_total_cents": 0,
"valid_until": "string",
"estimated_start_date": "string",
"estimated_completion_date": "string",
"notes": "string",
"internal_notes": "string",
"observations": "string",
"terms_and_conditions": "string",
"payment_conditions": "string",
"approved_at": "string",
"rejected_at": "string",
"rejection_reason": "string",
"converted_to_sale": false,
"sale_id": "b4280fa8-ac6c-420b-8efc-97ba707e1451",
"merged_into_quote_id": "bf3d2127-4e85-4f99-8ac5-8ab330a9e97d",
"created_at": "string",
"updated_at": "string"
}
}
}

Sales

sale.created

A sale was created, including by converting a quote, a service order or a contract.

Requiressales:readObjectSale

Example body
{
"id": "evt_b55c19fac7264edd830f3902b67fe485",
"type": "sale.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "sale",
"id": "3df5988d-6103-47cd-8bb2-a045333e95c5",
"sale_number": "string",
"version": 0,
"status": "active",
"origin": {
"type": "direct",
"id": "e6f19199-90cf-4295-81a6-ac592ec37385"
},
"receivable_managed_by": "sale",
"client_id": "bad8a8fd-af8c-4a4d-81f4-620590189e45",
"client_name": "string",
"seller_id": "721d8001-7c62-486d-8f19-043945f86f65",
"seller_name": "string",
"items": [
{
"type": "catalog",
"product_id": "5c80a85f-9511-4031-8821-edd3f0a0235d",
"variation_id": "fb4fa0f1-57d7-404d-8d18-c90937fa9da5",
"name": "string",
"variation_name": "string",
"quantity": 0,
"unit_price_cents": 0,
"original_price_cents": 0,
"is_promotional": false,
"total_price_cents": 0
}
],
"subtotal_cents": 0,
"discount_cents": 0,
"discount_percentage": 0,
"shipping_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"sale_date": "string",
"payment_method": "pix",
"payment_type": "immediate",
"payment_status": "pending",
"paid_cents": 0,
"installments": [
{
"id": "string",
"kind": "entry",
"number": 0,
"amount_cents": 0,
"due_date": "string",
"status": "pending",
"paid_cents": 0,
"remaining_cents": 0,
"paid_date": "string"
}
],
"payments": [
{
"id": "d5f89cc2-d8af-422d-82fc-82aa4450df65",
"installment_id": "string",
"amount_cents": 0,
"paid_at": "string",
"payment_method": "pix",
"notes": "string",
"receipt_number": "string",
"has_active_invoice": false,
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string"
}
],
"track_in_finance": false,
"invoice_locked": false,
"notes": "string",
"show_notes_on_receipt": false,
"requires_production": false,
"production_status": "pending",
"estimated_delivery_date": "string",
"production_notes": "string",
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

sale.updated

Something changed in the sale that has no event of its own: notes and production, rescheduled installments, sending to finance, the overdue status. changed_fields says what, except when the event arrives summarized: the overdue marking comes from the automatic routine and always arrives summarized.

Requiressales:readObjectSale

Example body
{
"id": "evt_218e71f9a314415d82289e013a3349a5",
"type": "sale.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "sale",
"id": "3df5988d-6103-47cd-8bb2-a045333e95c5",
"sale_number": "string",
"version": 0,
"status": "active",
"origin": {
"type": "direct",
"id": "e6f19199-90cf-4295-81a6-ac592ec37385"
},
"receivable_managed_by": "sale",
"client_id": "bad8a8fd-af8c-4a4d-81f4-620590189e45",
"client_name": "string",
"seller_id": "721d8001-7c62-486d-8f19-043945f86f65",
"seller_name": "string",
"items": [
{
"type": "catalog",
"product_id": "5c80a85f-9511-4031-8821-edd3f0a0235d",
"variation_id": "fb4fa0f1-57d7-404d-8d18-c90937fa9da5",
"name": "string",
"variation_name": "string",
"quantity": 0,
"unit_price_cents": 0,
"original_price_cents": 0,
"is_promotional": false,
"total_price_cents": 0
}
],
"subtotal_cents": 0,
"discount_cents": 0,
"discount_percentage": 0,
"shipping_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"sale_date": "string",
"payment_method": "pix",
"payment_type": "immediate",
"payment_status": "pending",
"paid_cents": 0,
"installments": [
{
"id": "string",
"kind": "entry",
"number": 0,
"amount_cents": 0,
"due_date": "string",
"status": "pending",
"paid_cents": 0,
"remaining_cents": 0,
"paid_date": "string"
}
],
"payments": [
{
"id": "d5f89cc2-d8af-422d-82fc-82aa4450df65",
"installment_id": "string",
"amount_cents": 0,
"paid_at": "string",
"payment_method": "pix",
"notes": "string",
"receipt_number": "string",
"has_active_invoice": false,
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string"
}
],
"track_in_finance": false,
"invoice_locked": false,
"notes": "string",
"show_notes_on_receipt": false,
"requires_production": false,
"production_status": "pending",
"estimated_delivery_date": "string",
"production_notes": "string",
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"notes"
]
}
}

sale.version_created

A new version of the sale was created (a commercial change). The id stays the same and version went up.

Requiressales:readObjectSale

Example body
{
"id": "evt_32d6b1f1669241cd8af564c9e387c5c5",
"type": "sale.version_created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "sale",
"id": "3df5988d-6103-47cd-8bb2-a045333e95c5",
"sale_number": "string",
"version": 0,
"status": "active",
"origin": {
"type": "direct",
"id": "e6f19199-90cf-4295-81a6-ac592ec37385"
},
"receivable_managed_by": "sale",
"client_id": "bad8a8fd-af8c-4a4d-81f4-620590189e45",
"client_name": "string",
"seller_id": "721d8001-7c62-486d-8f19-043945f86f65",
"seller_name": "string",
"items": [
{
"type": "catalog",
"product_id": "5c80a85f-9511-4031-8821-edd3f0a0235d",
"variation_id": "fb4fa0f1-57d7-404d-8d18-c90937fa9da5",
"name": "string",
"variation_name": "string",
"quantity": 0,
"unit_price_cents": 0,
"original_price_cents": 0,
"is_promotional": false,
"total_price_cents": 0
}
],
"subtotal_cents": 0,
"discount_cents": 0,
"discount_percentage": 0,
"shipping_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"sale_date": "string",
"payment_method": "pix",
"payment_type": "immediate",
"payment_status": "pending",
"paid_cents": 0,
"installments": [
{
"id": "string",
"kind": "entry",
"number": 0,
"amount_cents": 0,
"due_date": "string",
"status": "pending",
"paid_cents": 0,
"remaining_cents": 0,
"paid_date": "string"
}
],
"payments": [
{
"id": "d5f89cc2-d8af-422d-82fc-82aa4450df65",
"installment_id": "string",
"amount_cents": 0,
"paid_at": "string",
"payment_method": "pix",
"notes": "string",
"receipt_number": "string",
"has_active_invoice": false,
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string"
}
],
"track_in_finance": false,
"invoice_locked": false,
"notes": "string",
"show_notes_on_receipt": false,
"requires_production": false,
"production_status": "pending",
"estimated_delivery_date": "string",
"production_notes": "string",
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

sale.canceled

The sale was canceled.

Requiressales:readObjectSale

Example body
{
"id": "evt_73d7af85828b4a5d8edf701dc83f14c5",
"type": "sale.canceled",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "sale",
"id": "3df5988d-6103-47cd-8bb2-a045333e95c5",
"sale_number": "string",
"version": 0,
"status": "active",
"origin": {
"type": "direct",
"id": "e6f19199-90cf-4295-81a6-ac592ec37385"
},
"receivable_managed_by": "sale",
"client_id": "bad8a8fd-af8c-4a4d-81f4-620590189e45",
"client_name": "string",
"seller_id": "721d8001-7c62-486d-8f19-043945f86f65",
"seller_name": "string",
"items": [
{
"type": "catalog",
"product_id": "5c80a85f-9511-4031-8821-edd3f0a0235d",
"variation_id": "fb4fa0f1-57d7-404d-8d18-c90937fa9da5",
"name": "string",
"variation_name": "string",
"quantity": 0,
"unit_price_cents": 0,
"original_price_cents": 0,
"is_promotional": false,
"total_price_cents": 0
}
],
"subtotal_cents": 0,
"discount_cents": 0,
"discount_percentage": 0,
"shipping_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"sale_date": "string",
"payment_method": "pix",
"payment_type": "immediate",
"payment_status": "pending",
"paid_cents": 0,
"installments": [
{
"id": "string",
"kind": "entry",
"number": 0,
"amount_cents": 0,
"due_date": "string",
"status": "pending",
"paid_cents": 0,
"remaining_cents": 0,
"paid_date": "string"
}
],
"payments": [
{
"id": "d5f89cc2-d8af-422d-82fc-82aa4450df65",
"installment_id": "string",
"amount_cents": 0,
"paid_at": "string",
"payment_method": "pix",
"notes": "string",
"receipt_number": "string",
"has_active_invoice": false,
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string"
}
],
"track_in_finance": false,
"invoice_locked": false,
"notes": "string",
"show_notes_on_receipt": false,
"requires_production": false,
"production_status": "pending",
"estimated_delivery_date": "string",
"production_notes": "string",
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

sale.payment_registered

A payment was registered on the sale.

Requiressales:readObjectSale

Example body
{
"id": "evt_dbc2c4b5c2a145cd8948ceadbeade905",
"type": "sale.payment_registered",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "sale",
"id": "3df5988d-6103-47cd-8bb2-a045333e95c5",
"sale_number": "string",
"version": 0,
"status": "active",
"origin": {
"type": "direct",
"id": "e6f19199-90cf-4295-81a6-ac592ec37385"
},
"receivable_managed_by": "sale",
"client_id": "bad8a8fd-af8c-4a4d-81f4-620590189e45",
"client_name": "string",
"seller_id": "721d8001-7c62-486d-8f19-043945f86f65",
"seller_name": "string",
"items": [
{
"type": "catalog",
"product_id": "5c80a85f-9511-4031-8821-edd3f0a0235d",
"variation_id": "fb4fa0f1-57d7-404d-8d18-c90937fa9da5",
"name": "string",
"variation_name": "string",
"quantity": 0,
"unit_price_cents": 0,
"original_price_cents": 0,
"is_promotional": false,
"total_price_cents": 0
}
],
"subtotal_cents": 0,
"discount_cents": 0,
"discount_percentage": 0,
"shipping_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"sale_date": "string",
"payment_method": "pix",
"payment_type": "immediate",
"payment_status": "pending",
"paid_cents": 0,
"installments": [
{
"id": "string",
"kind": "entry",
"number": 0,
"amount_cents": 0,
"due_date": "string",
"status": "pending",
"paid_cents": 0,
"remaining_cents": 0,
"paid_date": "string"
}
],
"payments": [
{
"id": "d5f89cc2-d8af-422d-82fc-82aa4450df65",
"installment_id": "string",
"amount_cents": 0,
"paid_at": "string",
"payment_method": "pix",
"notes": "string",
"receipt_number": "string",
"has_active_invoice": false,
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string"
}
],
"track_in_finance": false,
"invoice_locked": false,
"notes": "string",
"show_notes_on_receipt": false,
"requires_production": false,
"production_status": "pending",
"estimated_delivery_date": "string",
"production_notes": "string",
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

sale.payment_canceled

A payment on the sale was reversed.

Requiressales:readObjectSale

Example body
{
"id": "evt_f258ce86ccdb497f8984186c6b399011",
"type": "sale.payment_canceled",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "sale",
"id": "3df5988d-6103-47cd-8bb2-a045333e95c5",
"sale_number": "string",
"version": 0,
"status": "active",
"origin": {
"type": "direct",
"id": "e6f19199-90cf-4295-81a6-ac592ec37385"
},
"receivable_managed_by": "sale",
"client_id": "bad8a8fd-af8c-4a4d-81f4-620590189e45",
"client_name": "string",
"seller_id": "721d8001-7c62-486d-8f19-043945f86f65",
"seller_name": "string",
"items": [
{
"type": "catalog",
"product_id": "5c80a85f-9511-4031-8821-edd3f0a0235d",
"variation_id": "fb4fa0f1-57d7-404d-8d18-c90937fa9da5",
"name": "string",
"variation_name": "string",
"quantity": 0,
"unit_price_cents": 0,
"original_price_cents": 0,
"is_promotional": false,
"total_price_cents": 0
}
],
"subtotal_cents": 0,
"discount_cents": 0,
"discount_percentage": 0,
"shipping_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"sale_date": "string",
"payment_method": "pix",
"payment_type": "immediate",
"payment_status": "pending",
"paid_cents": 0,
"installments": [
{
"id": "string",
"kind": "entry",
"number": 0,
"amount_cents": 0,
"due_date": "string",
"status": "pending",
"paid_cents": 0,
"remaining_cents": 0,
"paid_date": "string"
}
],
"payments": [
{
"id": "d5f89cc2-d8af-422d-82fc-82aa4450df65",
"installment_id": "string",
"amount_cents": 0,
"paid_at": "string",
"payment_method": "pix",
"notes": "string",
"receipt_number": "string",
"has_active_invoice": false,
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string"
}
],
"track_in_finance": false,
"invoice_locked": false,
"notes": "string",
"show_notes_on_receipt": false,
"requires_production": false,
"production_status": "pending",
"estimated_delivery_date": "string",
"production_notes": "string",
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

sale.paid

The sale became fully paid. It is sent together with the event of the action that paid it off, including a sale that is created already paid.

Requiressales:readObjectSale

Example body
{
"id": "evt_12e1bde467114ac78089ced6889aafe9",
"type": "sale.paid",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "sale",
"id": "3df5988d-6103-47cd-8bb2-a045333e95c5",
"sale_number": "string",
"version": 0,
"status": "active",
"origin": {
"type": "direct",
"id": "e6f19199-90cf-4295-81a6-ac592ec37385"
},
"receivable_managed_by": "sale",
"client_id": "bad8a8fd-af8c-4a4d-81f4-620590189e45",
"client_name": "string",
"seller_id": "721d8001-7c62-486d-8f19-043945f86f65",
"seller_name": "string",
"items": [
{
"type": "catalog",
"product_id": "5c80a85f-9511-4031-8821-edd3f0a0235d",
"variation_id": "fb4fa0f1-57d7-404d-8d18-c90937fa9da5",
"name": "string",
"variation_name": "string",
"quantity": 0,
"unit_price_cents": 0,
"original_price_cents": 0,
"is_promotional": false,
"total_price_cents": 0
}
],
"subtotal_cents": 0,
"discount_cents": 0,
"discount_percentage": 0,
"shipping_cents": 0,
"additional_costs_cents": 0,
"additional_costs_description": "string",
"total_cents": 0,
"sale_date": "string",
"payment_method": "pix",
"payment_type": "immediate",
"payment_status": "pending",
"paid_cents": 0,
"installments": [
{
"id": "string",
"kind": "entry",
"number": 0,
"amount_cents": 0,
"due_date": "string",
"status": "pending",
"paid_cents": 0,
"remaining_cents": 0,
"paid_date": "string"
}
],
"payments": [
{
"id": "d5f89cc2-d8af-422d-82fc-82aa4450df65",
"installment_id": "string",
"amount_cents": 0,
"paid_at": "string",
"payment_method": "pix",
"notes": "string",
"receipt_number": "string",
"has_active_invoice": false,
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string"
}
],
"track_in_finance": false,
"invoice_locked": false,
"notes": "string",
"show_notes_on_receipt": false,
"requires_production": false,
"production_status": "pending",
"estimated_delivery_date": "string",
"production_notes": "string",
"created_channel": "panel",
"canceled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

Finance

financial_transaction.created

A financial entry was created, through any path: finance, sale, service order completion, contract, goods receipt, fleet, construction project and recurrence. If it is created already paid, financial_transaction.paid is sent too.

Requiresfinance:readObjectFinancialTransaction

Example body
{
"id": "evt_9548b6e35cea4c418fee8b57bc12dcdd",
"type": "financial_transaction.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "financial_transaction",
"id": "440e1893-0b2d-4d71-84b8-806f944535fd",
"type": "income",
"status": "pending",
"description": "string",
"amount_cents": 0,
"transaction_date": "string",
"due_date": "string",
"payment_date": "string",
"payment_method": "pix",
"account_id": "6476dd47-2b09-4d85-8284-b7d7d4029905",
"category_id": "8a788956-82d3-446d-89df-474edd5de125",
"client_id": "3677b94b-3b88-4bb9-8c51-111f85c6dc9d",
"client_portal_visible": false,
"notes": "string",
"source": "manual",
"origin": "manual",
"sale_id": "ed827d8b-336d-485d-8d87-14e3a17f2365",
"parent_transaction_id": "975819d3-6363-420d-8254-01ebc3459105",
"installment_number": 0,
"total_installments": 0,
"original_amount_cents": 0,
"is_recurring": false,
"recurrence_type": "daily",
"recurrence_interval": 0,
"recurrence_open_ended": false,
"transfer_pair_id": "bdf82cde-f6ac-4527-870f-d0206fd475a9",
"created_channel": "panel",
"created_at": "string",
"updated_at": "string"
}
}
}

financial_transaction.updated

Some field of the entry changed.

Requiresfinance:readObjectFinancialTransaction

Example body
{
"id": "evt_a9bfdc5822de44c78845f8826f79e541",
"type": "financial_transaction.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "financial_transaction",
"id": "440e1893-0b2d-4d71-84b8-806f944535fd",
"type": "income",
"status": "pending",
"description": "string",
"amount_cents": 0,
"transaction_date": "string",
"due_date": "string",
"payment_date": "string",
"payment_method": "pix",
"account_id": "6476dd47-2b09-4d85-8284-b7d7d4029905",
"category_id": "8a788956-82d3-446d-89df-474edd5de125",
"client_id": "3677b94b-3b88-4bb9-8c51-111f85c6dc9d",
"client_portal_visible": false,
"notes": "string",
"source": "manual",
"origin": "manual",
"sale_id": "ed827d8b-336d-485d-8d87-14e3a17f2365",
"parent_transaction_id": "975819d3-6363-420d-8254-01ebc3459105",
"installment_number": 0,
"total_installments": 0,
"original_amount_cents": 0,
"is_recurring": false,
"recurrence_type": "daily",
"recurrence_interval": 0,
"recurrence_open_ended": false,
"transfer_pair_id": "bdf82cde-f6ac-4527-870f-d0206fd475a9",
"created_channel": "panel",
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"notes"
]
}
}

financial_transaction.paid

The entry became paid. If other fields changed in the same write, financial_transaction.updated is sent too.

Requiresfinance:readObjectFinancialTransaction

Example body
{
"id": "evt_8c15966fa4f748c58159539f91a2b725",
"type": "financial_transaction.paid",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "financial_transaction",
"id": "440e1893-0b2d-4d71-84b8-806f944535fd",
"type": "income",
"status": "pending",
"description": "string",
"amount_cents": 0,
"transaction_date": "string",
"due_date": "string",
"payment_date": "string",
"payment_method": "pix",
"account_id": "6476dd47-2b09-4d85-8284-b7d7d4029905",
"category_id": "8a788956-82d3-446d-89df-474edd5de125",
"client_id": "3677b94b-3b88-4bb9-8c51-111f85c6dc9d",
"client_portal_visible": false,
"notes": "string",
"source": "manual",
"origin": "manual",
"sale_id": "ed827d8b-336d-485d-8d87-14e3a17f2365",
"parent_transaction_id": "975819d3-6363-420d-8254-01ebc3459105",
"installment_number": 0,
"total_installments": 0,
"original_amount_cents": 0,
"is_recurring": false,
"recurrence_type": "daily",
"recurrence_interval": 0,
"recurrence_open_ended": false,
"transfer_pair_id": "bdf82cde-f6ac-4527-870f-d0206fd475a9",
"created_channel": "panel",
"created_at": "string",
"updated_at": "string"
}
}
}

financial_transaction.deleted

The entry was deleted. When a series is deleted, one event is sent per deleted entry.

Requiresfinance:readObjectFinancialTransaction

Example body
{
"id": "evt_074ec1c2c4ae409f85e10aa45c0ce971",
"type": "financial_transaction.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "financial_transaction",
"id": "440e1893-0b2d-4d71-84b8-806f944535fd",
"type": "income",
"status": "pending",
"description": "string",
"amount_cents": 0,
"transaction_date": "string",
"due_date": "string",
"payment_date": "string",
"payment_method": "pix",
"account_id": "6476dd47-2b09-4d85-8284-b7d7d4029905",
"category_id": "8a788956-82d3-446d-89df-474edd5de125",
"client_id": "3677b94b-3b88-4bb9-8c51-111f85c6dc9d",
"client_portal_visible": false,
"notes": "string",
"source": "manual",
"origin": "manual",
"sale_id": "ed827d8b-336d-485d-8d87-14e3a17f2365",
"parent_transaction_id": "975819d3-6363-420d-8254-01ebc3459105",
"installment_number": 0,
"total_installments": 0,
"original_amount_cents": 0,
"is_recurring": false,
"recurrence_type": "daily",
"recurrence_interval": 0,
"recurrence_open_ended": false,
"transfer_pair_id": "bdf82cde-f6ac-4527-870f-d0206fd475a9",
"created_channel": "panel",
"created_at": "string",
"updated_at": "string"
}
}
}

Schedule

appointment.created

An appointment was booked on the schedule.

Requiresappointments:readObjectAppointment

Example body
{
"id": "evt_420ea5bab102427b8b5dd4303c4d24a1",
"type": "appointment.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "appointment",
"id": "8fd4dd11-15c4-43ad-8d1c-33d963de9605",
"title": "string",
"description": "string",
"starts_at": "string",
"ends_at": "string",
"duration_minutes": 0,
"period": "morning",
"status": "scheduled",
"payment_status": "pending",
"price_cents": 0,
"appointment_type": "string",
"address": "string",
"client_address_id": "720e2cbc-8b9c-447f-8227-121e7e9e2a01",
"client_id": "8965ae61-cc29-420d-8581-c8f95609d465",
"client_name": "string",
"technician_id": "51e8ee8a-b758-451f-84f3-0b34c7c47881",
"technician_name": "string",
"auxiliar_id": "327a31b7-abd8-4635-8e94-ad17235b7325",
"auxiliar_name": "string",
"seller_id": "f1393de5-3390-491d-8a82-60bd6bdd8645",
"seller_name": "string",
"notes": "string",
"completion_notes": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

appointment.updated

An appointment field other than the time and the status changed.

Requiresappointments:readObjectAppointment

Example body
{
"id": "evt_19eb96b9cfc7468d876a9b41b85f0ac5",
"type": "appointment.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "appointment",
"id": "8fd4dd11-15c4-43ad-8d1c-33d963de9605",
"title": "string",
"description": "string",
"starts_at": "string",
"ends_at": "string",
"duration_minutes": 0,
"period": "morning",
"status": "scheduled",
"payment_status": "pending",
"price_cents": 0,
"appointment_type": "string",
"address": "string",
"client_address_id": "720e2cbc-8b9c-447f-8227-121e7e9e2a01",
"client_id": "8965ae61-cc29-420d-8581-c8f95609d465",
"client_name": "string",
"technician_id": "51e8ee8a-b758-451f-84f3-0b34c7c47881",
"technician_name": "string",
"auxiliar_id": "327a31b7-abd8-4635-8e94-ad17235b7325",
"auxiliar_name": "string",
"seller_id": "f1393de5-3390-491d-8a82-60bd6bdd8645",
"seller_name": "string",
"notes": "string",
"completion_notes": "string",
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"notes"
]
}
}

appointment.rescheduled

The appointment time changed: starts_at, ends_at, duration_minutes or period.

Requiresappointments:readObjectAppointment

Example body
{
"id": "evt_9fee649a0fae4cbb84295ba408eeec49",
"type": "appointment.rescheduled",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "appointment",
"id": "8fd4dd11-15c4-43ad-8d1c-33d963de9605",
"title": "string",
"description": "string",
"starts_at": "string",
"ends_at": "string",
"duration_minutes": 0,
"period": "morning",
"status": "scheduled",
"payment_status": "pending",
"price_cents": 0,
"appointment_type": "string",
"address": "string",
"client_address_id": "720e2cbc-8b9c-447f-8227-121e7e9e2a01",
"client_id": "8965ae61-cc29-420d-8581-c8f95609d465",
"client_name": "string",
"technician_id": "51e8ee8a-b758-451f-84f3-0b34c7c47881",
"technician_name": "string",
"auxiliar_id": "327a31b7-abd8-4635-8e94-ad17235b7325",
"auxiliar_name": "string",
"seller_id": "f1393de5-3390-491d-8a82-60bd6bdd8645",
"seller_name": "string",
"notes": "string",
"completion_notes": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

appointment.status_changed

The appointment status (status) or the completion notes changed.

Requiresappointments:readObjectAppointment

Example body
{
"id": "evt_07c11a33570046858805876358a987c5",
"type": "appointment.status_changed",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "appointment",
"id": "8fd4dd11-15c4-43ad-8d1c-33d963de9605",
"title": "string",
"description": "string",
"starts_at": "string",
"ends_at": "string",
"duration_minutes": 0,
"period": "morning",
"status": "scheduled",
"payment_status": "pending",
"price_cents": 0,
"appointment_type": "string",
"address": "string",
"client_address_id": "720e2cbc-8b9c-447f-8227-121e7e9e2a01",
"client_id": "8965ae61-cc29-420d-8581-c8f95609d465",
"client_name": "string",
"technician_id": "51e8ee8a-b758-451f-84f3-0b34c7c47881",
"technician_name": "string",
"auxiliar_id": "327a31b7-abd8-4635-8e94-ad17235b7325",
"auxiliar_name": "string",
"seller_id": "f1393de5-3390-491d-8a82-60bd6bdd8645",
"seller_name": "string",
"notes": "string",
"completion_notes": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

appointment.deleted

The appointment was deleted.

Requiresappointments:readObjectAppointment

Example body
{
"id": "evt_9ead2117538840298009d20330af060d",
"type": "appointment.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "appointment",
"id": "8fd4dd11-15c4-43ad-8d1c-33d963de9605",
"title": "string",
"description": "string",
"starts_at": "string",
"ends_at": "string",
"duration_minutes": 0,
"period": "morning",
"status": "scheduled",
"payment_status": "pending",
"price_cents": 0,
"appointment_type": "string",
"address": "string",
"client_address_id": "720e2cbc-8b9c-447f-8227-121e7e9e2a01",
"client_id": "8965ae61-cc29-420d-8581-c8f95609d465",
"client_name": "string",
"technician_id": "51e8ee8a-b758-451f-84f3-0b34c7c47881",
"technician_name": "string",
"auxiliar_id": "327a31b7-abd8-4635-8e94-ad17235b7325",
"auxiliar_name": "string",
"seller_id": "f1393de5-3390-491d-8a82-60bd6bdd8645",
"seller_name": "string",
"notes": "string",
"completion_notes": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

Products and stock

product.created

A product was created, including by copy, import and sharing between stores. Each store receives the event for its own copy.

Requiresproducts:readObjectProduct

Example body
{
"id": "evt_84a2cb4010f8444f89c977d2f5fb51d9",
"type": "product.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "product",
"id": "8460cb5b-ac68-4aa1-883d-68a746a2e91d",
"name": "string",
"description": "string",
"price_cents": 0,
"promotional_price_cents": 0,
"sku": "string",
"stock": 0,
"min_stock": 0,
"unidade_comercial": "string",
"image_url": "string",
"show_in_catalog": false,
"has_variations": false,
"custom_link": "string",
"custom_link_text": "string",
"custom_link_exclusive": false,
"youtube_video_url": "string",
"has_youtube_video": false,
"category_id": "bd69db7e-4f9b-4fc3-8666-bf74c8d56751",
"category_name": "string",
"ncm": "string",
"cfop": "string",
"cest": "string",
"origem_mercadoria": "string",
"gtin": "string",
"is_shared": false,
"is_share_master": false,
"variations": [
{
"object": "product_variation",
"id": "20132e27-6be5-4c79-8314-fb039873756d",
"product_id": "89ddb6af-4f54-4059-8419-6a233790725d",
"name": "string",
"price_cents": 0,
"promotional_price_cents": 0,
"stock": 0,
"image_url": "string",
"attributes": {},
"created_at": "string",
"updated_at": "string"
}
],
"created_at": "string",
"updated_at": "string"
}
}
}

product.updated

A product or variation field changed. A stock-only change is not sent here: it goes out as stock.changed.

Requiresproducts:readObjectProduct

Example body
{
"id": "evt_ce5ebe9ff3b94c5986f013e393976b2d",
"type": "product.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "product",
"id": "8460cb5b-ac68-4aa1-883d-68a746a2e91d",
"name": "string",
"description": "string",
"price_cents": 0,
"promotional_price_cents": 0,
"sku": "string",
"stock": 0,
"min_stock": 0,
"unidade_comercial": "string",
"image_url": "string",
"show_in_catalog": false,
"has_variations": false,
"custom_link": "string",
"custom_link_text": "string",
"custom_link_exclusive": false,
"youtube_video_url": "string",
"has_youtube_video": false,
"category_id": "bd69db7e-4f9b-4fc3-8666-bf74c8d56751",
"category_name": "string",
"ncm": "string",
"cfop": "string",
"cest": "string",
"origem_mercadoria": "string",
"gtin": "string",
"is_shared": false,
"is_share_master": false,
"variations": [
{
"object": "product_variation",
"id": "20132e27-6be5-4c79-8314-fb039873756d",
"product_id": "89ddb6af-4f54-4059-8419-6a233790725d",
"name": "string",
"price_cents": 0,
"promotional_price_cents": 0,
"stock": 0,
"image_url": "string",
"attributes": {},
"created_at": "string",
"updated_at": "string"
}
],
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"description"
]
}
}

product.deleted

The product was deleted.

Requiresproducts:readObjectProduct

Example body
{
"id": "evt_27e5daeda98f470d8374b8a56504c745",
"type": "product.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "product",
"id": "8460cb5b-ac68-4aa1-883d-68a746a2e91d",
"name": "string",
"description": "string",
"price_cents": 0,
"promotional_price_cents": 0,
"sku": "string",
"stock": 0,
"min_stock": 0,
"unidade_comercial": "string",
"image_url": "string",
"show_in_catalog": false,
"has_variations": false,
"custom_link": "string",
"custom_link_text": "string",
"custom_link_exclusive": false,
"youtube_video_url": "string",
"has_youtube_video": false,
"category_id": "bd69db7e-4f9b-4fc3-8666-bf74c8d56751",
"category_name": "string",
"ncm": "string",
"cfop": "string",
"cest": "string",
"origem_mercadoria": "string",
"gtin": "string",
"is_shared": false,
"is_share_master": false,
"variations": [
{
"object": "product_variation",
"id": "20132e27-6be5-4c79-8314-fb039873756d",
"product_id": "89ddb6af-4f54-4059-8419-6a233790725d",
"name": "string",
"price_cents": 0,
"promotional_price_cents": 0,
"stock": 0,
"image_url": "string",
"attributes": {},
"created_at": "string",
"updated_at": "string"
}
],
"created_at": "string",
"updated_at": "string"
}
}
}

stock.changed

A stock movement happened. The object is the movement, the same one GET /public/v1/stock_movements returns, with the balance after it. One event per movement.

Requiresproducts:readObjectStockMovement

Example body
{
"id": "evt_6870b5c597744a2d819d02dd33810cc5",
"type": "stock.changed",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "stock_movement",
"id": "c5fcb5ff-f991-4c39-825a-5733a729357d",
"product_id": "1b6b2b27-6609-4189-8628-9223c7311bdd",
"variation_id": "6cd75a09-8fb7-4add-867f-28e19433c545",
"type": "initial_balance",
"quantity": 0,
"balance_after": 0,
"sale_id": "5a395907-4f08-4d65-8038-76d70a29eba5",
"reverses_id": "acec8b2b-b1ae-4395-8a43-a26b2f649705",
"notes": "string",
"created_at": "string"
}
}
}

Services

service.created

A service was created.

Requiresservices:readObjectService

Example body
{
"id": "evt_e33fcbbc4b22495b8b6e6306cf0a8361",
"type": "service.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "service",
"id": "f8b60d23-655b-42fd-8963-b99b0d92e945",
"name": "string",
"description": "string",
"base_price_cents": 0,
"duration_minutes": 0,
"preparation_time": 0,
"requires_materials": false,
"image_url": "string",
"show_in_catalog": false,
"max_advance_booking_days": 0,
"min_advance_booking_hours": 0,
"active": false,
"category_id": "5bd3ec86-d7bf-48cb-835f-27908695e879",
"category_name": "string",
"lc116_code": "string",
"national_service_code": "string",
"municipal_tax_code": "string",
"nbs_code": "string",
"iss_rate": 0,
"iss_retained_default": false,
"cnae": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

service.updated

Some service field changed.

Requiresservices:readObjectService

Example body
{
"id": "evt_4ed5c1d362c0470d8c108edbdd848145",
"type": "service.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "service",
"id": "f8b60d23-655b-42fd-8963-b99b0d92e945",
"name": "string",
"description": "string",
"base_price_cents": 0,
"duration_minutes": 0,
"preparation_time": 0,
"requires_materials": false,
"image_url": "string",
"show_in_catalog": false,
"max_advance_booking_days": 0,
"min_advance_booking_hours": 0,
"active": false,
"category_id": "5bd3ec86-d7bf-48cb-835f-27908695e879",
"category_name": "string",
"lc116_code": "string",
"national_service_code": "string",
"municipal_tax_code": "string",
"nbs_code": "string",
"iss_rate": 0,
"iss_retained_default": false,
"cnae": "string",
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"description"
]
}
}

service.deleted

The service was deleted.

Requiresservices:readObjectService

Example body
{
"id": "evt_74738a7195cd428d81bfe36991695605",
"type": "service.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "service",
"id": "f8b60d23-655b-42fd-8963-b99b0d92e945",
"name": "string",
"description": "string",
"base_price_cents": 0,
"duration_minutes": 0,
"preparation_time": 0,
"requires_materials": false,
"image_url": "string",
"show_in_catalog": false,
"max_advance_booking_days": 0,
"min_advance_booking_hours": 0,
"active": false,
"category_id": "5bd3ec86-d7bf-48cb-835f-27908695e879",
"category_name": "string",
"lc116_code": "string",
"national_service_code": "string",
"municipal_tax_code": "string",
"nbs_code": "string",
"iss_rate": 0,
"iss_retained_default": false,
"cnae": "string",
"created_at": "string",
"updated_at": "string"
}
}
}

Tasks

task.created

A task was created, including each occurrence generated by a repeating task.

Requirestasks:readObjectTask

Example body
{
"id": "evt_76a19218af8b446985a78e441987d5cd",
"type": "task.created",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "task",
"id": "6ebfb59b-30ff-4c79-8e9d-f65fa2915f3d",
"task_number": "string",
"title": "string",
"description": "string",
"status": "todo",
"priority": "low",
"assignee": {
"id": "eebc1328-52f4-45e5-8b7b-ccd8294595c5",
"type": "org_member",
"name": "string"
},
"requester": {
"id": "3becae3f-66f0-4181-871d-1e6bc9e00b0d",
"type": "org_member",
"name": "string"
},
"requester_name": "string",
"due_date": "string",
"started_at": "string",
"completed_at": "string",
"blocked_reason": "string",
"justification": "string",
"client_id": "2ad7a203-52d2-4521-80db-d1cf0773935d",
"service_order_id": "b43e7c3e-3778-4e9f-841e-992445d697c9",
"financial_transaction_id": "74c29336-fba4-43af-8831-bf6014389a89",
"is_recurring": false,
"recurrence_type": "daily",
"parent_task_id": "78c61202-d65a-4187-860a-01045974f2e1",
"is_overdue": false,
"created_at": "string",
"updated_at": "string"
}
}
}

task.updated

A task field other than the status changed. is_overdue changing on its own does not send an event.

Requirestasks:readObjectTask

Example body
{
"id": "evt_3355e317be8c447180216243edc2345d",
"type": "task.updated",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "task",
"id": "6ebfb59b-30ff-4c79-8e9d-f65fa2915f3d",
"task_number": "string",
"title": "string",
"description": "string",
"status": "todo",
"priority": "low",
"assignee": {
"id": "eebc1328-52f4-45e5-8b7b-ccd8294595c5",
"type": "org_member",
"name": "string"
},
"requester": {
"id": "3becae3f-66f0-4181-871d-1e6bc9e00b0d",
"type": "org_member",
"name": "string"
},
"requester_name": "string",
"due_date": "string",
"started_at": "string",
"completed_at": "string",
"blocked_reason": "string",
"justification": "string",
"client_id": "2ad7a203-52d2-4521-80db-d1cf0773935d",
"service_order_id": "b43e7c3e-3778-4e9f-841e-992445d697c9",
"financial_transaction_id": "74c29336-fba4-43af-8831-bf6014389a89",
"is_recurring": false,
"recurrence_type": "daily",
"parent_task_id": "78c61202-d65a-4187-860a-01045974f2e1",
"is_overdue": false,
"created_at": "string",
"updated_at": "string"
},
"changed_fields": [
"description"
]
}
}

task.status_changed

The task status changed, including automatic blocking and unblocking by dependency.

Requirestasks:readObjectTask

Example body
{
"id": "evt_13d7b97d8dee4dad89c089f5e08b2b25",
"type": "task.status_changed",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "task",
"id": "6ebfb59b-30ff-4c79-8e9d-f65fa2915f3d",
"task_number": "string",
"title": "string",
"description": "string",
"status": "todo",
"priority": "low",
"assignee": {
"id": "eebc1328-52f4-45e5-8b7b-ccd8294595c5",
"type": "org_member",
"name": "string"
},
"requester": {
"id": "3becae3f-66f0-4181-871d-1e6bc9e00b0d",
"type": "org_member",
"name": "string"
},
"requester_name": "string",
"due_date": "string",
"started_at": "string",
"completed_at": "string",
"blocked_reason": "string",
"justification": "string",
"client_id": "2ad7a203-52d2-4521-80db-d1cf0773935d",
"service_order_id": "b43e7c3e-3778-4e9f-841e-992445d697c9",
"financial_transaction_id": "74c29336-fba4-43af-8831-bf6014389a89",
"is_recurring": false,
"recurrence_type": "daily",
"parent_task_id": "78c61202-d65a-4187-860a-01045974f2e1",
"is_overdue": false,
"created_at": "string",
"updated_at": "string"
}
}
}

task.deleted

The task was deleted. When a series is deleted, one event is sent per deleted task.

Requirestasks:readObjectTask

Example body
{
"id": "evt_e525f495391f4f3d82bf154dcf22b265",
"type": "task.deleted",
"api_version": "v1",
"timestamp": "2026-09-16T14:30:00.000Z",
"organization_id": "b66efbea-05c3-4875-8002-e58a1a2b6645",
"data": {
"object": {
"object": "task",
"id": "6ebfb59b-30ff-4c79-8e9d-f65fa2915f3d",
"task_number": "string",
"title": "string",
"description": "string",
"status": "todo",
"priority": "low",
"assignee": {
"id": "eebc1328-52f4-45e5-8b7b-ccd8294595c5",
"type": "org_member",
"name": "string"
},
"requester": {
"id": "3becae3f-66f0-4181-871d-1e6bc9e00b0d",
"type": "org_member",
"name": "string"
},
"requester_name": "string",
"due_date": "string",
"started_at": "string",
"completed_at": "string",
"blocked_reason": "string",
"justification": "string",
"client_id": "2ad7a203-52d2-4521-80db-d1cf0773935d",
"service_order_id": "b43e7c3e-3778-4e9f-841e-992445d697c9",
"financial_transaction_id": "74c29336-fba4-43af-8831-bf6014389a89",
"is_recurring": false,
"recurrence_type": "daily",
"parent_task_id": "78c61202-d65a-4187-860a-01045974f2e1",
"is_overdue": false,
"created_at": "string",
"updated_at": "string"
}
}
}