Basecamp logo

Integrate Basecamp with your AI CRM

Project management and team collaboration tool by 37signals

Explore Triggers and Actions

Archive Project

Archive a Basecamp project, removing it from the active project list. Returns no content on success. Accounts whose plan disallows archiving return 403. Accounts may also restrict archiving to admins and the project's creator. Use Unarchive Project to restore an archived project.

ActionTry it

Archive Recording

Tool to mark a recording as archived in a Basecamp project. Use when you need to archive a recording to remove it from active view while preserving it for reference.

ActionTry it

Comment on To-Do

Tool to add a comment to a to-do in a Basecamp project. Use when you need to add feedback, updates, or discussion to a specific to-do item.

ActionTry it

Complete Subtask

Mark a Basecamp subtask as completed. Get the subtask ID from a to-do or card's subtasks. Returns no content on success. The connected account is selected by the configured base URL.

ActionTry it

Complete To-Do

Tool to mark a to-do as completed in Basecamp. Use when you need to complete a to-do item.

ActionTry it

Copy Recording

Start an asynchronous Basecamp recording or dock-tool copy. Leaves the original in place and returns a filing immediately (201). Poll Get Filing as the initiating person until completed or failed; on completion, destination_recording contains the copy's new ID and URL. Each call creates another copy: check the first filing before retrying. Supply a matching container, or a project ID for a dock tool; optionally choose a vault folder and include comments. Supports messages, cards/columns, files/folders, schedule entries, questions, email forwards, to-dos/lists/groups and dock tools except Email Forwards. Child-only records (such as attachments, comments and card steps), system card columns and records outside tools cannot copy independently. Cards land in Triage or, if completed, Done. Trashed originals stay trashed; their copies are restored at the destination.

ActionTry it

Create a Vault

Tool to create a new vault (folder) within an existing parent vault in a Basecamp project. Use when you need to organize documents and files hierarchically by creating nested vaults.

ActionTry it

Create Answer

Answer an automatic check-in question with rich text and a grouping date. Provide content and an ISO 8601 group_on date inside question_answer. Returns the created answer. A question in the trash cannot receive new answers.

ActionTry it

Create Bookmark

Bookmark a recording for the current user, returning the personal bookmark. Bookmarks are visible only to their creator. Bookmarking an already bookmarked recording returns the existing bookmark without creating a duplicate.

ActionTry it

Create Boost

Post a short boost to a recording whose representation includes boosts_url.

ActionTry it

Create Bubble Up

Resurface a recording in the current user's readings now or at a later date. Send at="now" for immediate resurfacing or a scheduling keyword or ISO 8601 date for later. Repeating the same bubble-up is idempotent. Returns no content.

ActionTry it

Create Campfire Line

Tool to create a line in a Basecamp Campfire chat. Use when you need to post a message to a specific Campfire chat within a project.

ActionTry it

Create Campfire Line via Chatbot

Create a line in a Basecamp Campfire chat using a chatbot key and the connected Basecamp account.

ActionTry it

Create Campfire Upload

Upload a file directly to a Basecamp Campfire and create an upload line. Use when sharing a file in chat; provide a file, not a previously uploaded attachment SGID. Returns the created line and its attachment details.

ActionTry it

Create Card in Column

Tool to create a new card in a column of a Basecamp card table. Use when you need to add a card to a card table column with optional content and due date.

ActionTry it

Create Card Table Column

Tool to create a column within a Basecamp card table. Use when you need to add a new column to organize cards in a card table project.

ActionTry it

Create Chatbot

Tool to create a new chatbot in a Basecamp Campfire chat. Use when you need to add an automated bot to a chat room for posting messages and responding to commands.

ActionTry it

Create Chatbot Line

Tool to post a message as a chatbot to a Basecamp Campfire. Use when you need to post messages via a chatbot integration without OAuth authentication.

ActionTry it

Create Cloud File

Link an external file or document in a Basecamp project's vault or folder. Provide a URL matching the selected service, or use service other for a generic HTTPS link. Optionally add a title, HTML description and comment subscribers. Returns the created cloud file and its effective visibility.

ActionTry it

Create Comment on Recording

Tool to publish a comment on a recording within a Basecamp project. Use when you need to add a comment with rich text to any recording such as a todolist, message, or document.

ActionTry it

Create Comment on To-Do List

Tool to add a comment to a to-do list in a Basecamp project. Use when you need to comment on a todolist with feedback, updates, or discussions. All subscribers to the to-do list will be notified.

ActionTry it

Create Document in Vault

Tool to create a new document in a Basecamp vault. Use when you need to publish a document in a specific project vault with title, HTML content, and optional publication status.

ActionTry it

Create Embed

Create an embed for a URL, or return the embed Basecamp already has for it. Both new and existing embeds return 200 with an sgid. New embeds may be pending while Basecamp queries the provider. This action does not poll automatically: use Get Embed with the sgid about once a second until active or not_found. Active embeds have a content_type; not_found means there is nothing to embed. Unsupported URLs return 422 with an error; link to the URL instead. More than 100 new embeds per hour returns 429 with an error and no Retry-After header. That limit refuses only new embeds for the rest of the hour: existing embeds and other requests still work.

ActionTry it

Create Event Boost

Publish a short note or emoji boost on a specific recording event. Use an event that exposes boosts_count and boosts_url. Non-boostable events and recordings with closed comments return 403. The connected account selects the account; no project ID is needed.

ActionTry it

Create External Link

Create an external link in a project's External links section. Optionally upload a thumbnail. Success returns an empty 302 redirect, not an external link ID. The redirect is never followed. Discover the created ID with GET /projects/recordings.json?type=Door&bucket=<project ID>; external links are omitted from the project's dock array.

ActionTry it

Create Folder

Create a personal folder at the top of the current user's home screen. Optionally file projects into it. Filing an eligible all-access project also grants the current user access. Any archived, trashed, or inaccessible invitation-only project causes a 404 and nothing is created.

ActionTry it

Create Gauge Needle

Record a new project progress snapshot with a position, color, and HTML description. Each needle preserves a point-in-time update. Omit notify to notify nobody; use custom with subscriptions to notify specific people. Returns the created needle.

ActionTry it

Create Google Document

Link a Google Workspace document in a Basecamp project's vault or folder. Supply its URL and kind (doc, sheet, slide or other). Optionally set a title, HTML description, subscribers and visibility. Documents default to drafts; set status to active to publish immediately. Returns the created recording.

ActionTry it

Create Hill Chart Progress Update

Save a hill chart progress update, optionally moving tracked to-do lists and adding an HTML note. Omitted lists keep their positions. Use Update Hill Chart Settings to track or untrack lists. Returns the saved update with all tracked list positions. Basecamp rejects duplicate or untracked dot IDs and charts with no tracked lists.

ActionTry it

Create Lineup Marker

Tool to create an account-wide marker that shows up in the Lineup. Use when you need to add a visual marker to highlight important dates or milestones across all projects.

ActionTry it

Create Message Category

Tool to create a new message type (category) in a Basecamp project. Use when you need to create a custom message category for organizing different types of messages in a project.

ActionTry it

Create Message on Message Board

Tool to publish a message to a Basecamp message board within a project. Use when you need to create a new message with optional rich HTML content and subscriptions.

ActionTry it

Create New Project

Tool to create a new project in Basecamp with a name and optional description. Use when you need to set up a new project workspace for team collaboration.

ActionTry it

Create New Template

Tool to create a new template in Basecamp with a name and optional description. Use when you need to set up a reusable project template for standardizing workflows.

ActionTry it

Create On-Hold Section in Column

Tool to create an on-hold section in a card table column. Use when you need to add an on-hold area to organize cards that are temporarily paused or waiting.

ActionTry it

Create Ping

Open a private Basecamp Ping and automatically include the current user. Reuses an active direct Ping or a group with the same members, unless new_group is true for a group. Archived Pings are never reused. Group titles are returned from the existing Ping; this operation does not set a title. Check response.people: unreachable or off-account IDs are silently dropped and may leave only yourself. Agents need at least one person who can use Pings (otherwise 422); disabled Pings return 403. Returns the Ping with 201 even when reused. Post a Campfire line using links.lines to make a new Ping appear in the active Pings list.

ActionTry it

Create Project from Template

Tool to create a new project from a Basecamp template asynchronously. Use when you need to instantiate a project based on an existing template. Poll the returned URL to monitor construction progress until status becomes 'completed'.

ActionTry it

Create Question

Create a scheduled automatic check-in question in a Basecamp questionnaire. Supply the question title and schedule, and optionally the people to ask. Omitting respondents creates a question that asks nobody.

ActionTry it

Create Recording Boost

