Skip to content
All connectors
Basecamp logo

Basecamp

Project & work management

Turn requests and orders into Basecamp work, and keep status in step across your tools.

42 ways to read, 22 ways to write, each write switched on by you.

Quality checks

Built and tested with example responses.

  1. Ready to connect: doneEvery listed action is built in.
  2. Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Basecamp with Nexra

Connected, approved, proven.

The things teams do most with Basecamp, an example flow with a person in the loop, and what Nexra keeps as proof.

Top actions

  • Move cardApproval by rule
  • Create card table columnApproval by rule
  • Poll account eventsRead

Example flow

  1. Basecamp · Poll account eventsDone
  2. Basecamp · Move cardNeeds approval
  3. Nexra · Record the decision and result in the evidence chainProven

Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches Basecamp.

What gets logged

  • Whether it ran on its own or who approved it, and under which rule
  • A fingerprint of the exact request sent to Basecamp
  • Basecamp's reply: what it created or changed
  • One entry in the evidence chain, linked to the one before

Try this in the sandbox

Run the whole flow with test data in your sandbox, then connect your own account when you are ready to go live.

For developers

Technical detail

Read and write Basecamp projects, to-dos, card tables, schedules, comments and timesheets; read docs, files, messages, people and change events.

37signals API docs
Source actions
42
Destination actions
22
Data types
27

What you can map

Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.

Account events1
  • Poll account eventsSourceIncremental

    Account-wide change feed (to-dos, cards, messages, comments and more), oldest first, for incremental sync.

Card moves1
  • Move cardDestinationProvider duplicate protectionApproval before production

    Moves a card to another column (or position) on its card table.

Card table columns3
  • Create card table columnDestinationNot retried automaticallyApproval before production

    Adds a column to a card table.

  • Get card table columnSource

    A single card table column.

  • Update card table columnDestinationProvider duplicate protectionApproval before production

    Changes a column's title and description.

Card tables1
  • Get card tableSource

    A card table with its columns (use the column IDs to list and create cards).

Cards5
  • Create cardDestinationNot retried automaticallyApproval before production

    Creates a card in a card table column.

  • Get cardSource

    A single card table card.

  • List cards in a columnSource

    Card table (kanban) cards in a column.

  • Find cards across projectsSource

    Open, completed, unassigned, undated, not-now or overdue cards across every project the user can access.

  • Update cardDestinationProvider duplicate protectionApproval before production

    Updates supplied fields of a card; omitted fields are unchanged.

Comments4
  • Add commentDestinationNot retried automaticallyApproval before production

    Adds a comment to a recording. Subscribers of the recording are notified.

  • Get commentSource

    A single comment.

  • List commentsSource

    Comments on any recording (to-do, card, message, document).

  • Edit commentDestinationProvider duplicate protectionApproval before production

    Replaces the content of a comment.

Documents2
  • Get documentSource

    A single Docs & Files document.

  • List documentsSource

    Documents in a Docs & Files vault.

Events1
  • List recording eventsSource

    Change history of one recording (created, completed, assigned, and so on).

Message boards1
  • Get message boardSource

    A project's message board with its message count.

Messages2
  • Get messageSource

    A single message-board message.

  • List messagesSource

    Messages on a project's message board.

People2
  • Get personSource

    A person's profile.

  • List peopleSource

    People visible to the user, for assignee mapping.

Profile1
  • Get connected userSource

    The Basecamp person this connection acts as.

Projects4
  • Create projectDestinationNot retried automaticallyApproval before production

    Creates a project.

  • Get projectSource

    A project with its tool IDs (to-do set, schedule, docs and files, card table).

  • List projectsSource

    Projects visible to the user, newest first.

  • Update projectDestinationProvider duplicate protectionApproval before production

    Updates the project name, description and schedule dates.

Recordings3
  • Get recordingSource

    Any recording by ID, with its type, when the type is not known yet.

  • List recent recordingsSourceIncremental

    Recordings of one type across projects, most recently updated first, for change detection.

  • SearchSource

    Full-text search across the content the user can access.

Schedule entries4
  • Create schedule entryDestinationNot retried automaticallyApproval before production

    Adds an event or milestone date to a project schedule.

  • Get schedule entrySource

    A single schedule entry. Recurring entries resolve to their first occurrence.

  • List schedule entriesSource

    Upcoming entries on a project schedule.

  • Replace schedule entryDestinationProvider duplicate protectionApproval before production

    Replaces a schedule entry. Basecamp clears omitted attributes, so the summary and times are required and an omitted description is cleared.

Schedules1
  • Get scheduleSource

    A project schedule with its entry count.

Subtask completions1
  • Complete subtaskDestinationProvider duplicate protectionApproval before production

    Marks a subtask as completed.

Subtasks4
  • Create subtaskDestinationNot retried automaticallyApproval before production

    Adds a subtask to a to-do or card.

  • Get subtaskSource

    A single subtask (step) of a to-do or card.

  • List subtasksSource

    Subtasks (steps) of a to-do or card.

  • Update subtaskDestinationProvider duplicate protectionApproval before production

    Updates supplied fields of a subtask; omitted fields are unchanged.

