Print

Import Basecamp Data to Google Sheets

In this guide, we’ll walk through how to import Basecamp data directly into Google Sheets, using the API Connector add-on for Sheets. Basecamp's most recent API version (version 4) only allows authorization through OAuth, so we'll set up a custom OAuth connection and connect to their API with that.

Contents

Before You Begin

Click here to install the API Connector add-on from the Google Marketplace.

Part 1: Get your Basecamp OAuth Credentials

  1. Log in to Basecamp and navigate to https://launchpad.37signals.com/integrations. In the Your Applications section, click on Register one now.
    basecamp-registerapp
  2. You'll be prompted to enter some information about your new application. You can name your app anything, but make sure to use the redirect URL provided in this article on configuring custom OAuth. Click Register this app.
    basecamp-configureapp
  3. Back on the applications listing screen, click on your new app see your credentials.
    basecamp-clickapp
  4. You should see your client ID and client secret. Copy these down, we'll need them shortly.
    basecamp-credentials

Part 2: Connect Basecamp to API Connector

  1. Open up Google Sheets and click Extensions > API Connector > Manage Connections
  2. Scroll to the bottom of the sidebar and click Add Custom OAuth
  3. Fill in the Custom OAuth modal as follows:
    • OAuth Grant Type: Authorization Code
    • Name: Custom Basecamp
    • Authorization Base URL: https://launchpad.37signals.com/authorization/new?type=web_server
    • Token URL: https://launchpad.37signals.com/authorization/token?type=web_server
    • Client IDprovided by Basecamp
    • Client Secretprovided by Basecamp
  4. Click Save
    basecamp-customoauth
  5. Click Manage Connections to return to the list of connections
  6. Scroll down until you find your new custom connection. Click Connect
    basecamp-customconnect
  7. You'll be prompted to give access to the new app you created above. Click Yes, I'll allow access
    basecamp-authorize
  8. You'll be returned to your sheet and can verify that the new connection is now active.

Part 3: Get Basecamp Data in Sheets

To create a request, include your full request URL in the request URL field, and select your custom Basecamp from the dropdown OAuth menu.

You can see the full list of available endpoint and parameters in the API documentation. For example, to get a list of current projects, configure it as follows. Substitute in your own account ID where it says your_account_id (you can get see your account ID in the URL bar when you're logged into Basecamp).
basecamp-accountId

  1. Open up Google Sheets and click Extensions > API Connector > Open > Create request.
  2. In the request form enter the following:
    • Application: Custom
    • Method: GET
    • Request URL: https://3.basecampapi.com/your_account_id/projects.json
    • OAuth: Custom Basecamp
  3. Create a new tab and click Set current to use that tab as your data destination.
  4. Name your request and click Run. A moment later you’ll see Basecamp data populate your sheet.

Part 4: API Documentation

Official API documentation: https://github.com/basecamp/bc3-api

2 thoughts on “Import Basecamp Data to Google Sheets”

    • That error usually means there's a mismatch between the redirect URL entered when you created your app and the redirect URL used by API Connector. Can you double check that the values were entered exactly as written? Make sure no text was cut off, and that you haven't included any extra spaces or slashes. Feel free to message support with a screenshot of your setup if you'd like me to take a look.

      Reply

Leave a Comment

Jump To