Publish a short note or emoji boost on a recording. Use a recording that exposes boosts_count and boosts_url. The connected account selects the account; no project ID is needed.

ActionTry it

Create Schedule Entry

Tool to create a schedule entry in a Basecamp schedule within a project. Use when you need to add a new event with start/end times and optional participants.

ActionTry it

Create Step in Card

Tool to create a step within a card in a Basecamp card table. Use when you need to add a subtask or checklist item to an existing card with optional due date and assignees.

ActionTry it

Create Stream Ticket

Mint a short-lived ticket and exact WebSocket URL for live Basecamp events. Mint a fresh ticket for each connection attempt and connect to the returned URL verbatim. Tickets last about two minutes and are sensitive bearer credentials. This action only mints the ticket; it does not open or manage a WebSocket.

ActionTry it

Create Subtask

Create a subtask under a Basecamp to-do or card, optionally with a due date and assignees. Other recording types do not accept subtasks and return 403 Forbidden. The connected account is selected by the configured base URL.

ActionTry it

Create Template Library Card Table

Create a named card table template in the account's template library. The template starts with the default columns. Its parent is the library's card table container; this does not add a board to a project's dock.

ActionTry it

Create Template Library Copy

Start copying a library to-do list or card table template into a project. Returns a background copy resource, not a guarantee that copying has completed. Poll its URL with the same credentials, no more than once per second. Supply a destination project or its to-do set/dock recording ID. A 422 people_confirmation_required response identifies people who would gain project access; review them before retrying with adding_people_confirmed=true.

ActionTry it

Create Template Library Todolist

Create an empty to-do list template in the account's template library. Use the returned list ID with the to-do endpoints to fill in its contents.

ActionTry it

Create Templatification

Turn an existing project to-do list or card table into a library template. Starts a background job and returns its status and polling URL, not a guarantee that the template is ready. Only the initiating person may poll the result. Requires project editing access and a non-client caller. Other recording types are rejected by Basecamp. Omit options to use the source title and copy neither comments nor assignments.

ActionTry it

Create Timesheet Entry

Log time spent on a recording and return the created timesheet entry. For project-level time, use the project timesheet's recording ID, not the project ID. Existing project-level entries identify it in their parent field. Omit person_id to log time for the authenticated user.

ActionTry it

Create To-Do (Deprecated)

DEPRECATED: Use BASECAMP_POST_BUCKETS_TODOLISTS_TODOS instead. Tool to create a new to-do in a Basecamp to-do list. Use when you need to add a task with optional description, assignees, and due date.

ActionTry it

Create To-Do in To-Do List

Tool to create a to-do in a Basecamp to-do list within a project. Use when you need to add a new to-do item with optional description, assignees, and due date.

ActionTry it

Create To-Do List Group

Tool to create a new to-do group within a parent to-do list in Basecamp. Use when organizing todos into groups with optional color coding.

ActionTry it

Create To-Do List in To-Do Set

Tool to create a new to-do list in a Basecamp to-do set within a project. Use when you need to add a new to-do list with optional HTML description.

ActionTry it

Create Todoset Todo

Create a to-do directly in a project's to-do set, outside any to-do list. Supply the project and its to-do set identifier, plus the to-do content. Optionally assign people, notify them, set dates, or add a rich-text description. Returns the created to-do. Find the to-do set identifier using Get Todoset.

ActionTry it

Create Tool

Add a tool to a project's dock, optionally choosing its title and client visibility. Basecamp chooses the title when omitted. Client visibility applies only to new Chat and Card Table tools; re-enabling an existing tool keeps its visibility.

ActionTry it

Create Upload in Vault

Tool to create a new upload (file) in a Basecamp vault. Use when you need to create an upload entry for a previously uploaded attachment in a specific project vault.

ActionTry it

Create Upload Version

Replace an upload's file while keeping its ID, URL, comments and visibility. First upload the replacement with Create Attachment and supply its attachable_sgid. The previous file remains available as a past version and still uses storage. Omit description to retain it; send an empty string or null to clear it.

ActionTry it

Create Webhook

Tool to create a new webhook subscription for a Basecamp project. Use when you need to receive event notifications at a specified HTTPS endpoint for project activities.

ActionTry it

Create Wormhole

Create a standing shortcut from a card table to a column on another card table. Use when a board should keep a shortcut for moving cards, usually to another project. Supply an accessible destination column ID. A card table holds at most four wormholes; exceeding that limit returns 422. This creates the shortcut only; move a card onto the returned wormhole ID to send it through.

ActionTry it

Delete Bookmark

Remove the current user's personal bookmark from a recording. Removing an absent bookmark also succeeds. The recording itself is not deleted.

ActionTry it

Delete Boost

Delete a boost by its ID. Only its creator or an admin can delete it. Returns no content on success. Get the boost ID from a recording's or recording event's boosts before deleting it.

ActionTry it

Delete Bubble Up

Remove the current user's bubble-up reminder from a recording. Removing an absent bubble-up also succeeds. The recording itself is not deleted.

ActionTry it

Delete Campfire Line

Tool to delete a Campfire line from a chat conversation. Use when removing a specific message from a Basecamp Campfire chat.

ActionTry it

Delete Card Table Column On-Hold Section

Tool to remove the on-hold section from a card table column. Use when you need to delete the on-hold section from a column in a Basecamp project's card table.

ActionTry it

Delete Chatbot

Tool to delete a chatbot from a Campfire chat. Use when removing a chatbot from the account. Note: Deletion is account-wide and only account administrators can delete chatbots.

ActionTry it

Delete Folder

Delete a folder from the current user's home screen. This unpins the folder's projects from the home screen without deleting the projects or moving them back onto the home screen. They remain absent until pinned again. Folders are personal to the authenticated user.

ActionTry it

Delete Lineup Marker

Permanently delete an account-wide marker from the Lineup immediately. Supply the marker ID returned by listing Lineup markers.

ActionTry it

Delete Message Type

Tool to delete a message type from a Basecamp project. Use when removing a custom message category. Permanently removes the specified message type.

ActionTry it

Delete Subtask

Delete a subtask from a to-do or card. Accounts that restrict deletion require an admin or the subtask's creator; other users receive 403 Forbidden.

ActionTry it

Delete Timesheet Entry

Permanently delete a timesheet entry. The entry cannot be restored and does not appear in the trash. Use this operation to remove timesheet entries; archiving or trashing recordings does not support them. Callers without permission receive 403 Forbidden.

ActionTry it

Delete Tool

Remove a tool from a Basecamp project's dock. Deletes external links and empty extra tools of a type the project already has; Basecamp permanently destroys deleted tools about five days later. All other tools are disabled, preserving their content for re-enabling. Empty means no content, including trashed items; for Card Tables only cards count. Both outcomes return no content. Get the tool afterwards to distinguish deleted status from a disabled tool, which retains its status and has no position.

ActionTry it

Delete Webhook

Tool to delete a webhook from a Basecamp project. Use when you need to remove a webhook subscription from a project. Permanently deletes the specified webhook.

ActionTry it

Delete Wormhole

Permanently delete a card table's wormhole shortcut to another card table. The wormhole does not go to the trash and cannot be restored. Supply its ID and the ID of the project containing it.

ActionTry it

Deprioritize Assignment

Remove a recording from the current user's Up Next assignments. Clears only the priority on the identified recording. If it has no priority, the operation succeeds without changes, so repeated calls are safe. For a prioritized card table step, supply its priority_recording_id rather than its parent card's ID.

ActionTry it

Destroy Gauge Needle

Destroy a project progress gauge needle by its ID. Returns no content on success. The account is selected by the connection.

ActionTry it

Disable Out of Office

Disable a person's out-of-office status in the connected Basecamp account. Admins on accounts with a Pro Pack can manage other people's out of office; otherwise, only your own can be managed. Already-disabled status also succeeds.

ActionTry it

Disable Project Clients

Disable client access on a Basecamp project. Remove all client users from the project first using Update Project Client Access; otherwise Basecamp returns 403. Disabling an already-disabled project is safe and returns its disabled state. The account is selected by the connection.

ActionTry it

Disable Tool

Hide a tool from its Basecamp project's dock without deleting its content. The tool can be re-enabled later. Only project dock tools are supported; a Ping's Campfire cannot be disabled with this operation.

ActionTry it

Download File

Download file bytes from a complete provider-issued Basecamp URL.

ActionTry it

Enable Out Of Office

Enable or replace a person's out-of-office date window. Manage your own status, or another person's status as an admin on an account with Pro Pack. Returns the current out-of-office status and return date.

ActionTry it

Enable Project Clients

