---
title: "Synchronize call history"
description: "Import customer call records into your reporting system."
---

## Confirm pagination and time behavior

Before a scheduled import, verify result limits, offset semantics, timestamp timezone, and date-range boundaries for your deployment. These details must not be inferred from a single response.

## Fetch a bounded window

Use [List call history](/docs/a1pbx/call-history) with a time window and supported sorting. Use the same ordering while traversing results. Records can change while an active window is being read.

## Deduplicate locally

Keep a local checkpoint and deduplicate by the verified stable call-record identifier. Overlap successive time windows to account for late-arriving records. Keep import state in your own database; this workflow does not alter source CDRs.

## Handle failures

Use bounded retries for transient failures on confirmed read-only endpoints. Honor `Retry-After` when supplied. Do not assume the same retry behavior is safe for originate.
