> For the complete documentation index, see [llms.txt](https://docs.coupler.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coupler.io/sources/category/project-management/basecamp/common-issues.md).

# Common Issues

## Connection issues

<details>

<summary>My API token isn't being accepted</summary>

Make sure you're using a **personal access token** from [launchpad.37signals.com/integrations](https://launchpad.37signals.com/integrations), not an OAuth token from a third-party app. Copy the token immediately after generating it — it may not be shown again.

</details>

<details>

<summary>I can't find my Basecamp account in the dropdown</summary>

You may have multiple 37signals accounts. Make sure you're logged into the correct Basecamp 3 account when generating the token. If the account still doesn't appear, try regenerating the token while signed into only the account you want to connect.

</details>

<details>

<summary>The connection fails with an "unsupported account" error</summary>

This usually means you're trying to connect a Basecamp 2 or Basecamp Classic account. Coupler.io only supports **Basecamp 3**. There's no workaround for older account versions.

</details>

## Missing data

<details>

<summary>Some projects or tasks aren't showing up</summary>

Check your **start date** setting. If the missing records were created before the date you specified, they won't be included in the export. Use the date picker to set an earlier start date and re-run the data flow.

</details>

<details>

<summary>Archived or trashed projects are missing</summary>

Archived and trashed projects are included in the Projects entity, but double-check that you're not filtering them out in your destination. Look for a `status` column and remove any filters on it.

</details>

<details>

<summary>Schedule entries aren't appearing even though schedules are pulling correctly</summary>

Schedules and Schedule entries are separate entities — you need to add **Schedule entries** as its own source in your data flow. Adding only Schedules will not include the individual events.

</details>

## Permission errors

<details>

<summary>I get a 403 Forbidden error when pulling data</summary>

Your API token may belong to a user who doesn't have access to certain projects. In Basecamp 3, project access is set per person. Ask your Basecamp admin to either grant the token owner access to those projects or generate a token from an admin account.

</details>

## Data discrepancies

<details>

<summary>Task counts in Coupler.io don't match what I see in Basecamp</summary>

The Todos entity includes both to-do list containers and individual tasks. If you're counting rows to estimate task numbers, filter by the record type field to isolate individual tasks. Also verify that your start date isn't excluding older tasks.

</details>

<details>

<summary>Assignee or participant fields show raw arrays instead of names</summary>

Basecamp returns assignees and participants as arrays. Depending on your destination, these may appear as JSON strings. Use your destination's array-flattening or split function to convert them into readable columns.

</details>

## Rate limits

<details>

<summary>Sync is slow or failing with rate limit errors</summary>

Basecamp's API enforces rate limits on requests. If you're pulling multiple entities in the same data flow and hitting limits, try splitting them into separate data flows and running them at staggered times.

{% hint style="warning" %}
Avoid running very large syncs (long date ranges, many projects) simultaneously — this increases the chance of hitting Basecamp's API rate limits.
{% endhint %}

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.coupler.io/sources/category/project-management/basecamp/common-issues.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