Enable clients on a standard project before adding client users. Applies default client visibility to the timeline and most docked tools; the card table, Campfire, and Doors stay private. Requires an account that supports clients. Enabling an already-enabled project is idempotent.

ActionTry it

Enable Tool

Show an existing tool at the end of its Basecamp project's dock. Re-enable a hidden tool without changing its content or client visibility. Only project dock tools are supported; a Ping's Campfire cannot be enabled.

ActionTry it

Enroll Account Members

Enroll people on the Basecamp account and optionally grant project access. Requires permission to manage account people. Sends invitation emails by default; set notify to false to suppress them. Existing email addresses re-enroll members. Invalid or inaccessible project IDs are silently ignored, so success does not guarantee access to every requested project. Enrollment is all-or-nothing if a person fails validation; account user limits may prevent new enrollments.

ActionTry it

Get a specific card by ID

Tool to get a specific card by ID from a card table. Use when you need to retrieve complete card details including title, description, status, assignees, steps, and metadata.

ActionTry it

Get Account

Retrieve the connected Basecamp account's name, owner, plan, limits and settings. Use to inspect account status and feature availability before project or upload operations. The account is selected by the connection, with no input required. Use Get Authorization, not this settings record's ID, to discover API account IDs.

ActionTry it

Get All People

Retrieve a page of people visible to the current user in the Basecamp account, including available contact information and permission fields. Specify a page to retrieve subsequent results.

ActionTry it

Get Answers By Person

List one person's answers to a specific automatic check-in question. Returns one page with answer content, attachments, author and project details. Pass next_page as page to retrieve additional answers.

ActionTry it

Get Assigned Todos

Retrieve a person's active, pending to-dos across projects. Optionally group the report by project or due date. Returns the person, the grouping applied, and their assigned to-dos.

ActionTry it

Get Authorization

Retrieve the current token's identity, accessible accounts, scope and expiration. Use to discover an account's API URL before account-specific requests. Works with tokens accepted by Basecamp, including personal access tokens and legacy Launchpad OAuth tokens. Identity IDs are not Basecamp person IDs.

ActionTry it

Get Backlinks

List the most recent 20 recordings referencing a recording in rich text. Results are newest first and contain the referencing recordings, not backlink objects. Only references from projects and pings the connected user can access are returned, so different users may see different results.

ActionTry it

Get Bookmark

Check whether a recording is bookmarked by the current user. Bookmarks are personal; this reports only the connected user's bookmark state. It does not create or remove a bookmark.

ActionTry it

Get Boost

Retrieve a single boost by ID, including its note, author and boosted recording. Use when a boost ID is already known. The connected account is selected by the connection; no project ID is required.

ActionTry it

Get Bubble Ups

List the current user's current and scheduled bubble-ups, 50 per page. Current items come first, most recently bubbled up first; scheduled items follow in scheduled-time order. Use next_page to retrieve further results.

ActionTry it

Get Calendar

Retrieve a Basecamp calendar's name, color and underlying schedule URL. Use the calendar's own bucket ID; calendars are distinct from projects. Available since Basecamp 5. This returns display metadata, not schedule entries.

ActionTry it

Get Campfire

Tool to retrieve a specific Campfire (chat room) by ID from a Basecamp project. Use when you need to get complete Campfire details including metadata, URLs, topic, and creator information.

ActionTry it

Get Campfire Chatbot Integrations

Tool to retrieve all chatbot integrations from a Campfire chat. Use when you need to get the list of chatbots accessible to the account with chat-specific line URLs for posting messages.

ActionTry it

Get Campfire Line

Tool to retrieve a specific Campfire line by ID from a Basecamp project. Use when you need to fetch a single message from a chat transcript.

ActionTry it

Get Campfire Lines

Retrieve Campfire lines from a specific chat in a Basecamp project. The tool returns a single response page.

ActionTry it

Get Card Step

Retrieve a card table step by ID, including assignments, due date and completion. Use when you know the step identifier and need its current details or parent card.

ActionTry it

Get card table (Kanban board)

Tool to retrieve a card table (Kanban board) for a project. Use when you need to fetch information about a specific card table including its columns, cards count, and subscribers.

ActionTry it

Get Card Table Column

Tool to get a specific column from a card table within a Basecamp project. Use when you need to fetch details about a card table column by its ID.

ActionTry it

Get Cards from Card Table List

Tool to retrieve a paginated list of cards from a card table column. Use when you need to fetch cards from a specific list/column within a Basecamp project's card table.

ActionTry it

Get Chatbot by ID

Tool to get a specific chatbot by ID from a Basecamp Campfire chat. Use when you need to retrieve details about a chatbot, including its service name, command URL, and lines URL.

ActionTry it

Get Chats

Retrieve one page of active Campfires visible to the current user from Basecamp. Use page to request a subsequent page; omitting it returns the first page.

ActionTry it

Get Circles People

Retrieve a page of people on the Basecamp account who can be pinged. Supply a page number to request subsequent pages.

ActionTry it

Get Client Approval

Retrieve a client approval by ID, including its content and approval responses. Returns the subject, due date, approval status and approver when available. The account comes from the connection; no project ID is needed.

ActionTry it

Get Client Correspondence

Retrieve one client correspondence by its identifier. Returns the subject, rich-text content, embedded attachment metadata, author, project and reply count. Use the replies URL to locate its client replies.

ActionTry it

Get Client Reply

Retrieve one client reply to a correspondence or approval in a project. Supply the project, parent recording and reply identifiers to read the reply's content, author and embedded attachment metadata.

ActionTry it

Get Cloud File

Retrieve a cloud file's title, description, external link and service details. Supply the cloud file's recording ID. Returns the Basecamp record and its containing project, creator, comments and boosts metadata; does not download the external file. The response url points to the external service.

ActionTry it

Get Comment

Tool to retrieve a specific comment by ID from a Basecamp project. Use when you need to fetch details about a particular comment including its content, creator, and parent resource.

ActionTry it

Get Document by ID

Tool to get a specific document by ID from a Basecamp project bucket. Use when you need to retrieve complete document details including title, content, creator, metadata, and comments count.

ActionTry it

Get Documents from Vault

Tool to retrieve a paginated list of active documents from a vault in a Basecamp project. Use when you need to fetch all documents stored in a specific vault.

ActionTry it

Get Embed

Retrieve a Basecamp embed using the signed global ID returned at creation. A new embed may be pending while Basecamp queries its provider. Poll about once a second until active or not_found. Active embeds provide a content_type for insertion in rich text; not_found means the provider has nothing to embed.

ActionTry it

Get Everything Checkins

List automatic check-in answers across all accessible projects, newest first. Returns one page with each answer's project and question. Use next_page to retrieve additional answers.

ActionTry it

Get Everything Comments

List comments across all accessible projects, newest first. Returns one page with each comment's project, parent recording, author and rich-text content. Use next_page to retrieve additional comments.

ActionTry it

Get Everything Completed Cards

List completed cards across all accessible projects, grouped by project. Optionally filter by card assignees and due date. Pagination counts project groups, which may contain no cards; hidden project tools are excluded.

ActionTry it

Get Everything Completed Todos

List completed to-dos across accessible projects, grouped by project. Returns one page including embedded steps. To-dos under hidden tools are excluded, and a project group can have no matching visible to-dos. Optionally filter by assignee or due date; use next_page to retrieve more project groups.

ActionTry it

Get Everything Files

List uploads, documents and rich-text attachments across accessible projects. Returns one page, newest first. Filter by file kind or creator and use next_page to retrieve further results. Download URLs require authentication.

ActionTry it

Get Everything Forwards

List inbox email forwards across all accessible projects, newest first. Returns one page with each forward's project, sender, content, and reply count. Use next_page to retrieve additional forwards.

ActionTry it

Get Everything Messages

List messages across all accessible projects, newest first. Returns one page with message bodies, authors, message boards and project context. Use next_page to retrieve additional messages.

ActionTry it

Get Everything No Due Date Cards

List open cards without a due date across accessible projects, grouped by project. Retrieve one page, optionally narrowed by card assignees or a due-date filter. Nested step assignees do not affect filtering; hidden project tools are excluded.

ActionTry it

Get Everything No Due Date Todos

List open to-dos without a due date across accessible projects, grouped by project. Returns one page with embedded steps, optionally filtered by assignee or due date. Tasks under hidden project tools are excluded; project groups can be empty and still count toward pagination. Use next_page to retrieve more.

ActionTry it

Get Everything Not Now Cards

List cards parked in Not now columns across all accessible projects. Returns one page grouped by project, including each card's steps. Filter by card assignees or due date. Pagination counts projects, including empty groups; tasks in tools hidden from the project dock are excluded.

ActionTry it

Get Everything Open Cards

