Skip to main content
Every basecamp.api.* operation is listed below with parameter shapes and return types from the plugin Zod schemas.
New to Corsair? See API access, authentication, and error handling.

Automatic Check Ins

getBucketsQuestionAnswers

automaticCheckIns.getBucketsQuestionAnswers Tool to retrieve a specific question answer by ID from a Basecamp project. Use when you need to fetch details about an automatic check-in question answer including its content, creator, and associated comments. Risk: read
Input Output

getBucketsQuestionnaires

automaticCheckIns.getBucketsQuestionnaires 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. Risk: read
Input Output

getBucketsQuestionnairesQuestions

automaticCheckIns.getBucketsQuestionnairesQuestions 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. Risk: read
Input Output: object[]

getBucketsQuestions

automaticCheckIns.getBucketsQuestions 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. Risk: read
Input Output

listQuestions

automaticCheckIns.listQuestions Tool to get all questions in a questionnaire from a Basecamp project. Use when you need to fetch questions from a specific questionnaire. Risk: read
Input Output: object[]

Campfire And Chatbots

createChatbot

campfireAndChatbots.createChatbot 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. Risk: write
Input Output

createChatbotLine

campfireAndChatbots.createChatbotLine 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. Risk: write
Input Output: undefined

deleteCampfireLine

campfireAndChatbots.deleteCampfireLine Tool to delete a Campfire line from a chat conversation. Use when removing a specific message from a Basecamp Campfire chat. Risk: destructive · Irreversible
Input Output: undefined

deleteChatbot

campfireAndChatbots.deleteChatbot 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. Risk: destructive · Irreversible
Input Output: undefined

getBucketsChatsIntegrations

campfireAndChatbots.getBucketsChatsIntegrations 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. Risk: read
Input Output: object[]

getBucketsChatsLines

campfireAndChatbots.getBucketsChatsLines Tool to retrieve a paginated list of Campfire lines from a specific chat. Use when you need to fetch messages from a Campfire conversation in a Basecamp project. Risk: read
Input Output: object[]

getCampfire

campfireAndChatbots.getCampfire 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. Risk: read
Input Output

getCampfireLine

campfireAndChatbots.getCampfireLine 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. Risk: read
Input Output

getChatbot

campfireAndChatbots.getChatbot 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. Risk: read
Input Output

getChats

campfireAndChatbots.getChats Tool to retrieve a paginated list of all active Campfires (chats) visible to the current user. Use when you need to list all available chat rooms in Basecamp. Risk: read
Input Output: object[]

listCampfireLines

campfireAndChatbots.listCampfireLines Tool to get all lines (messages) in a Campfire chat. Use when you need to fetch paginated messages from a Campfire conversation in a Basecamp project. Risk: read
Input Output: object[]

listChatbots

campfireAndChatbots.listChatbots 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. Risk: read
Input Output: object[]

postBucketsChatsLines

campfireAndChatbots.postBucketsChatsLines 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. Risk: write
Input Output

postIntegrationsChatbotKeyBucketsChatsLines

campfireAndChatbots.postIntegrationsChatbotKeyBucketsChatsLines Tool to create a line in a Basecamp Campfire chat using a chatbot key. Use when you need to post messages via a chatbot integration without OAuth authentication. Risk: write
Input Output: undefined

putBucketsChatsIntegrations

campfireAndChatbots.putBucketsChatsIntegrations Tool to update an existing chatbot integration in a Basecamp Campfire chat. Use when you need to change the service name or command URL of a chatbot. Risk: write
Input Output

updateChatbot

campfireAndChatbots.updateChatbot Tool to update a chatbot’s service name or command URL in a Basecamp Campfire chat. Use when you need to modify an existing chatbot integration. Risk: write
Input Output

Card Tables

createCard

cardTables.createCard 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. Risk: write
Input Output

createCardStep

cardTables.createCardStep 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. Risk: write
Input Output

