# Common Issues

## Connection issues

<details>

<summary>Invalid API key error on first run</summary>

Double-check that you're using the **Account Secret** from Chameleon, not a public key or token. Find it under **Settings → Integrations → API** in your Chameleon dashboard. Make sure there are no extra spaces when pasting the key into Coupler.io.

</details>

<details>

<summary>Data flow runs but returns zero records</summary>

This usually means your **start date** is set too far in the future, or the selected entity has no data yet. Check that the start date is earlier than your oldest Chameleon records. Also confirm the entity you selected actually has data in your Chameleon account — for example, if you haven't run any surveys, Survey responses will be empty.

</details>

## Missing data

<details>

<summary>Survey responses are missing the finished_at field</summary>

Chameleon only populates `finished_at` when a user completes the full survey. Partial or abandoned responses will have a null value for this field. This is expected behavior — filter on `finished_at IS NOT NULL` if you only want completed responses.

</details>

<details>

<summary>Only 50 records are returned per sync</summary>

The default record limit is 50 per page. If you have more records, increase the **Record limit** parameter in the source settings. Set it to a higher value to retrieve larger result sets per page.

</details>

<details>

<summary>Changes entity shows fewer records than expected</summary>

The Changes entity reflects edits made within the date range you've set. If your start date doesn't reach back far enough, older change records won't appear. Adjust the start date using the date picker to extend your sync window.

</details>

## Permission errors

<details>

<summary>API key works but certain entities return a 403 error</summary>

Some Chameleon plans restrict API access to specific entities. Check your Chameleon plan to confirm that API access is enabled and that your account has permission to read the entity you're trying to sync. Contact Chameleon support if you believe access should be available.

</details>

## Data discrepancies

<details>

<summary>Record counts in Coupler.io don't match what I see in Chameleon's dashboard</summary>

Chameleon's dashboard often applies its own filters (e.g., active experiences only, date-scoped views). Coupler.io returns raw API data without those filters applied. Check whether your Chameleon dashboard is filtering by status or date range that differs from your Coupler.io sync window.

</details>

## Rate limits

<details>

<summary>Sync fails partway through with a rate limit error</summary>

Chameleon enforces API rate limits that can interrupt large syncs. Try reducing the **Record limit** parameter to a lower value so each page request is smaller. If you're syncing multiple entities in one data flow, consider splitting them into separate data flows to spread out API calls.

</details>