List incomplete cards in active columns across accessible Basecamp projects. Returns one page grouped by project, with embedded card steps. Hidden tools are excluded; a project group can have no matching visible cards. Filter by card assignees or due dates, and use next_page to retrieve more project groups.

ActionTry it

Get Everything Open Todos

List active, incomplete to-dos across accessible projects, grouped by project. Returns one page including the first 100 steps per to-do; use subtasks_url for additional steps. Tasks under hidden tools are excluded, and a project group can be empty. Filter by assignee or due date, and use next_page to retrieve more project groups. Available since Basecamp 5.

ActionTry it

Get Everything Overdue Cards

List overdue cards across all accessible projects, oldest due date first. Returns a complete, unpaginated flat list with each card's project, rather than project groups. Optionally filter by card assignees and due date.

ActionTry it

Get Everything Overdue Todos

List all overdue to-dos across accessible projects, oldest due date first. Returns a complete, unpaginated list with each to-do's project embedded. Optionally filter by assignee or due date.

ActionTry it

Get Everything Unassigned Cards

List open cards with no assignees across accessible projects, grouped by project. Retrieve one page with optional assignee and due-date filters. Nested step assignees do not affect filtering; hidden project tools are excluded.

ActionTry it

Get Everything Unassigned Todos

List open to-dos with no assignees across accessible projects, grouped by project. Returns one page including embedded steps. To-dos under hidden tools are excluded, and a project group can have no matching visible to-dos. Supports the shared assignee and due-date filters; use next_page for more groups.

ActionTry it

Get Filing

Read the current state of a Basecamp recording move or copy. Call again while status is pending or processing; this action reads once and does not wait. On completion, destination_recording contains the new ID and URL. Only the person who started the operation can read its filing. Basecamp returns 404 for another person's filing or a permanently deleted result.

ActionTry it

Get Folder

Retrieve a home-screen folder with its expanded project details. Folders belong to the authenticated user. Use a folder ID from List Folders to inspect the projects grouped inside it.

ActionTry it

Get Forward

Retrieve a forwarded email by ID, including content, sender, attachments and reply links.

ActionTry it

Get Forward Reply

Retrieve one reply to a forwarded email, including content, attachments and sender details.

ActionTry it

Get Gauge Needle

Retrieve one project progress update by its gauge needle ID. Returns the recorded position, status color, rich text description and creator, along with the parent gauge and project. No project ID is needed.

ActionTry it

Get Google Document

Retrieve a linked Google Workspace document by its Basecamp recording ID. Returns its Google Workspace URL, title, description, creator and containing project or folder. This reads the Basecamp record, not the Google file contents.

ActionTry it

Get Hill Chart

Retrieve a to-do set's hill chart and tracked to-do list progress. Get the to-do set ID from the project's dock. Returns chart status, dots, and links to progress updates when available.

ActionTry it

Get Hill Chart Progress Update

Retrieve one saved hill chart progress update, including its note and historical to-do list positions. Use the to-do set ID from the project's dock and the update ID from the hill chart's progress updates. Deleted or moved lists may have null dot IDs.

ActionTry it

Get Inbox

Tool to get the inbox (email forwards) for a Basecamp project. Use when you need to retrieve details about a specific inbox including its forwards count and metadata.

ActionTry it

Get Inbox Forwards

Retrieve active email forwards from a Basecamp project's inbox. The tool returns a single response page.

ActionTry it

Get Message Board

Tool to get the message board for a project. Use when you need to retrieve details about a specific message board including its title, creator, message count, and URLs.

ActionTry it

Get Message by ID

Tool to retrieve a specific message by ID from a Basecamp project message board. Use when you need to fetch details of a single message including its content, author, and metadata.

ActionTry it

Get Message Categories

Tool to retrieve all message types (categories) from a Basecamp project. Use when you need to list all available message categories for organizing messages in a project.

ActionTry it

Get Message Type by ID

Tool to retrieve a specific message type by ID from a Basecamp project. Use when you need details about a specific message type/category.

ActionTry it

Get Messages from Message Board

Tool to retrieve a paginated list of active messages from a message board in a Basecamp project. Use when you need to fetch messages from a specific message board.

ActionTry it

Get My Assignments

Get the current user's active assignments grouped by priority. Returns the full result set without pagination. Card table steps appear as children of their parent card; priority_recording_id identifies the recording carrying a priority when it differs from the card's id.

ActionTry it

Get My Completed Assignments

Get the current user's completed assignments in a single, unpaginated result. Archived and trashed recordings are excluded. Assignments include project, assignee, parent, and child assignment details when available.

ActionTry it

Get My Due Assignments

Get the current user's assignments filtered by due date range. Defaults to overdue assignments when scope is omitted. Returns the full result set without pagination, including any nested child assignments.

ActionTry it

Get My Note

Read the authenticated user's personal notebook note in Basecamp 5. Returns the current rich-text body and its file attachments. Before the first save, content is empty and the identifier and timestamps are null.

ActionTry it

Get My Notifications

Get the current user's unread, recently read, and saved notifications. Page through read items 50 at a time. Unreads are capped at 100; bubble-ups are capped at 50 (or two when limited). Scheduled bubble-ups are omitted when limited. Counts describe all bubble-ups, even when their lists are capped.

ActionTry it

Get My Preferences

Retrieve the connected user's time zone, first weekday and time display format. Use to inspect personal display preferences. No input is required: the connection selects the account and current user.

ActionTry it

Get My Profile

Tool to retrieve the current user's personal info including profile details, permissions, and settings. Use when you need to get information about the authenticated user.

ActionTry it

Get Out Of Office

Get a person's out-of-office status and scheduled absence dates. When out of office is disabled, enabled is false and the date fields are omitted by Basecamp. The connected account is selected by the connection.

ActionTry it

Get Overdue Todos

Get overdue to-dos across all projects, grouped by how late they are. Returns four groups covering under a week, over a week, over a month, and over three months late. The connected account is selected automatically.

ActionTry it

Get Person by ID

Tool to retrieve the profile for a specific user by their ID. Use when you need to get detailed information about a specific person in the Basecamp account.

ActionTry it

Get Person Progress

Read a person's recent Basecamp activity timeline. Returns the person and one page of events they created, such as posted messages and completed to-dos. Supply page to retrieve another page; pagination is not followed automatically.

ActionTry it

Get Ping

Retrieve a private Basecamp Ping the current user belongs to, including archived Pings. Returns participants and links to its Campfire lines and uploads, not the messages themselves. Use the Ping's own ID, not its Campfire ID. Returns 404 if the user is not a member, or 403 if their company has disabled Pings.

ActionTry it

Get Progress Report

Read one page of recent activity across all accessible Basecamp projects. Returns timeline events such as messages posted, to-dos completed, and files uploaded. Use next_page to retrieve more; pages are not followed automatically.

ActionTry it

Get Project

Tool to retrieve a specific project by its ID with complete details. Use when you need to get comprehensive information about a particular project including its status, metadata, and dock tools configuration.

ActionTry it

Get Project by ID

Tool to retrieve a single project by its ID with full details including dock tools. Use when you need to get information about a specific project that the user has access to.

ActionTry it

Get Project Construction Status

Tool to retrieve the status of a project construction from a template. Use when you need to monitor the progress of a project being created from a template. Can be polled at intervals (no more than once per second) to track construction status.

ActionTry it

Get Project Logo

Get a project's logo image URL without downloading the image. Requires authenticated read access to the project, not edit permission. Returns the Location header and 302 status; a project with no logo returns a 404 error. Storage URLs expire: call this action again for a fresh URL rather than reusing a saved one. Never follows the redirect or forwards connection credentials to storage.

ActionTry it

Get Project Timeline

Read one page of recent activity in a Basecamp project. Returns timeline events such as posted messages, completed to-dos, and uploads. Use next_page to request further pages; pagination is not followed automatically.

ActionTry it

Get Project Timesheet

List one page of time entries across a project and its recordings. Includes time logged directly to the project and on to-dos, messages, cards, and other recordings. Each entry's parent identifies where time was logged. Use next_page to retrieve additional entries.

ActionTry it

Get Project Wallpaper

Get a project's wallpaper image URL without downloading the image. Requires authenticated read access to the project, not edit permission. Returns the Location URL and 302 status without following the redirect or forwarding credentials to storage. Returns a 404 error when the project has no wallpaper. Storage URLs expire; call this action again for a fresh URL.

ActionTry it

Get Project Webhooks

Retrieve a page of webhook configurations for a Basecamp project, including payload URLs, event types, and active status. Request additional pages to list more webhooks.

ActionTry it

Get Projects

Retrieve a page of projects visible to the current user, sorted by most recently created first. Supports filtering by status and choosing an account.

