Events
Record customer moments that can trigger journeys and enrich contact history.
10 generated endpoints in this resource group.
/event-typesList event types#
Returns predefined and custom event types that can be recorded against contacts.
Authorization
Scheme
- bearerAuth
Required scopes
- event_type:list
Allowed roles
- owner
- admin
- agent
List event types in the workspace.
Optional parameters
- Name
pageSize- Type
- query integer
- Description
- Optional parameter.
- Name
pageToken- Type
- query string
- Description
- Optional parameter.
Responses
- Name
200- Type
- application/json
- Description
- List of event types
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -G "https://api.flownally.com/v1/event-types" \
-H "Authorization: Bearer {token}" \
-d pageSize="{pageSize}" \
-d pageToken="{pageToken}"Response
{
"eventTypes": [
{
"id": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"name": "order.paid",
"description": "Customer paid for an order.",
"payloadSchema": {
"type": "object",
"properties": {
"orderId": {
"type": "string"
},
"total": {
"type": "number"
}
},
"required": [
"orderId"
]
},
"createdAt": "2026-04-30T09:30:00Z",
"updatedAt": "2026-04-30T09:30:00Z"
}
],
"nextPageToken": "string",
"totalSize": 0
}/event-typesCreate event type#
Creates a custom event type with an optional JSON Schema for payload validation.
Authorization
Scheme
- bearerAuth
Required scopes
- event_type:create
Allowed roles
- owner
- admin
- agent
Create an event type in the workspace.
Request body
Send a application/json body. The body is required for this operation.
Required attributes
- Name
name- Type
- string
- Description
- Required request attribute.
Optional attributes
- Name
description- Type
- string
- Description
- Optional request attribute.
- Name
payloadSchema- Type
- object
- Description
- Optional request attribute.
Responses
- Name
201- Type
- application/json
- Description
- Event type created
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X POST "https://api.flownally.com/v1/event-types" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"name": "order.paid",
"description": "Customer paid for an order.",
"payloadSchema": {
"type": "object",
"properties": {
"orderId": {
"type": "string"
},
"total": {
"type": "number"
}
},
"required": [
"orderId"
]
}
}'Response
{
"id": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"name": "order.paid",
"description": "Customer paid for an order.",
"payloadSchema": {
"type": "object",
"properties": {
"orderId": {
"type": "string"
},
"total": {
"type": "number"
}
},
"required": [
"orderId"
]
},
"createdAt": "2026-04-30T09:30:00Z",
"updatedAt": "2026-04-30T09:30:00Z"
}/event-types/{id}Get event type#
Authorization
Scheme
- bearerAuth
Required scopes
- event_type:read
Allowed roles
- owner
- admin
- agent
Read an event type in the workspace.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Responses
- Name
200- Type
- application/json
- Description
- Event type details
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X GET "https://api.flownally.com/v1/event-types/{id}" \
-H "Authorization: Bearer {token}"Response
{
"id": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"name": "order.paid",
"description": "Customer paid for an order.",
"payloadSchema": {
"type": "object",
"properties": {
"orderId": {
"type": "string"
},
"total": {
"type": "number"
}
},
"required": [
"orderId"
]
},
"createdAt": "2026-04-30T09:30:00Z",
"updatedAt": "2026-04-30T09:30:00Z"
}/event-types/{id}Update event type#
Updates an event type. Schema changes must be backward-compatible with stored events.
Authorization
Scheme
- bearerAuth
Required scopes
- event_type:update
Allowed roles
- owner
- admin
- agent
Update an event type in the workspace.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Request body
Send a application/json body. The body is required for this operation.
Optional attributes
- Name
name- Type
- string
- Description
- Optional request attribute.
- Name
description- Type
- string
- Description
- Optional request attribute.
- Name
payloadSchema- Type
- object
- Description
- Optional request attribute.
Responses
- Name
200- Type
- application/json
- Description
- Event type updated
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X PATCH "https://api.flownally.com/v1/event-types/{id}" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"name": "order_ready",
"description": "string",
"payloadSchema": {}
}'Response
{
"id": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"name": "order.paid",
"description": "Customer paid for an order.",
"payloadSchema": {
"type": "object",
"properties": {
"orderId": {
"type": "string"
},
"total": {
"type": "number"
}
},
"required": [
"orderId"
]
},
"createdAt": "2026-04-30T09:30:00Z",
"updatedAt": "2026-04-30T09:30:00Z"
}/event-types/{id}Delete event type#
Deletes a custom event type when it is not predefined and has no recorded events.
Authorization
Scheme
- bearerAuth
Required scopes
- event_type:delete
Allowed roles
- owner
- admin
- agent
Delete an event type in the workspace.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Responses
- Name
204- Description
- Event type deleted
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X DELETE "https://api.flownally.com/v1/event-types/{id}" \
-H "Authorization: Bearer {token}"Response
204 Event type deleted/eventsList events#
Returns recorded customer events, optionally filtered by event type.
Authorization
Scheme
- bearerAuth
Required scopes
- event:list
Allowed roles
- owner
- admin
- agent
List events in the workspace.
Optional parameters
- Name
pageSize- Type
- query integer
- Description
- Optional parameter.
- Name
pageToken- Type
- query string
- Description
- Optional parameter.
- Name
eventTypeId- Type
- query string
- Description
- Optional parameter.
Responses
- Name
200- Type
- application/json
- Description
- List of events
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -G "https://api.flownally.com/v1/events" \
-H "Authorization: Bearer {token}" \
-d pageSize="{pageSize}" \
-d pageToken="{pageToken}" \
-d eventTypeId="{eventTypeId}"Response
{
"events": [
{
"id": "evt_01HV8ZB8C3V5N6M7P8Q9R0S1T2",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"contactId": "con_01HV8Y5R5RFMS0TFK6PKF9H2S8",
"eventTypeId": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"eventTypeName": "order.paid",
"payload": {
"orderId": "4827",
"total": 129.99,
"currency": "PLN"
},
"idempotencyKey": "order-4827-paid",
"createdAt": "2026-04-30T10:40:00Z"
}
],
"nextPageToken": "string",
"totalSize": 0
}/eventsCreate event#
Records an event against a contact. Prefer `POST /contacts/{contactId}/events` for new integrations.
Authorization
Scheme
- bearerAuth
Required scopes
- event:create
Allowed roles
- owner
- admin
- agent
Create an event in the workspace.
Request body
Send a application/json body. The body is required for this operation.
Required attributes
- Name
contactId- Type
- string
- Description
- Required request attribute.
- Name
eventTypeName- Type
- string
- Description
- Required request attribute.
Optional attributes
- Name
payload- Type
- object
- Description
- Optional request attribute.
- Name
idempotencyKey- Type
- string
- Description
- Optional request attribute.
Responses
- Name
201- Type
- application/json
- Description
- Event created
- Name
409- Type
- application/json
- Description
- Event with this idempotency key already exists
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X POST "https://api.flownally.com/v1/events" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"contactId": "con_01HV8Y5R5RFMS0TFK6PKF9H2S8",
"eventTypeName": "order.paid",
"payload": {
"orderId": "4827",
"total": 129.99,
"currency": "PLN"
},
"idempotencyKey": "order-4827-paid"
}'Response
{
"id": "evt_01HV8ZB8C3V5N6M7P8Q9R0S1T2",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"contactId": "con_01HV8Y5R5RFMS0TFK6PKF9H2S8",
"eventTypeId": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"eventTypeName": "order.paid",
"payload": {
"orderId": "4827",
"total": 129.99,
"currency": "PLN"
},
"idempotencyKey": "order-4827-paid",
"createdAt": "2026-04-30T10:40:00Z"
}/events/{id}Get event#
Returns one recorded customer event.
Authorization
Scheme
- bearerAuth
Required scopes
- event:read
Allowed roles
- owner
- admin
- agent
Read an event in the workspace.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Responses
- Name
200- Type
- application/json
- Description
- Event details
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X GET "https://api.flownally.com/v1/events/{id}" \
-H "Authorization: Bearer {token}"Response
{
"id": "evt_01HV8ZB8C3V5N6M7P8Q9R0S1T2",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"contactId": "con_01HV8Y5R5RFMS0TFK6PKF9H2S8",
"eventTypeId": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"eventTypeName": "order.paid",
"payload": {
"orderId": "4827",
"total": 129.99,
"currency": "PLN"
},
"idempotencyKey": "order-4827-paid",
"createdAt": "2026-04-30T10:40:00Z"
}/contacts/{contactId}/eventsList events by contact#
Returns the timeline of events recorded for a contact.
Authorization
Scheme
- bearerAuth
Required scopes
- event:list
Allowed roles
- owner
- admin
- agent
List events for a contact.
Required parameters
- Name
contactId- Type
- path string
- Description
- Required parameter.
Optional parameters
- Name
pageSize- Type
- query integer
- Description
- Optional parameter.
- Name
pageToken- Type
- query string
- Description
- Optional parameter.
- Name
eventTypeId- Type
- query string
- Description
- Optional parameter.
Responses
- Name
200- Type
- application/json
- Description
- List of events
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -G "https://api.flownally.com/v1/contacts/{contactId}/events" \
-H "Authorization: Bearer {token}" \
-d pageSize="{pageSize}" \
-d pageToken="{pageToken}" \
-d eventTypeId="{eventTypeId}"Response
{
"events": [
{
"id": "evt_01HV8ZB8C3V5N6M7P8Q9R0S1T2",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"contactId": "con_01HV8Y5R5RFMS0TFK6PKF9H2S8",
"eventTypeId": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"eventTypeName": "order.paid",
"payload": {
"orderId": "4827",
"total": 129.99,
"currency": "PLN"
},
"idempotencyKey": "order-4827-paid",
"createdAt": "2026-04-30T10:40:00Z"
}
],
"nextPageToken": "string",
"totalSize": 0
}/contacts/{contactId}/eventsCreate event for contact#
Records a customer moment such as a purchase, signup, or plan change. Matching active journeys can react to the event after it is accepted.
Authorization
Scheme
- bearerAuth
Required scopes
- event:create
Allowed roles
- owner
- admin
- agent
Create an event for a contact.
Required parameters
- Name
contactId- Type
- path string
- Description
- Required parameter.
Request body
Send a application/json body. The body is required for this operation.
Required attributes
- Name
name- Type
- string
- Description
- Required request attribute.
Optional attributes
- Name
payload- Type
- object
- Description
- Optional request attribute.
- Name
idempotencyKey- Type
- string
- Description
- Optional request attribute.
Responses
- Name
201- Type
- application/json
- Description
- Event created
- Name
409- Type
- application/json
- Description
- Event with this idempotency key already exists
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X POST "https://api.flownally.com/v1/contacts/{contactId}/events" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"name": "order.paid",
"payload": {
"orderId": "4827",
"total": 129.99,
"currency": "PLN"
},
"idempotencyKey": "order-4827-paid"
}'Response
{
"id": "evt_01HV8ZB8C3V5N6M7P8Q9R0S1T2",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"contactId": "con_01HV8Y5R5RFMS0TFK6PKF9H2S8",
"eventTypeId": "evt-type_01HV8ZA9Q4C2B5P6N7R8S9T0V1",
"eventTypeName": "order.paid",
"payload": {
"orderId": "4827",
"total": 129.99,
"currency": "PLN"
},
"idempotencyKey": "order-4827-paid",
"createdAt": "2026-04-30T10:40:00Z"
}