> ## Documentation Index
> Fetch the complete documentation index at: https://docs.attio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Syncing meetings

> How to use Attio's public API to create meetings from your service and avoid duplicates

If you are building an integration with Attio and would like to read or write meeting data over the
Attio API, this guide will walk you through the appropriate steps.

## How to sync meetings

One of Attio's most powerful features is its real-time email and calendar sync. When a user connects
their Gmail or Outlook account, Attio will automatically and continuously keep the user's emails and
meetings in sync.

Meetings are written using the create a meeting endpoint (`POST /v2/meetings`). This endpoint
**always creates a new meeting** — it does not look up, match, or update existing meetings, and it
does not de-duplicate against meetings that Attio's own sync engine may have already created from a
connected Gmail or Outlook calendar.

## Avoiding duplicate meetings

Because the endpoint creates a new meeting on every call, calling it repeatedly — or writing a
meeting that Attio has also synced from a connected calendar — can result in duplicates.

If you want to ensure consistent behaviour, check for a matching meeting first rather than blindly
creating one. You can do this by [listing meetings](/rest-api/endpoint-reference/meetings)
(`GET /v2/meetings`) covering the relevant time frame and de-duplicating with your own fuzzy matching
logic — for example, by matching on a combination of the meeting's title, start time, and organizer.
If you find a suitable match, reuse that meeting instead of creating a new one.
