A Visit records a customer’s physical presence at a location, a store check-in, an appointment, or any other in-person interaction that you want to track separately from a transaction.
Visits differ from Transactions in that they do not imply a purchase. They are useful for:
- Recording footfall and engagement independently of spend
- Triggering reactions based on a visit (e.g., issue a benefit after a customer visits 5 times)
- Tracking appointments, consultations, and service interactions
Creating a visit
curl -X POST https://api.[tenant].getomneo.com/api/v3/profiles/{profileId}/visits \
-H "Authorization: Bearer ${TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"visited_at": "2025-06-15 10:30:00",
"timezone": "Australia/Melbourne",
"location_id": 2,
"staff_id": 1993,
"external_id": "APPT-20250615-001",
"tags": ["consultation"]
}'
Reading visits for a profile
GET /api/v3/profiles/{profileId}/visits
Reading a specific visit
GET /api/v3/profiles/{profileId}/visits/{visitId}
Updating a visit
curl -X PUT https://api.[tenant].getomneo.com/api/v3/profiles/{profileId}/visits/{visitId} \
-H "Authorization: Bearer ${TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"tags": ["consultation", "vip"]
}'
Deleting a visit
DELETE /api/v3/profiles/{profileId}/visits/{visitId}
Using visits in reactions
Configure a reaction with "trigger": "visit.created" to automate actions when a visit is recorded, for example, incrementing a “visits this quarter” achievement or awarding a complimentary benefit after a threshold is reached.
Content needed: visit type enum values, integration with appointment booking platforms, and visit aggregation fields.