How Contacts Are Created
| Source | Description |
|---|---|
| Automatic (booking) | A contact is created or updated whenever someone books a meeting. The contact is matched by email address — existing contacts are enriched, new ones are created. |
| Manual (API) | Create contacts directly via POST /crm for leads or customers who haven’t booked yet. |
| Import | Bulk-create contacts via POST /crm/bulk (e.g. from a CSV import). |
Contact Fields
| Field | Type | Description |
|---|---|---|
id | uuid | Unique contact identifier |
firstName | string | First name |
lastName | string | Last name |
email | string | Email address (unique per company) |
phoneNumber | string | Phone number |
tags | string[] | Labels like Lead, Enterprise, Recurring |
notes | string | Internal notes |
crmCompanyId | uuid | Associated CRM company |
accountOwnerId | uuid | Responsible meetergo user |
additionalData | object | Custom booking form fields |
noShowCount | number | Number of times marked as no-show |
Automatic Tags
meetergo adds these tags automatically:| Tag | When applied |
|---|---|
Recurring | Contact has 2+ bookings |
Optin | Contact completed double opt-in |
Create a Contact
Either
email or phoneNumber must be provided. Both can be supplied.Response
Search Contacts
Query Parameters
| Parameter | Type | Description |
|---|---|---|
searchTerm | string | Search by name, email, or phone |
tags | string[] | Filter by one or more tags |
ownerId | uuid | Filter by account owner |
sortBy | string | firstName, lastName, email, or createdAt |
sortOrder | string | ASC or DESC |
page | number | Page number (default: 1) |
limit | number | Results per page (default: 20, max: 100) |
Response
Get Contact Details
Look up a contact by their ID or by an attendee ID from a booking:Update a Contact
Delete a Contact
Contacts and Webhooks
When a booking is created, you can look up the contact immediately using theattendeeId from the webhook payload:
Best Practices
Use
attendeeId lookups – When processing booking webhooks, look up the contact via attendeeId to get enriched data including all form field answers.Check
additionalData – Custom booking form fields (e.g., company name, job title) are stored in additionalData on the contact.Use tags for segmentation – Tags are free-form strings; define a consistent set (e.g.,
Lead, Customer, Enterprise) to filter contacts efficiently.