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

# Synchronize properties

> Use filters, pagination, image links, and updates.

## Query properties

Use `GET /properties` or `GET /projects/{id}/properties`. Available filters include `projectId`, `status`, `visibility`, `updatedSince`, and `includeArchived`. Status and visibility accept repeated or comma-separated values. Unknown parameters on property read routes return `400`.

```bash theme={null}
curl --fail-with-body --get \
  'https://app.deal-pipe.de/api/v1/properties' \
  --header "Authorization: Bearer $DEALPIPE_API_TOKEN" \
  --data-urlencode 'updatedSince=2026-10-01T00:00:00Z' \
  --data-urlencode 'includeArchived=true' \
  --data-urlencode 'offset=0'
```

## Read every page

The response contains `pagination.limit`, `offset`, `total`, and `hasMore`. Increase the offset by the effective `pagination.limit` while `hasMore` is true. The default page contains 50 units; the maximum is 200, or 50 with `include=images`.

Project listing uses a different format: `GET /projects` returns at most 100 projects and has no offset pagination. Use the organization-wide property list for a full unit sync.

## Changes and images

`updatedSince` is inclusive. Deduplicate units by ID and save a new synchronization checkpoint only after a successful pass. Offset pagination is not an immutable snapshot; reconcile the full inventory periodically. There is no documented deletion event feed.

`include=images` adds up to 30 images per unit with temporary links that expire after one hour. Request the property again for fresh links. Monetary and area values are returned as decimal strings.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.