deleteBucketsCardTablesColumnsOnHold

cardTables.deleteBucketsCardTablesColumnsOnHold 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. Risk: destructive · Irreversible
Input Output

getBucketsCardTablesListsCards

cardTables.getBucketsCardTablesListsCards 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. Risk: read
Input Output: object[]

getCard

cardTables.getCard 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. Risk: read
Input Output

getCardTable

cardTables.getCardTable 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. Risk: read
Input Output

getCardTableColumn

cardTables.getCardTableColumn 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. Risk: read
Input Output

listCards

cardTables.listCards Tool to get all cards in a column from a Basecamp card table. Use when you need to retrieve cards from a specific column/list within a project’s card table. Risk: read
Input Output: object[]

moveCard

cardTables.moveCard 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. Risk: write
Input Output: undefined

moveCardTableColumn

cardTables.moveCardTableColumn 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. Risk: write
Input Output: undefined

postBucketsCardTablesCardsMoves

cardTables.postBucketsCardTablesCardsMoves 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. Risk: write
Input Output: undefined

postBucketsCardTablesCardsPositions

cardTables.postBucketsCardTablesCardsPositions 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. Risk: write
Input Output: undefined

postBucketsCardTablesColumns

cardTables.postBucketsCardTablesColumns 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. Risk: write
Input Output

postBucketsCardTablesColumnsOnHold

cardTables.postBucketsCardTablesColumnsOnHold 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. Risk: write
Input Output

postBucketsCardTablesMoves

cardTables.postBucketsCardTablesMoves Tool to reposition a column within a Basecamp card table. Use when you need to change the order of columns in a card table. Risk: write
Input Output: undefined

putBucketsCardTablesCards

cardTables.putBucketsCardTablesCards Tool to update an existing card in a Basecamp card table. Use when you need to modify a card’s title, content, due date, or assignees. Omitted parameters remain unchanged. Risk: write
Input Output

putBucketsCardTablesColumns

cardTables.putBucketsCardTablesColumns Tool to update a card table column in a Basecamp project. Use when you need to modify a column’s title or description. Omitted parameters remain unchanged. Risk: write
Input Output

putBucketsCardTablesColumnsColor

cardTables.putBucketsCardTablesColumnsColor 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. Risk: write
Input Output

putBucketsCardTablesSteps

cardTables.putBucketsCardTablesSteps 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. Risk: write
Input Output

putBucketsCardTablesStepsCompletions

cardTables.putBucketsCardTablesStepsCompletions 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”. Risk: write
Input Output

repositionCardStep

cardTables.repositionCardStep 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. Risk: write
Input Output: undefined

unwatchCardTableColumn

cardTables.unwatchCardTableColumn 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. Risk: write
Input Output: undefined

updateCard

cardTables.updateCard 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. Risk: write
Input Output

updateCardTableColumn

cardTables.updateCardTableColumn 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. Risk: write
Input Output

watchCardTableColumn

cardTables.watchCardTableColumn 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. Risk: write
Input Output: undefined

Documents And Files

createDocument

documentsAndFiles.createDocument 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. Risk: write
Input Output

createUpload

documentsAndFiles.createUpload 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. Risk: write
Input Output

createVault

documentsAndFiles.createVault 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. Risk: write
Input Output

getBucketsUploads

documentsAndFiles.getBucketsUploads 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. Risk: read
Input Output

getBucketsVaults

documentsAndFiles.getBucketsVaults Tool to retrieve a specific vault from a Basecamp project. Use when you need details about a vault including its documents, uploads, and nested vaults. Risk: read
Input Output

getBucketsVaultsDocuments

documentsAndFiles.getBucketsVaultsDocuments 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. Risk: read
Input Output: object[]

getBucketsVaultsUploads

documentsAndFiles.getBucketsVaultsUploads 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. Risk: read
Input Output: object[]

getBucketsVaultsVaults