ActionTry it

Get Projects People

Retrieve a page of active people assigned to a specific Basecamp project.

ActionTry it

Get Projects Recordings

Retrieve a page of recordings of a specified type across Basecamp projects, with optional project and status filters and sorting.

ActionTry it

Get Question Answer by ID

Retrieve a specific automatic check-in question answer by ID from a Basecamp project, including its content, creator, comment count and comments URL.

ActionTry it

Get Question by ID

Tool to retrieve a specific check-in question by ID from a Basecamp project. Use when you already know the question ID and need its details without listing all questions from a questionnaire.

ActionTry it

Get Question Reminders

Get one page of pending automatic check-in reminders for the current user. Each reminder includes its question and project. Use next_page to fetch additional results when present.

ActionTry it

Get Questionnaire

Tool to retrieve a specific questionnaire (automatic check-ins) from a Basecamp project. Use when you need to fetch details about a questionnaire including its questions count and metadata.

ActionTry it

Get Questions from Questionnaire

Tool to retrieve a paginated list of questions from a questionnaire in a Basecamp project. Use when you need to fetch questions from a specific questionnaire.

ActionTry it

Get Recording

Retrieve a Basecamp recording by ID without needing to know its type. Inspect the returned type and URLs to find the corresponding type-specific endpoint. Available details depend on the kind of recording.

ActionTry it

Get Recording Events

Retrieve events for a specific recording in a Basecamp project to inspect its change history. The tool returns a single response page.

ActionTry it

Get Recording Timesheet

List one page of time entries logged on a specific recording. Supply the recording ID of a to-do, message, card, or other recording. Optionally filter by date range or person, and use next_page to retrieve additional entries.

ActionTry it

Get Schedule Entries

Retrieve schedule entries from a specific schedule in a Basecamp project, optionally filtering by archived or trashed status. The tool returns a single response page.

ActionTry it

Get Schedule Entry

Tool to get a specific schedule entry by ID from a Basecamp project. Use when you need to retrieve details about a scheduled event including its time, participants, and metadata.

ActionTry it

Get Schedule Entry Occurrence

Get one occurrence of a recurring schedule entry by entry ID and date. Use a YYYYMMDD date to inspect its times, participants and recurrence pattern. Basecamp returns 404 when the date is not a valid occurrence.

ActionTry it

Get Schedule for Project

Tool to retrieve schedule details for a specific project. Use when you need information about a schedule including entries count and configuration.

ActionTry it

Get Search Metadata

Get the account's available search filter options and default labels. Call before searching to discover current values for type_names[] and file_type. A null option key means omit that filter to search everything.

ActionTry it

Get Subscription

Tool to get subscription information for a recording. Use when you need to check subscription status, view subscriber count, or get detailed information about all subscribers for a specific recording.

ActionTry it

Get Subtask

Get a Basecamp subtask by ID, including its parent, assignees and completion details. Subtasks belong to to-dos or cards. The connected account is selected by the configured base URL.

ActionTry it

Get Template by ID

Tool to retrieve a single template by its ID with full details including dock tools. Use when you need to get information about a specific template that the user has access to.

ActionTry it

Get Template Library Card Tables

Retrieve the account's card table templates in title order. Returns the template library bucket, its card table container, and active template recordings. Use the bucket and card table IDs with card table, column, and card tools to manage template contents. The container is null if the library has never held a card table template.

ActionTry it

Get Template Library Copy

Check the progress and result of copying a template into a project. Poll no more than once per second while pending or processing. Completed copies include the created to-do list or card table. Use the same connection that started the copy; other people receive 404. Failed copies could not complete.

ActionTry it

Get Template Library To-do Lists

Retrieve the account's active to-do list templates in title order. Returns the template library bucket, its to-do set, and template to-do lists. Use the returned bucket, to-do set, and list IDs with to-do list and to-do tools to create and manage template contents.

ActionTry it

Get Templates

Tool to retrieve a paginated list of active templates visible to the current user, sorted by most recently created first. Use when you need to list templates or filter by status (active/archived/trashed).

ActionTry it

Get Templatification

Check progress of turning a to-do list or card table into a template. Poll while status is pending or processing. A completed result includes the destination template; failed means it could not be made. Only the person who started the operation can read it; other people receive 404.

ActionTry it

Get Timesheet Entry

Retrieve a single timesheet entry by its ID. Returns the logged date, hours, work description, person, and containing recording and project when available.

ActionTry it

Get Timesheet Report

Tool to retrieve all timesheet entries across the Basecamp account within a given timeframe. Use when you need to generate time reports, track hours logged, or analyze time entries by person or project. Without date parameters, returns only the last month of entries.

ActionTry it

Get To-Do by ID

Tool to retrieve a specific to-do by ID from a Basecamp project. Use when you need to fetch a single to-do item including its content, title, assignees, completion status, and dates.

ActionTry it

Get To-Do by ID

Tool to retrieve a specific to-do by ID from a Basecamp project. Use when you need to fetch detailed information about a single to-do item including its content, title, assignees, completion status, dates, and parent relationships.

ActionTry it

Get To-Do List

Tool to retrieve a specific to-do list from a Basecamp project by its ID. Use when you need to get details about a to-do list including its title, description, completion status, and URLs for todos and groups.

ActionTry it

Get To-do List Groups

Retrieve a paginated list of groups from a to-do list in a Basecamp project, optionally filtering by status.

ActionTry it

Get To-Do Set

Tool to retrieve a specific to-do set from a Basecamp project. Use when you need to get details about a to-do set, including its completion status and to-do lists count.

ActionTry it

Get To-Dos from To-Do List

Tool to retrieve a paginated list of to-dos from a specific to-do list in a Basecamp project. Use when you need to fetch to-do items from a to-do list, optionally filtering by status or completion state.

ActionTry it

Get Todoset To-Do Lists

Tool to retrieve a paginated list of to-do lists within a specific to-do set in a Basecamp project. Use when you need to fetch all to-do lists from a to-do set, optionally filtering by status.

ActionTry it

Get Tool

Retrieve a project's dock tool by its recording ID. Find IDs in the project's dock. Returns the title, type, status, project and creator. A disabled docked tool has no position; a deleted tool has status 'deleted' until destroyed. Ping Campfires are not dock tools and return 404.

ActionTry it

Get Upcoming Schedule

Get upcoming schedule entries, recurring occurrences and dated assignments. Supply an inclusive date window to view events and dated to-dos, cards and steps across projects. Returns all three groups without pagination.

ActionTry it

Get Upload

Tool to get a specific upload by ID from a Basecamp project. Use when you need to retrieve details about an uploaded file including metadata, download URL, and dimensions.

ActionTry it

Get Upload by ID

Tool to retrieve a specific upload by ID from a Basecamp project vault. Use when you need to fetch details about an uploaded file including its metadata, download URL, and dimensions.

ActionTry it

Get Uploads from Vault

Tool to retrieve a paginated list of active uploads from a vault in a Basecamp project. Use when you need to fetch all uploaded files stored in a specific vault.

ActionTry it

Get Vault from Project

Retrieve a specific vault from a Basecamp project, including counts and collection URLs for its documents, uploads, and nested vaults when available.

ActionTry it

Get Vaults from Parent Vault

Retrieve a page of vaults nested within a parent vault in a Basecamp project. To continue, pass the page number from next_page_url with the same bucket_id and vault_id. An absent next_page_url indicates the last page.

ActionTry it

Get Webhook by ID

Tool to retrieve a specific webhook by ID from a Basecamp project. Use when you need details about a webhook including its delivery history.

ActionTry it

Grant or Revoke Project Access

Tool to grant or revoke project access for users in Basecamp. Use when you need to add existing users to a project, create new users with access, or remove users from a project. At least one of grant, revoke, or create must be provided.

ActionTry it

Join Project

Join the connected person's project when its admission policy permits it. Supply a project ID obtained from its web URL or someone with access. This joins only the authenticated person; it does not invite other people. Team and employee policies restrict who may join; invite-only projects admit owners. A 404 can mean the project is missing or its policy denies admission. Already-admitted members receive an already_member result, without following the provider's redirect.

ActionTry it

List Answers

List a check-in question's answers, optionally filtered by day or author. Returns one page of answers with rich-text content, attachments, authors and projects. Pass next_page as page to retrieve the following page.

ActionTry it

List Assignable People

List people who can be assigned to-dos in the connected Basecamp account. Use the returned person IDs to retrieve individual to-do assignments.

ActionTry it

List Campfire Uploads

List files uploaded to a Basecamp Campfire, newest first by default. Returns file details, download URLs and uploaders for one page. Use next_page to retrieve another page, or sort and direction to change the ordering.

ActionTry it

