Skip to content

Guests

GET /partners/sync/users?lastSyncedAt=... returns the guests of your venue. See Keep your data in sync first.

curl "https://production.speakeasygo.com/partners/sync/users?lastSyncedAt=2026-11-01T00:00:00.000Z" \
  -H "token: $SPEAKEASY_VENUE_TOKEN"
{
  "newUsers": [
    {
      "id": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa",
      "uniqueId": "CON-abc123",
      "firstName": "Sam",
      "lastName": "Sample",
      "email": "sam@example.com",
      "code": "+1",
      "phone": "3125551212",
      "fullPhoneNumber": "+13125551212",
      "consumerState": "VERIFIED",
      "createdAt": "2026-11-02T04:10:00.000Z",
      "updatedAt": "2026-11-02T04:10:00.000Z",
      "venueHasCustomer": [
        {
          "venueId": "11111111-1111-4111-8111-111111111111",
          "status": "ENABLED",
          "optedEmailPolicy": "ENABLED",
          "numberOfPurchase": 1,
          "totalSpent": 58.2,
          "lastVisitedOn": "2026-11-02T04:10:00.000Z"
        }
      ]
    }
  ],
  "updatedUsers": [],
  "syncedAt": "2026-11-05T12:00:00.000Z",
  "meta": { "venueId": "11111111-1111-4111-8111-111111111111", "newCount": 1, "updatedCount": 0 }
}

Who is in which list

List Who
newUsers Guests whose relationship with your venue started at or after the checkpoint
updatedUsers Guests whose relationship is older, and whose guest record or relationship changed at or after the checkpoint

A guest can be in both, so update by id. Deleted guests are left out, and nothing tells you that a guest was deleted.

A guest who replies STOP or START to a venue's campaign texts comes back in updatedUsers with the new status. That is true from November 5, 2026. A guest who opted out before then does not come back by themselves, so ask your Speakeasy contact for a one-time export if you text guests from your own tools.

Fields to use

Other columns can appear. Do not rely on them.

Field Meaning
id The guest id. This is what orders and reservations point to.
uniqueId The guest's public code
firstName, lastName, email Can be empty
code, phone, fullPhoneNumber Country code, the number without it, and both together
gender, dob dob is yyyy-MM-dd, and can be null
consumerState VERIFIED (the guest checked their phone), UNVERIFIED, MANUAL (added by staff) or IMPORTED (from a file)
createdAt, updatedAt ISO 8601 in UTC

On each entry in venueHasCustomer, which only covers your venue:

Field Meaning
venueId Your venue
status ENABLED means the venue may text this guest. DISABLED means do not text them: they opted out, or they never opted in.
optedEmailPolicy ENABLED means the guest opted in to email
numberOfPurchase, totalSpent What the venue knows so far
numberOfVisit Not filled in: it is always 0. Use numberOfPurchase.
lastVisitedOn ISO 8601 in UTC
isVip, isMember Flags the venue set
createdAt, updatedAt When the relationship started and last changed

The same person can have more than one guest record, for example one added by staff and one from their own sign-up.