documentsAndFiles.getBucketsVaultsVaults Tool to retrieve a paginated list of vaults nested within a parent vault in a Basecamp project. Use when you need to fetch child vaults from a specific vault. Risk: read
Input Output: object[]

getDocument

documentsAndFiles.getDocument 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. Risk: read
Input Output

getUpload

documentsAndFiles.getUpload 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. Risk: read
Input Output

getVault

documentsAndFiles.getVault Tool to retrieve a specific vault by ID from a Basecamp project. Use when you need details about a vault including its documents, uploads, and nested vaults. Risk: read
Input Output

listUploads

documentsAndFiles.listUploads Tool to retrieve all active uploads from a vault in a Basecamp project. Use when you need to list all uploaded files stored in a specific vault. Risk: read
Input Output: object[]

listVaults

documentsAndFiles.listVaults Tool to retrieve all vaults (folders) nested within a parent vault in a Basecamp project. Use when you need to list child vaults from a specific vault. Risk: read
Input Output: object[]

postAttachments

documentsAndFiles.postAttachments 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. Risk: write
Input Output

putBucketsDocuments

documentsAndFiles.putBucketsDocuments 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. Risk: write
Input Output

putBucketsUploads

documentsAndFiles.putBucketsUploads 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. Risk: write
Input Output

putBucketsVaults

documentsAndFiles.putBucketsVaults Tool to update a vault’s title in a Basecamp project. Use when you need to rename a vault within a specific project bucket. Risk: write
Input Output

updateDocument

documentsAndFiles.updateDocument 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. Risk: write
Input Output

updateUpload

documentsAndFiles.updateUpload Tool to update an upload’s description or filename in a Basecamp bucket. Use when you need to modify upload metadata without re-uploading the file. Risk: write
Input Output

updateVault

documentsAndFiles.updateVault Tool to update a vault’s title in a Basecamp project. Use when you need to rename a vault within a specific project bucket. Risk: write
Input Output

Inboxes And Forwards

getBucketsInboxesForwards

inboxesAndForwards.getBucketsInboxesForwards Tool to retrieve a paginated list of active email forwards from a project’s inbox. Use when you need to fetch forwarded emails in a Basecamp inbox. Risk: read
Input Output: object[]

getInbox

inboxesAndForwards.getInbox 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. Risk: read
Input Output

listForwards

inboxesAndForwards.listForwards Tool to get all email forwards in an inbox. Use when you need to retrieve forwarded emails from a Basecamp project inbox. Risk: read
Input Output: object[]

Messages

deleteMessageType

messages.deleteMessageType Tool to delete a message type from a Basecamp project. Use when removing a custom message category. Permanently removes the specified message type. Risk: destructive · Irreversible
Input Output: undefined

getBucketsCategories

messages.getBucketsCategories 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. Risk: read
Input Output: object[]

getBucketsMessageBoardsMessages

messages.getBucketsMessageBoardsMessages 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. Risk: read
Input Output: object[]

getMessage

messages.getMessage 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. Risk: read
Input Output

getMessageBoard

messages.getMessageBoard 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. Risk: read
Input Output

getMessageType

messages.getMessageType Tool to retrieve a specific message type by ID from a Basecamp project. Use when you need details about a specific message type/category. Risk: read
Input Output

listMessageTypes

messages.listMessageTypes 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. Risk: read
Input Output: object[]

pinMessage

messages.pinMessage 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. Risk: write
Input Output: undefined

postBucketsCategories

messages.postBucketsCategories 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. Risk: write
Input Output

postBucketsMessageBoardsMessages

messages.postBucketsMessageBoardsMessages 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. Risk: write
Input Output

putBucketsCategories

messages.putBucketsCategories Tool to update an existing message type (category) in a Basecamp project. Use when you need to modify the name or icon of a message category. Risk: write
Input Output

putBucketsMessages

messages.putBucketsMessages 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. Risk: write
Input Output

unpinMessage

