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

# Data synchronization

> Fetch contacts created or updated since your last polling window by querying the Search API on a schedule.

If you are building an integration to keep your external database or CRM synchronized with Qomon, poll the Search API on a schedule to retrieve contacts created or updated within a specific timeframe.

## Endpoint

Use the `advanced_search` object with `POST /search`.

* Endpoint: `https://incoming.qomon.app/search`
* Headers: `Content-Type: application/json` and `Authorization: Bearer YOUR_API_KEY`

```json theme={"system"}
{
  "data": {
    "advanced_search": {
      "page": 0,
      "per_page": 1000,
      "query": {
        "$all": [
          {
            "$all": [
              {
                "$condition": {
                  "attr": "UpdatedAt",
                  "ope": "gte",
                  "value": "now-1d/d"
                }
              }
            ]
          }
        ]
      }
    }
  }
}
```

## How the date filter works

The polling logic relies on the `$condition` object inside your query.

* `attr: "UpdatedAt"` targets the timestamp when a contact was created or last modified in Qomon.
* `ope: "gte"` means "greater than or equal to". The API returns any record updated during or after the time you pass.
* `value: "now-1d/d"` uses server-side date math. It means "now minus one day, rounded down to the start of the day."

Adjust the relative date to match your polling frequency. For example, use `now-1h` for an hourly sync.

## Handle pagination

The Search API accepts `per_page` values up to `1000`, so your integration should keep requesting pages until it reaches the end of the result set.

1. Start with `"page": 0`.
2. Process the returned contacts.
3. If the response contains `1000` contacts, increment `page` and send the same request again.
4. Stop when the API returns fewer contacts than your `per_page` value.

## Related docs

See **Search > Overview** for the full query structure, supported operators, and additional examples.