List Chatbots

Tool to get all chatbots for a chat/campfire. Use when you need to retrieve the list of chatbot integrations with their line URLs for posting messages.

ActionTry it

List Client Approvals

List a project's client approvals with subjects, due dates and approval status. Returns one page. Use next_page to continue and sort/direction to order results.

ActionTry it

List Client Correspondences

List a project's client correspondences, with optional sorting and pagination. Returns one page with authors, content, attachments and reply counts. Use next_page to retrieve subsequent pages.

ActionTry it

List Client Replies

List replies to a client correspondence or client approval in a project. Returns one page with reply content, authors and attachments. Pass next_page as page to retrieve subsequent results.

ActionTry it

List Comments

Retrieve a page of active comments on a recording in a Basecamp project, including content, creators, and metadata. The response can include a next-page URL and total count.

ActionTry it

List Event Boosts

List one page of active boosts on a specific event within a recording. Use an event with boosts_url and boosts_count in its JSON. Other events return 403; inaccessible recordings return 404. Use next_page to retrieve further results. The connection selects the Basecamp account.

ActionTry it

List Folders

List the authenticated user's home-screen folders in display order. Folders are personal to the current user. Each folder contains project IDs, not expanded project details. This endpoint returns all folders without pagination.

ActionTry it

List Forward Replies

List one page of replies to a forwarded email, including authors, HTML content and attachments.

ActionTry it

List Forwards

List active forwarded emails in a project's inbox, including content and reply links. Obtain the inbox ID with Get Inbox. Returns one page; use next_page to retrieve more forwards. Optionally sort by creation or update time in either direction.

ActionTry it

List Gauge Needles

List a project's progress updates, newest first. Returns gauge needle positions, colors, descriptions and creators. Fetch the returned next_page explicitly to continue through the project's history.

ActionTry it

List Gauges

List project progress gauges across projects accessible to the connected user. Results are ordered by risk (red, yellow, green), then project name. Supply bucket_ids to select projects and use their specified order. Returns one page with progress positions, colors, descriptions and pagination metadata.

ActionTry it

List Hill Chart Versions

List a to-do set's hill chart progress updates, newest first. Returns each update's rich-text note, historical to-do list positions and discussion links. Use next_page to retrieve more of the chart's history.

ActionTry it

List Lineup Markers

List all account-wide date markers displayed in the Basecamp Lineup. Returns marker identifiers, names, dates and timestamps for the connected account. No input is required.

ActionTry it

List Message Types

Tool to retrieve all message types in a Basecamp project. Use when you need to list all available message types for organizing messages in a project.

ActionTry it

List My Bookmarks

List the current user's personal bookmarks, most recently bookmarked first. Returns one page of bookmarks wrapping their recordings. Bookmarks are visible only to their creator. Use next_page to retrieve additional bookmarks.

ActionTry it

List My Drafts

List the current user's unpublished drafts across active Basecamp projects. Returns messages, documents, uploads, client approvals and client correspondences, newest updated first. Excludes archived or trashed projects and does not include Google document, cloud file or schedule entry drafts. Retrieve further pages using next_page when present.

ActionTry it

List Personal Readings

List the user's unread, recent, current, and scheduled notifications.

ActionTry it

List Pings

List active Basecamp Pings the current user belongs to, newest updates first. Only Pings where someone has posted a line are listed: a newly created Ping with no lines is absent. Archived Pings are also absent; use Get Ping to retrieve those. Returns all matching Pings in one response without pagination, including participants and Campfire links, not the messages themselves. Returns 403 if the user's company has disabled Pings.

ActionTry it

List Project People

List active people with access to a specific Basecamp project. Returns one page at a time, with a next-page URL when provided by the API.

ActionTry it

List Question Answerers

List people who have answered a Basecamp automatic check-in question. Returns one page of person profiles. Use next_page to continue, and deceased to include long-deceased people who are normally filtered out.

ActionTry it

List Recent Projects

List the current user's most recently visited active Basecamp projects. Returns at most the 50 most recent visits, newest first, limited to projects the user can still access. Includes project details and the user's bookmarked flag. This list is not paginated.

ActionTry it

List Recording Boosts

List one page of active boosts on a recording, including their notes and authors. Supply a recording ID, such as a message or to-do ID. Use next_page to request further results. The connected account determines the account ID.

ActionTry it

List Subtasks

List a Basecamp to-do or card's subtasks in position order. Check the parent's subtasks_count and subtasks_url to determine whether it accepts subtasks. Returns one page; use next_page to retrieve more results. The connected account is selected by the configured base URL.

ActionTry it

List To-Do Lists in To-Do Set

List a page of to-do lists in a Basecamp project's to-do set, optionally filtering by archived or trashed status. The response can include a next-page URL and total count.

ActionTry it

List Upload Versions

List an upload's version events, newest first, with version-specific file URLs. Includes publication events (created or active) and replacements (blob_changed). To find past files, select events whose upload.current is false. An event may lack its upload when the recorded file has been removed. Returns one page.

ActionTry it

List Uploads from Vault

List active uploads in a Basecamp project vault, returning one page at a time with pagination information when available.

ActionTry it

Mark As Read

Mark specified notifications as read for the current user. Supply readable_sgid values from Get My Notifications, in batches of at most 500. Returns no content on success.

ActionTry it

Mark Step Completion Status

Tool to mark a card table step as completed or uncompleted in Basecamp. Use when you need to toggle the completion status of a step by setting completion to "on" or "off".

ActionTry it

Move Card to Column

Tool to move a card to a different column within a Basecamp card table. Use when you need to relocate a card from one column to another in a project.

ActionTry it

Move Card to Column

Tool to move a card to a different column within a Basecamp card table. Use when you need to relocate a card from one column to another in a project.

ActionTry it

Move Recording

Start an asynchronous Basecamp recording or dock-tool move. Returns a filing immediately (201). Poll Get Filing as the initiating person until completed or failed. The original leaves its source on completion; destination_recording reports a new ID and URL, even within the same project. This is not vault filing. To keep a to-do's ID within its project, reposition it with parent_id instead. Give a matching container or, for a dock tool, a project ID. Child-only records, system card columns and records outside tools cannot move alone. Cards land in Triage or, if completed, Done; trashed records are restored at destination. A to-do list group becomes a group in its target list. Retrying is safe: returns 422 while pending and 404 after the original moves.

ActionTry it

Move Recording to Vault

Move a document, upload, or vault into another vault in the same project. Use the current vault to reorder an item. Its ID, comments, bookmarks, and history stay intact; moving a vault includes its contents. This operation cannot move items across projects. Returns no content on success.

ActionTry it

Pause Question

Pause an automatic check-in question to stop sending its reminders. Supply the question identifier; the connected account selects the account. Returns the question's paused state.

ActionTry it

Pin Message

Tool to pin a message to the top of the message board. Use when you need to feature a message prominently at the top of a message board in a project.

ActionTry it

Pin Recording

Tool to pin a recording (message) in a Basecamp project. Use when you need to feature a message prominently at the top of a message board or project.

ActionTry it

Poll Events

Read one page of the account's resumable event notification feed. Omit since and position to start at the present. Use since for historical replay or position with unchanged filters to resume. Persist position after processing events; continue while next is present, even on empty pages. This best-effort feed is not an audit log: deduplicate by event ID and refetch the referenced recording before acting. No continuation is followed automatically.

ActionTry it

Poll Inbox

Read one page of addressed inbox deliveries for the authenticated agent. Agents only: people receive 403. Items are retained for 30 days. Replay with since='0', enter at the present with since='now', or resume with position and unchanged filters. Deduplicate by addressing_id, since one event may address you for multiple reasons. Process items before persisting position and continue while next is present, even on empty pages. No continuation is followed automatically.

ActionTry it

Prioritize Assignment

Add a recording to the current user's Up Next prioritized assignments. Use Get My Assignments to find recording IDs. Re-prioritizing an already prioritized recording is a no-op. Returns no content on success.

ActionTry it

Record Project Visit

Record the current user's visit to a project, moving it to the front of their recent projects. Repeating a visit refreshes the same entry. Visits to archived or trashed projects are accepted but are not recorded. An inaccessible project returns 404. Success returns no content.

ActionTry it

Remove Account Logo

Remove the connected Basecamp account's logo. Requires an administrator or account owner. Success returns no content.

ActionTry it

Remove Project Logo

Remove a project's logo; requires permission to edit the project. Also succeeds when the project already has no logo. After removal, single-project responses omit logo and the logo download endpoint returns 404 Not Found.

ActionTry it

Remove Project Wallpaper

Remove a project's wallpaper; requires permission to edit the project. People and agents who can edit the project can remove its wallpaper; everyone else receives 403 Forbidden. Returns no content, including when the project already has no wallpaper.