messages.unpinMessage 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. Risk: write
Input Output: undefined

updateMessageType

messages.updateMessageType Tool to update an existing message type in a Basecamp project. Use when you need to modify the name or icon of a message category. Risk: write
Input Output

People And Access

getCirclesPeople

peopleAndAccess.getCirclesPeople Tool to retrieve all people on this Basecamp account who can be pinged. Use when you need to get a list of all pingable users in the account. Risk: read
Input: empty object Output: object[]

getMyProfile

peopleAndAccess.getMyProfile 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. Risk: read
Input: empty object Output

getPeople

peopleAndAccess.getPeople Tool to retrieve all people visible to the current user in the Basecamp account. Use when you need to list users, check permissions, or get contact information for team members. Risk: read
Input Output: object[]

getPeopleByPersonId

peopleAndAccess.getPeopleByPersonId 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. Risk: read
Input Output

getPerson

peopleAndAccess.getPerson Tool to retrieve a specific person’s profile by their ID. Use when you need detailed information about a specific person in the Basecamp account. Risk: read
Input Output

getProjectsPeople

peopleAndAccess.getProjectsPeople Tool to retrieve all active people assigned to a Basecamp project. Use when you need to list all members who have access to a specific project. Risk: read
Input Output: object[]

listProjectPeople

peopleAndAccess.listProjectPeople Tool to get all people on a specific Basecamp project. Use when you need to retrieve the list of active members who have access to a particular project. Risk: read
Input Output: object[]

putProjectsPeopleUsers

peopleAndAccess.putProjectsPeopleUsers 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. Risk: write
Input
Output

Projects And Templates

createProjectConstruction

projectsAndTemplates.createProjectConstruction 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’. Risk: write
Input
Output

getProject

projectsAndTemplates.getProject 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. Risk: read
Input Output

getProjects

projectsAndTemplates.getProjects Tool to retrieve a paginated list of projects visible to the current user, sorted by most recently created first. Use when you need to list all projects, filter by status (active/archived/trashed), or access project details. Risk: read
Input Output: object[]

getProjectsByProjectId

projectsAndTemplates.getProjectsByProjectId 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. Risk: read
Input Output

getTemplates

projectsAndTemplates.getTemplates 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). Risk: read
Input Output: object[]

getTemplatesByTemplateId

projectsAndTemplates.getTemplatesByTemplateId 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. Risk: read
Input Output

getTemplatesProjectConstructions

projectsAndTemplates.getTemplatesProjectConstructions 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. Risk: read
Input Output

postLineupMarkers

projectsAndTemplates.postLineupMarkers 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. Risk: write
Input Output: undefined

postProjects

projectsAndTemplates.postProjects 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. Risk: write
Input Output

postTemplates

projectsAndTemplates.postTemplates 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. Risk: write
Input Output

putProjects

projectsAndTemplates.putProjects 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). Risk: write
Input
Output

putTemplates

projectsAndTemplates.putTemplates Tool to update a template’s name and description in Basecamp. Use when you need to modify template metadata. Omitted parameters remain unchanged. Risk: write
Input Output

trashProject

projectsAndTemplates.trashProject 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. Risk: destructive · Irreversible
Input Output: undefined

trashTemplate

projectsAndTemplates.trashTemplate 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. Risk: destructive · Irreversible
Input Output: undefined

Recordings And Subscriptions

deleteBucketsRecordingsPin

recordingsAndSubscriptions.deleteBucketsRecordingsPin 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. Risk: destructive · Irreversible
Input Output: undefined

getBucketsRecordingsComments

recordingsAndSubscriptions.getBucketsRecordingsComments Tool to retrieve a paginated list of active comments on a recording. Use when you need to fetch comments from a specific recording in a Basecamp project. Risk: read
Input Output: object[]

getBucketsRecordingsEvents

recordingsAndSubscriptions.getBucketsRecordingsEvents Tool to retrieve a paginated list of events for a recording. Use when you need to fetch change history from a specific recording in a Basecamp project. Risk: read
Input Output: object[]

