Skip to main content

At a glance

Credentials

Set these per environment. See Connect an integration. With a managed OAuth app, Connect works without these variables; set them to use your own OAuth app instead.

Setup

  1. Create a Basecamp account: Sign up at https://basecamp.com (a free trial works for testing). Note your account ID - it’s the number in the app URL, e.g. https://3.basecamp.com/5899981.
  2. Register an app on 37signals Launchpad: Go to https://launchpad.37signals.com/integrations and register a new app. Check ‘Basecamp 4’ as the product and set your redirect URI to your app’s /api/auth/basecamp/callback URL.
  3. Set environment variables: Copy the Client ID and Client Secret into your .env as BASECAMP_CLIENT_ID and BASECAMP_CLIENT_SECRET.
  4. Verify access: Complete the OAuth flow, then run List Projects with your account ID.
  • Every API URL includes the account ID: https://3.basecampapi.com/{accountId}/… - tools take it as a required accountId parameter
  • Basecamp OAuth has no scopes; tokens carry the user’s full access. Access tokens expire after two weeks and are renewed with the refresh token
  • Basecamp requires a User-Agent identifying your app with contact info, and rate-limits to ~50 requests per 10 seconds
Provider API reference: https://github.com/basecamp/bc3-api

Tools

Example prompts

  • List my Basecamp projects and summarize the open to-dos in one of them.
  • Add a to-do to a Basecamp to-do list with a due date and assignee.