ActionTry it

Reorder Card Table Column

Tool to reorder columns within a Basecamp card table. Use when you need to change the position of a column in a card table by specifying the column to move and its new position.

ActionTry it

Reorder Up Next

Move an already-prioritized assignment to a new position in your Up Next list. The recording must already be prioritized, and the position must fall within the current list. A repeated move can have a different effect if the list has changed, so inspect the current ordering before retrying a failed request.

ActionTry it

Reposition Card Step

Tool to change the position of a step within a card. Use when you need to reorder steps in a card table card by moving a step to a specific position.

ActionTry it

Reposition Step in Card

Tool to reposition a step within a card in a Basecamp card table. Use when you need to change the order of steps/subtasks within a card by moving a step to a specific position.

ActionTry it

Reposition Subtask

Move a subtask to a new position among its siblings. Supply the subtask ID and its desired 1-based position. The subtask remains under its current parent; a successful move returns no content.

ActionTry it

Reposition To-Do

Tool to change the position of a to-do within its list in a Basecamp project. Use when you need to reorder to-dos by moving a specific to-do to a new position.

ActionTry it

Reposition To-do List

Move a to-do list to a new position within its current to-do set. Supply the list ID and a position starting at 1. Completed lists are not counted when choosing the position. Success returns no content.

ActionTry it

Reposition To-Do List Group

Tool to reposition a to-do list group within its parent to-do list in a Basecamp project. Use when you need to change the order of to-do list groups by moving a group to a specific position.

ActionTry it

Reposition Tool

Move a docked tool to a new position in its project's dock. Use the tool's recording ID from the project's dock and a 1-based position. A Ping's Campfire is not a dock tool and cannot be repositioned.

ActionTry it

Resolve External Link

Resolve an external link's outside URL without visiting it. Returns the Location header and 302 status from the legacy door redirector. Use Get Tool for the Basecamp recording envelope: its URL is the Basecamp redirector, not the external target. List External Links also includes the target URL, service and description. This resolver never follows the redirect or forwards connection credentials to the external target.

ActionTry it

Resume Question

Resume a paused automatic check-in question so it sends reminders again. Supply the question ID in the connected Basecamp account. Returns the question's paused status, which is false after a successful resume.

ActionTry it

Search Basecamp

Search accessible Basecamp recordings by text, type, and result order.

ActionTry it

Spotlight Recording

Spotlight a recording on the home page of its own project or template. Returns the recording. Repeating the request is safe and still succeeds. Requires permission to edit the project. Containers such as message boards and to-do sets, and archived or trashed recordings, cannot be spotlighted. Spotlighting does not change who can see the recording.

ActionTry it

Stop Watching Card Table Column

Tool to stop watching a card table column. Use when you want to unsubscribe from a specific column and no longer receive notifications about changes to it.

ActionTry it

Subscribe To Card Column

Start watching a card table column for changes as the connected user. Provide the column ID to subscribe to it. Success returns no content.

ActionTry it

Subscribe to Recording

Tool to subscribe the current user to a recording for notifications. Use when you need to start watching/subscribing to a specific recording to receive notifications for new comments.

ActionTry it

Toggle Gauge

Enable or disable a project's progress gauge. Requires a project administrator. Returns no content on success. The connected account determines the account ID.

ActionTry it

Trash Project

Tool to mark a Basecamp project as trashed. Use when you need to trash a project. Trashed projects will be permanently deleted after 30 days.

ActionTry it

Trash Recording

Tool to mark a recording as trashed in a Basecamp project. Use when you need to move a recording to trash without permanently deleting it.

ActionTry it

Trash Template

Tool to mark a template as trashed in Basecamp. Use when you need to soft-delete a template; it will be permanently removed after 30 days.

ActionTry it

Unarchive Project

Restore an archived or trashed Basecamp project to active status. Returns no content on success. Restoring counts against the account's project limit; if that limit has been reached, Basecamp returns 507 and the project remains archived or trashed.

ActionTry it

Unarchive Recording

Tool to unarchive a recording in a Basecamp project by marking it as active. Use when you need to restore an archived recording to make it visible again in the project.

ActionTry it

Uncomplete Subtask

Reopen a completed Basecamp subtask by marking it as uncompleted. Get the subtask ID from a to-do or card's subtasks. Returns no content on success. The connected account is selected by the configured base URL.

ActionTry it

Uncomplete To-Do

Tool to mark a to-do as uncompleted in Basecamp. Use when you need to reverse the completion status of a completed to-do item.

ActionTry it

Unpin Message

Tool to unpin a message from the message board. Use when you need to remove the pinned status from a message that was previously pinned to the top of a message board.

ActionTry it

Unpin Recording

Tool to unpin a recording (message) in a Basecamp project. Use when you need to remove the pinned status from a message on a message board or project.

ActionTry it

Unspotlight Recording

Remove a recording's spotlight from its project or template home page. Returns no content on success, including when the recording has no spotlight. This removes only the spotlight, leaving the recording itself intact.

ActionTry it

Unsubscribe Current User from Recording

Tool to unsubscribe the current user from a recording. Use when you need to stop receiving notifications for a specific recording. This is an idempotent operation that returns success even if the user wasn't previously subscribed.

ActionTry it

Update Account Logo

Upload or replace the account logo. Requires an administrator or account owner. Sends the image directly as multipart form data; no attachment upload is needed. Returns attachment metadata when Basecamp responds with 200, or empty fields for its documented 204 response. Invalid, missing, or oversized images return 422.

ActionTry it

Update Account Name

Rename the connected Basecamp account and return its updated account details. Only the account owner can rename it; other users receive 403 Forbidden. The connection selects the account. Blank names receive 400 Bad Request.

ActionTry it

Update Answer

Update an existing automatic check-in answer's text and grouping date. Send both content and group_on inside question_answer, even when changing only one. The answer ID selects the existing answer in the connected account.

ActionTry it

Update Boost

Replace a boost's short note or emoji and return the updated boost. Only the boost's creator can update it; admins cannot edit another person's boost. Returns a permission error when comments are closed on the boosted recording. The connection selects the account; no project ID is required.

ActionTry it

Update Calendar

Change a Basecamp calendar's display color and return the updated calendar. Supply the calendar's own bucket ID, rather than a project ID. This updates display settings; it does not modify scheduled events.

ActionTry it

Update Campfire Line

Edit a Campfire line created by the connected user. Only text and rich-text lines can be edited. The new content is always interpreted as rich text (HTML), even when the original line was plain text. Returns no content on success; editing another person's line is forbidden.

ActionTry it

Update Card

Tool to update a card's details in a Basecamp card table. Use when you need to modify a card's title, content, due date, or assignees.

ActionTry it

Update Card Table Column

Tool to update a card table column's properties in a Basecamp project. Use when you need to modify a column's title or description.

ActionTry it

Update Card Table Column Color

Tool to update a card table column's visual color designation in a Basecamp project. Use when you need to change the color of a specific column for better visual organization.

ActionTry it

Update Card Table Step

Tool to update an existing card table step in Basecamp. Use when you need to modify a step's title, due date, or assignees. Omitted parameters remain unchanged.

ActionTry it

Update Chatbot Integration

Update an existing chatbot integration in a Basecamp Campfire chat. Supply the service name and optionally a command URL.

ActionTry it

Update Cloud File

Replace a cloud file's external link, service, title and description. Send the complete desired state: omitting title resets it to Untitled and omitting description clears it. URL and service are required. Updating a draft publishes it; omitting subscriptions preserves its subscribers. Returns the updated record, whose url points to the external file rather than Basecamp.

ActionTry it

Update Comment

Tool to update comment content in a Basecamp project. Use when you need to modify the content of an existing comment.

ActionTry it

Update Document

Tool to update an existing document's title or content in a Basecamp project. Use when you need to modify document title, content, or both.

ActionTry it

Update Document in Bucket

Tool to update an existing document in a Basecamp project bucket. Use when you need to modify a document's title, content, or both. Omitted parameters remain unchanged.

ActionTry it

Update Folder

Rename a folder on the authenticated user's home screen. Only the name changes. Folder membership, ordering, and image are managed separately. Returns the updated folder and its expanded projects.

ActionTry it

Update Gauge Needle

Update the HTML description of an existing Basecamp gauge needle. Position and color are immutable. Create a new needle to record a new progress snapshot instead. Returns the updated needle.

ActionTry it

Update Google Document

Replace a Google document's link, kind, title and HTML description. Supply the complete desired state: URL and document type are required; omitting title resets it to Untitled and omitting description clears it. Set status to active to publish a draft. Omit subscriptions and notify to preserve a draft's subscribers. Returns the updated recording; its url is the external Google document link, not a Basecamp API URL.