getComment

recordingsAndSubscriptions.getComment 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. Risk: read
Input Output

getProjectsRecordings

recordingsAndSubscriptions.getProjectsRecordings Tool to retrieve a paginated list of records for a given type of recording across projects. Use when you need to list recordings of a specific type (Message, Document, Todo, etc.) with optional filtering by project, status, and sorting. Risk: read
Input Output: object[]

getSubscription

recordingsAndSubscriptions.getSubscription 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. Risk: read
Input Output

listComments

recordingsAndSubscriptions.listComments Tool to get all comments on a recording in a Basecamp project. Use when you need to retrieve the list of active comments with their content, creators, and metadata. Risk: read
Input Output: object[]

listEvents

recordingsAndSubscriptions.listEvents Tool to get all events (history) for a recording. Use when you need to retrieve the complete modification history of a specific recording in a Basecamp project. Risk: read
Input Output: object[]

postBucketsRecordingsComments

recordingsAndSubscriptions.postBucketsRecordingsComments 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. Risk: write
Input Output

postBucketsRecordingsPin

recordingsAndSubscriptions.postBucketsRecordingsPin 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. Risk: write
Input Output: undefined

postBucketsRecordingsSubscription

recordingsAndSubscriptions.postBucketsRecordingsSubscription 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. Risk: write
Input Output

putBucketsComments

recordingsAndSubscriptions.putBucketsComments Tool to update comment content in a Basecamp project. Use when you need to modify the content of an existing comment. Risk: write
Input Output

putBucketsRecordingsClientVisibility

recordingsAndSubscriptions.putBucketsRecordingsClientVisibility 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. Risk: write
Input Output

putBucketsRecordingsStatusActive

recordingsAndSubscriptions.putBucketsRecordingsStatusActive 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. Risk: write
Input Output: undefined

putBucketsRecordingsStatusArchived

recordingsAndSubscriptions.putBucketsRecordingsStatusArchived 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. Risk: destructive
Input Output: undefined

putBucketsRecordingsStatusTrashed

recordingsAndSubscriptions.putBucketsRecordingsStatusTrashed 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. Risk: destructive · Irreversible
Input Output: undefined

putBucketsRecordingsSubscription

recordingsAndSubscriptions.putBucketsRecordingsSubscription 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. Risk: write
Input Output

subscribeCurrentUser

recordingsAndSubscriptions.subscribeCurrentUser Tool to subscribe the current authenticated user to a recording for notifications. Use when you need to add the current user to the subscriber list to receive updates about the recording. Risk: write
Input Output

toggleClientVisibility

recordingsAndSubscriptions.toggleClientVisibility Tool to change client visibility for a recording in Basecamp. Use when you need to show or hide a recording from clients. Returns 403 error if the recording doesn’t control its own visibility. Risk: write
Input Output

unsubscribeCurrentUser

recordingsAndSubscriptions.unsubscribeCurrentUser 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. Risk: write
Input Output: undefined

Schedules And Reports

getBucketsSchedulesEntries

schedulesAndReports.getBucketsSchedulesEntries Tool to retrieve a paginated list of schedule entries from a schedule. Use when you need to fetch entries from a specific schedule in a Basecamp project. Risk: read
Input Output: object[]

getReportsTimesheet

schedulesAndReports.getReportsTimesheet 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. Risk: read
Input Output: object[]

getSchedule

schedulesAndReports.getSchedule Tool to retrieve schedule details for a specific project. Use when you need information about a schedule including entries count and configuration. Risk: read
Input Output

getScheduleEntry

schedulesAndReports.getScheduleEntry 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. Risk: read
Input Output

postBucketsSchedulesEntries

schedulesAndReports.postBucketsSchedulesEntries 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. Risk: write
Input Output

putBucketsScheduleEntries