Timeline events1
  • List activity timelineSource

    Recent activity across all projects, or in one project.

Timesheet entries5
  • Log timeDestinationNot retried automaticallyApproval before production

    Logs hours against a to-do, card, message or the project's timesheet recording.

  • Get time entrySource

    A single timesheet entry.

  • List project timesheetSource

    Time logged on a project and its to-dos, cards and other recordings.

  • Timesheet reportSource

    Time entries across the account for a date range, person or project.

  • Update time entryDestinationProvider duplicate protectionApproval before production

    Updates supplied fields of a timesheet entry.

Todo completions1
  • Complete to-doDestinationProvider duplicate protectionApproval before production

    Marks a to-do as completed.

Todolist groups2
  • Create to-do list groupDestinationNot retried automaticallyApproval before production

    Adds a group (section) to a to-do list.

  • List to-do list groupsSource

    Groups (sections) inside a to-do list.

Todolists4
  • Create to-do listDestinationNot retried automaticallyApproval before production

    Creates a to-do list in a to-do set.

  • Get to-do listSource

    A single to-do list or to-do list group.

  • List to-do listsSource

    To-do lists in a project's to-do set (use Get project to find the to-do set ID).

  • Replace to-do listDestinationProvider duplicate protectionApproval before production

    Replaces the name and description of a to-do list. An omitted description is cleared.

Todos5
  • Create to-doDestinationNot retried automaticallyApproval before production

    Creates a to-do in a to-do list.

  • Get to-doSource

    A single to-do.

  • List to-dosSource

    To-dos in a to-do list, with assignees and dates.

  • Find to-dos across projectsSource

    Open, completed, unassigned, undated or overdue to-dos across every project the user can access.

  • Replace to-doDestinationProvider duplicate protectionApproval before production

    Replaces a to-do. Basecamp clears every field that is not sent, so the content, assignees and subscribers are required and omitted notes or dates are cleared.

Todosets1
  • Get to-do setSource

    A project's to-do set with list and to-do counts (ID from the project's tools).

Uploads2
  • Get uploadSource

    Metadata for a single uploaded file; contents are not transferred.

  • List uploadsSource

    File metadata in a Docs & Files vault; file contents are not transferred.

Vaults2
  • Get Docs & Files folderSource

    A Docs & Files vault (folder) with document, upload and sub-folder counts.

  • List Docs & Files foldersSource

    Sub-folders of a Docs & Files vault.

Access and limits

Authentication
OAuth 2 (Launchpad) client ID, client secret and refresh token
Plans and access
All current Basecamp plans; timesheets require the timesheet add-on to be enabled. Access follows the Basecamp user who authorised the OAuth app.
Test environment
Use a Basecamp trial account; there is no separate sandbox host.
Rate limits
Dynamic limits; commonly 50 requests per 10 seconds per IP. HTTP 429 with Retry-After.
Pagination
Link header (rel=next) with geared page sizes; X-Total-Count reports totals.
Provider events
Basecamp project webhooks for recording events. Flows run on demand, on a schedule, or when a scheduled check finds new or changed records.

Before you build a flow

  • Updating a to-do or to-do list replaces it: omitted fields are cleared. Nexra always sends every field for these updates.
  • Posting message-board messages is not implemented because a published message notifies everyone on the project.
  • Upload metadata is read; file contents are not transferred.
  • Basecamp has no idempotency key; uncertain creates are not repeated automatically.
  • Trashing, archiving and deletes are not implemented.
  • Message-board messages, documents, vaults and uploads are read only. Upload versions and downloads are not implemented.
  • Not implemented by design: people invites and enrolments, project access changes, client access and client approvals, Campfire chat lines, pins, subscriptions and boosts.
  • Uncompleting to-dos and subtasks is not implemented: Basecamp exposes it only as an HTTP DELETE, which the recipe engine does not send.
  • Account events (events.json) are a best-effort notification feed, not an audit log: deduplicate by event ID and refetch the recording before acting. The opaque position token is not exposed; resume with the last event ID.
  • Recordings updatedSince is filtered by Nexra on Basecamp's newest-first sort; there is no server-side updated-since filter for most collections.
  • The cross-project to-do and card reports (todos.search, cards.search) and the event feed are Basecamp 5 endpoints; they have not been exercised against a live account.
  • Search sends the search text in the query string (Basecamp's only form). Nexra rejects email addresses as search text; do not search for other personal data.

Developer reference

  1. Create the 37signals credentials described above with the narrowest permissions your flows need.
  2. In Nexra, open Connect, then Connections, then New connection, choose Basecamp, enter its settings and credentials, and tick only the write actions you need. Connection guide
  3. Test the connection, then use its actions as flow sources and destinations. Flow guide

Machine-readable detail: GET /api/public/connect/connectors/basecamp and the Connections API.