ActionTry it

Update Hill Chart Settings

Start or stop tracking to-do lists on a to-do set's hill chart. Tracking the first list enables the chart; untracking the last disables it. Both arrays are optional and may be combined. Returns the updated chart.

ActionTry it

Update Lineup Marker

Change the name and/or date of an account-wide Basecamp Lineup marker. Supply a marker identifier from List Lineup Markers and the fields to change. Omitted fields retain their existing values.

ActionTry it

Update Message

Tool to update a message's subject, content, or category in a Basecamp project. Use when you need to modify an existing message's title, body text, or categorization.

ActionTry it

Update Message Category

Update an existing message type (category) in a Basecamp project, supplying both its name and icon.

ActionTry it

Update My Note

Replace the authenticated user's personal notebook note with HTML content. Each save records a new revision and returns the current note. The first save creates the notebook if needed. This replaces the entire note, not an append.

ActionTry it

Update My Preferences

Update the connected user's time zone, first weekday or time display format. Include only settings to change inside person. Returns the saved preferences; IANA time zones are normalized to Rails-style names by Basecamp.

ActionTry it

Update My Profile

Update the connected user's personal profile; returns no content on success. Include only fields to change. Available for users, not agent identities. Email changes affect the login across all accounts and require an identity-wide, full-scope personal access token or first-party token.

ActionTry it

Update Project

Tool to update an existing project's name, description, access policy, or schedule in Basecamp. Use when you need to modify project details or settings. Note: name parameter is required; schedule dates must be provided as pairs (both start_date and end_date).

ActionTry it

Update Project Client Access

Grant or revoke project access for clients, or invite new clients by email. Supply at least one of grant, revoke, or create. Clients must first be enabled on the project. Team-member IDs are not granted client access. Invitations are all-or-nothing: invalid entries return 422; exceeding the user limit returns 429 with nobody invited. A seat-limit 429 is not transient throttling.

ActionTry it

Update Project Logo

Upload or replace an existing project's logo using a direct multipart file upload. Requires project edit permission. Create the project first; no attachment upload or SGID is needed. Other project fields are unchanged. Rejected images (422) leave the existing logo unchanged. Returns an empty response on success (204).

ActionTry it

Update Project Wallpaper

Upload or replace a project's wallpaper using a direct multipart image upload. Requires permission to edit the project. Optionally set the display mode; otherwise the current mode is retained. Returns no content on success. Basecamp rejects missing, unsupported, or oversized images with 422.

ActionTry it

Update Question

Update an automatic check-in question's title, schedule, or both. A supplied schedule replaces the entire schedule. Respondents, when supplied, replace everyone asked. Client users can update only questions they created. Use the separate pause/resume actions to stop or restart asking.

ActionTry it

Update Question Notification Settings

Change your participation and answer notifications for a check-in question. Settings apply to the authenticated user. Omit either setting to leave it unchanged; opting into responding also subscribes you unless subscribed is explicitly false in the same request.

ActionTry it

Update Recording Client Visibility

Tool to update client visibility for a recording in Basecamp. Use when you need to show or hide a recording from clients. Returns 403 if the recording inherits visibility from parent resource.

ActionTry it

Update Recording Subscription

Tool to update recording subscriptions by adding or removing subscribers. Use when you need to manage who receives notifications for a specific recording. At least one of subscriptions or unsubscriptions must be provided.

ActionTry it

Update Schedule Configuration

Tool to update a schedule configuration in a Basecamp project. Use when you need to change whether the schedule includes due assignments from to-dos, cards and steps.

ActionTry it

Update Schedule Entry

Tool to update an existing schedule entry in a Basecamp schedule. Use when you need to modify an entry's title, times, description, or participants. Omitted parameters remain unchanged.

ActionTry it

Update Subtask

Change a Basecamp subtask's title, due date or assignees. Omitted parameters remain unchanged. Send due_on=null to clear its due date or assignee_ids=[] to remove all assignees. Send at least one parameter; Basecamp refuses an empty update with 400 Bad Request.

ActionTry it

Update Template

Tool to update a template's name and description in Basecamp. Use when you need to modify template metadata. Omitted parameters remain unchanged.

ActionTry it

Update Timesheet Entry

Update a timesheet entry and return its current details. Pass only the fields you want to change; omitted fields remain unchanged. Hours accept decimal or hours:minutes format.

ActionTry it

Update To-Do

Tool to update a to-do's content, assignees, or due date in a Basecamp project. Use when you need to modify an existing to-do item. Pass all existing parameters along with those being updated to prevent clearing values.

ActionTry it

Update To-Do in Bucket

Tool to update an existing to-do in a Basecamp project. Use when you need to modify a to-do's content, description, assignees, dates, or notification settings. Note: Pass all existing parameters along with those being updated to prevent clearing values.

ActionTry it

Update To-Do List

Tool to update a to-do list's name or description in a Basecamp project. Use when you need to modify an existing to-do list's title or HTML description. Pass all existing parameters along with those being updated to prevent clearing values.

ActionTry it

Update Tool

Rename an existing tool in a project's dock and return its updated details. Find the tool ID in the project's dock array. This applies only to dock tools; a Ping's Campfire cannot be renamed through this endpoint and returns 404.

ActionTry it

Update Upload in Bucket

Tool to update an existing upload in a Basecamp project bucket. Use when you need to modify an upload's description or filename. Omitted parameters remain unchanged.

ActionTry it

Update Vault Title

Tool to update a vault's title in a Basecamp project. Use when you need to rename a vault within a specific project bucket.

ActionTry it

Update Vault Title

Tool to update a vault's title in a Basecamp project. Use when you need to rename a vault within a specific project bucket.

ActionTry it

Update Vault View Preference

Set the current user's grid or list view for one vault in Docs & Files. This preference affects only the current user and the specified vault. It does not change other vaults, nested vaults, or other people's preferences. Returns no content on success.

ActionTry it

Update Webhook

Tool to update an existing webhook in a Basecamp project. Use when you need to modify the webhook's URL, event types, or active status.

ActionTry it

Update Wormhole

Change a card table wormhole's destination to another accessible column. Supply the source project and wormhole IDs and the destination column ID. The wormhole's title follows its destination. Returns the updated wormhole; this changes the standing shortcut and does not move any cards itself.

ActionTry it

Upload File Attachment

Tool to upload a file to Basecamp system. Use when you need to upload a file to get an attachable_sgid reference for use in other operations like creating messages or todos with attachments.

ActionTry it

Validate Credential

Validates Basecamp API credentials by verifying the OAuth token and retrieving authorization details. Returns user identity, token expiration, and accessible accounts. Use this action when you need to verify that API credentials are valid and working correctly before making other API calls.

ActionTry it

Watch Card Table Column

Tool to start watching a card table column in a Basecamp project. Use when you need to subscribe to a specific column to receive notifications about changes.

ActionTry it

How the Basecamp integration works

The Basecamp integration connects your Dench AI CRM directly to Basecamp, so agents can read and act on your Basecamp data as part of everyday work — answering questions in chat, keeping your CRM in sync, and running automations without anyone copying data between tools.

331 actions are available for agents to invoke on your behalf. Every call runs through Basecamp's own authorization, scoped to the account you connect.

Set up Basecamp in Dench

  1. 1

    Sign in to your Dench workspace and open Integrations.

  2. 2

    Find Basecamp and click Connect — you'll authorize access through Basecamp's own sign-in flow. No API keys or code required.

  3. 3

    Ask an agent to use Basecamp in chat, or call it from an automation.

  4. 4

    Manage or disconnect the connection any time from workspace settings.

Frequently asked questions

How does the Basecamp integration work with Dench?

The Dench Basecamp integration connects your AI CRM to Basecamp, so AI agents can work with your Basecamp data as part of chats, automations, and CRM workflows. You connect your account once, and every agent in your workspace can use it — governed by your workspace permissions.

What actions can AI agents perform with Basecamp via Dench?

The Basecamp integration currently exposes 331 actions, including Archive Project, Archive Recording, Comment on To-Do, Complete Subtask, Complete To-Do, and Copy Recording. Agents invoke them on your behalf from chat or from automations.

Do I need to write code to connect Basecamp to Dench?

No. You connect Basecamp from your Dench workspace using Basecamp's own sign-in and authorization flow — no API keys to copy, no glue code to maintain.

Is the Basecamp integration secure?

Connections are authorized through Basecamp's own authentication flow, and Dench stores only the authorization needed to act on your behalf. You can review and disconnect the Basecamp connection from your workspace settings at any time.

Basecamp | Dench AI CRM