schedulesAndReports.putBucketsScheduleEntries 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. Risk: write
Input Output

putBucketsSchedules

schedulesAndReports.putBucketsSchedules 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. Risk: write
Input Output

updateScheduleEntry

schedulesAndReports.updateScheduleEntry Tool to update an existing schedule entry in a Basecamp project schedule. Use when you need to modify details like title, dates, description, or participants. Omitted parameters remain unchanged. Risk: write
Input Output

Todos

completeTodo

todos.completeTodo Tool to mark a to-do as completed in Basecamp. Use when you need to complete a to-do item. Risk: write
Input Output: undefined

createTodo

todos.createTodo 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. Risk: write
Input Output

createTodolistGroup

todos.createTodolistGroup 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. Risk: write
Input Output

getBucketsTodolists

todos.getBucketsTodolists 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. Risk: read
Input Output

getBucketsTodolistsGroups

todos.getBucketsTodolistsGroups Tool to retrieve a paginated list of active groups from a to-do list in a Basecamp project. Use when you need to list all groups within a specific to-do list for organizing tasks. Risk: read
Input Output: object[]

getBucketsTodolistsTodos

todos.getBucketsTodolistsTodos 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. Risk: read
Input Output: object[]

getBucketsTodos

todos.getBucketsTodos 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. Risk: read
Input Output

getBucketsTodosets

todos.getBucketsTodosets 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, to-do lists count, and associated URLs. Risk: read
Input Output

getBucketsTodosetsTodolists

todos.getBucketsTodosetsTodolists 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. Risk: read
Input Output: object[]

getTodo

todos.getTodo 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. Risk: read
Input Output

getTodolist

todos.getTodolist 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. Risk: read
Input Output

getTodolistGroups

todos.getTodolistGroups Tool to retrieve a paginated list of groups from a to-do list in a Basecamp project. Use when you need to list groups (sub-sections) within a specific to-do list for organizing tasks. Risk: read
Input Output: object[]

getTodoset

todos.getTodoset 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. Risk: read
Input Output

listTodolists

todos.listTodolists Tool to get all to-do lists in a to-do set within a Basecamp project. Use when you need to retrieve all to-do lists from a specific to-do set, optionally filtering by status (archived or trashed). Risk: read
Input Output: object[]

postBucketsTodolistsComments

todos.postBucketsTodolistsComments 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. Risk: write
Input Output

postBucketsTodolistsTodos

todos.postBucketsTodolistsTodos 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. Risk: write
Input Output

postBucketsTodosComments

todos.postBucketsTodosComments 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. Risk: write
Input Output

postBucketsTodosetsTodolists

todos.postBucketsTodosetsTodolists 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. Risk: write
Input Output

putBucketsTodolistsGroupsPosition

todos.putBucketsTodolistsGroupsPosition 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. Risk: write
Input Output: undefined

putBucketsTodos

todos.putBucketsTodos 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. Risk: write
Input Output

putBucketsTodosPosition

todos.putBucketsTodosPosition 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. Risk: write
Input Output: undefined

uncompleteTodo

todos.uncompleteTodo 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. Risk: write
Input Output: undefined

updateTodo

todos.updateTodo 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. Risk: write
Input Output

Webhooks

deleteWebhooks

webhooks.deleteWebhooks 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. Risk: destructive · Irreversible
Input Output: undefined

getBucketsWebhooks

webhooks.getBucketsWebhooks Tool to retrieve all webhooks configured for a Basecamp project. Use when you need to list all webhook configurations including their payload URLs, event types, and active status. Risk: read
Input Output: object[]

getWebhook

webhooks.getWebhook Tool to retrieve a specific webhook by ID from a Basecamp project. Use when you need details about a webhook including its delivery history. Risk: read
Input Output

postBucketsWebhooks

webhooks.postBucketsWebhooks 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. Risk: write
Input Output

putBucketsWebhooks

webhooks.putBucketsWebhooks 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. Risk: write
Input Output