Basecamp

Basecamp

API integration

Expand your

Ticketing

integrations with the

Basecamp

API integration.

Perform all CRUD operations through our Proxy and Unified APIs.

Perform all CRUD operations through our Proxy and Unified APIs.

Trusted by world-class product and engineering teams

  • Claira
  • Senja
  • springworks
  • TruvaAI
  • Sprinto
  • Dos&Co
  • Spendflo
  • Dos&Co
  • ZenAdmin
  • Cloudficient

Trusted by world-class product and engineering teams

  • Claira
  • Senja
  • Springworks
  • TruvaAI
  • Sprinto
  • SaaSMonk
  • Spendflo
  • Dos&Co
  • ZenAdmin
  • Cloudficient
  • Findr

superAI

Comprehensive Basecamp AI Agent toolset with fine-grained access control and MCP Server capabilities. Basecamp MCP Servers works seamlessly with Cursor and Claude AI editors for immediate consumption. Integrates with all popular LLM frameworks including LangChain and PyDantic for advanced AI orchestration.

list_all_basecamp_deleted_people

Use this endpoint to retrieve a list of people who have been deleted from the account. It returns in…

list_all_basecamp_attachments

Use this endpoint to retrieve a list of all attachments across projects in the account. It returns m…

delete_a_basecamp_webhook_by_id

Delete a webhook by id in Basecamp. Requires bucket_id and id. Returns 204 No Content on success.…

list_all_basecamp_webhooks

Get all webhooks for a specific bucket in Basecamp. Requires bucket_id. Returns webhook id, active s…

get_single_basecamp_webhook_by_id

Get a webhook by id in Basecamp for the project identified by bucket_id. Returns webhook details inc…

update_a_basecamp_webhook_by_id

Update a webhook in Basecamp with bucket_id and id. Requires payload_url to set the HTTPS callback U…

create_a_basecamp_webhook

Create a webhook in Basecamp for bucket_id with payload_url. Returns the created webhook including p…

update_a_basecamp_vault_by_id

Update a vault title in Basecamp using bucket_id and id. Returns the updated vault with fields like…

get_single_basecamp_vault_by_id

Get a vault by id in Basecamp specifying bucket_id and id. Returns id, status, title, creator info,…

list_all_basecamp_vaults

Get a paginated list of vaults in the vault with id in the project specified by bucket_id in Basecam…

create_a_basecamp_vault

Create a vault in Basecamp under the vault with id in the project with project_id. Requires title. R…

update_a_basecamp_upload_by_id

Update an upload's description and base_name in Basecamp. Requires bucket_id and id. Returns the upd…

create_a_basecamp_upload

Create an upload in Basecamp under a specific project and vault. Requires project_id, vault_id, and…

get_single_basecamp_upload_by_id

Get upload details by bucket_id and id in Basecamp. Returns id, status, title, url, creator info, de…

list_all_basecamp_uploads

Get a list of active uploads in the project specified by bucket_id and vault specified by vault_id i…

get_single_basecamp_todo_set_by_id

Get to-do set for a project in Basecamp using bucket_id and id. Returns id, status, title, creator i…

delete_a_basecamp_template_by_id

Trash a template by id in Basecamp. Marks the template as trashed and it will be deleted after 30 da…

update_a_basecamp_template_by_id

Update a Template's name and description in Basecamp using id. Returns the updated Template represen…

get_single_basecamp_template_by_id

Get a Template by id in Basecamp. Returns id, status, created_at, updated_at, name, description, url…

list_all_basecamp_templates

Get a list of active Templates visible to the current user in Basecamp. Returns fields including id,…

create_a_basecamp_template

Create a new Template in Basecamp with name and optionally description. Returns the created Template…

get_single_basecamp_schedule_by_id

Get schedule for a project using bucket_id and id. Returns fields including id, status, title, url,…

update_a_basecamp_schedule_by_id

Update a schedule with id in Basecamp by setting include_due_assignments to specify if due dates fro…

update_a_basecamp_schedule_entry_by_id

Update a schedule entry with id in the project identified by bucket_id in Basecamp. Returns the upda…

create_a_basecamp_schedule_entry

Create a schedule entry in Basecamp with required parameters summary, starts_at, and ends_at. Return…

get_single_basecamp_schedule_entry_by_id

Get a schedule entry by bucket_id and id in Basecamp. Returns fields including id, status, title, de…

list_all_basecamp_schedule_entries

Get active schedule entries for schedule with id in Basecamp. Returns fields including id, status, t…

list_all_basecamp_recordings

Get a list of recordings filtered by type in Basecamp. Requires type parameter which must be one of…

list_all_basecamp_questions

Get a list of questions for the project identified by bucket_id and the questionnaire identified by…

get_single_basecamp_question_by_id

Get a question by id and bucket_id in Basecamp. Returns fields including id, status, title, creator…

list_all_basecamp_questionnaires

Get questionnaire by id for project with id in Basecamp. Returns id, status, title, created_at, upda…

list_all_basecamp_question_answers

Get a list of answers for the question with id in the project bucket_id in Basecamp. Returns fields…

get_single_basecamp_question_answer_by_id

Get a question answer by bucket_id and id in Basecamp. Returns fields including id, status, title, c…

update_a_basecamp_message_by_id

Update a message in Basecamp with project_id and id. Returns the updated message including subject,…

delete_a_basecamp_message_by_id

Delete pin on message with id in project with project_id in Basecamp. Unpins the specified message.…

list_all_basecamp_messages

Get a list of active messages for bucket_id and message_board_id in Basecamp. Returns fields includi…

create_a_basecamp_message

Create a message with subject and status in Basecamp under bucket_id and message_board_id. Returns t…

get_single_basecamp_message_by_id

Get a message by id and bucket_id in Basecamp. Returns id, status, title, content, creator info, com…

delete_a_basecamp_message_type_by_id

Delete a message type with id in the bucket identified by bucket_id in Basecamp. Returns 204 No Cont…

create_a_basecamp_message_type

Create a message type with name and icon in Basecamp. Requires bucket_id, name, and icon. Returns th…

get_single_basecamp_message_type_by_id

Get message type with id in Basecamp. Returns id, name, icon, created_at, and updated_at fields.…

list_all_basecamp_message_types

Get list of all message types for a project in Basecamp using bucket_id. Returns id, name, icon, cre…

update_a_basecamp_message_type_by_id

Update a message type with id in the project identified by bucket_id in Basecamp. Returns the update…

list_all_basecamp_message_boards

Get message board for project bucket_id and id in Basecamp. Returns id, status, title, creator info,…

delete_a_basecamp_lineup_maker_by_id

Destroy a marker by id in Basecamp. This operation permanently deletes the marker and returns 204 No…

create_a_basecamp_lineup_maker

Create a marker with name and date in Basecamp. Requires name and date (ISO8601 without time). Retur…

update_a_basecamp_lineup_maker_by_id

Update a marker's name and/or date by id in Basecamp. Returns 200 OK with an empty response body.…

list_all_basecamp_inbox

Get inbox details for bucket_id and id in Basecamp. Returns id, status, title, creator info, forward…

get_single_basecamp_inbox_reply_by_id

Get inbox reply by id for the forward with parent_id in the project bucket_id in Basecamp. Returns i…

list_all_basecamp_inbox_replies

Get inbox replies for bucket_id and inbox_forward_id in Basecamp. Returns id, status, visible_to_cli…

get_single_basecamp_forward_by_id

Get a forward in Basecamp by bucket_id and id. Returns fields including id, status, title, content,…

list_all_basecamp_forwards

Get a list of active forwards for the project with bucket_id and inbox_id in Basecamp. Returns field…

list_all_basecamp_events

Get a list of events for the recording with recording_id in the project with bucket_id in Basecamp.…

update_a_basecamp_document_by_id

Update a document's title and content in Basecamp using bucket_id and id. Returns the updated docume…

create_a_basecamp_document

Create a document with title and content in Basecamp under bucket_id and vault_id. Returns the creat…

get_single_basecamp_document_by_id

Get a document by id in Basecamp specifying bucket_id and id. Returns fields including id, status, t…

list_all_basecamp_documents

Get a list of active documents in the project with bucket_id and vault with vault_id in Basecamp. Re…

update_a_basecamp_client_visibility_by_id

Toggle client visibility for the recording with id in the project with bucket_id in Basecamp. Requir…

get_single_basecamp_client_reply_by_id

Get a client reply by id for the recording with recording_id in the project with bucket_id in Baseca…

list_all_basecamp_client_replies

Get a list of client replies for the project identified by bucket_id and the recording identified by…

list_all_basecamp_client_correspondences

Get client correspondences for bucket_id in Basecamp. Returns id, status, visible_to_clients, create…

get_single_basecamp_client_correspondence_by_id

Get client correspondence by id and bucket_id in Basecamp. Returns id, status, title, content, creat…

get_single_basecamp_client_approval_by_id

Get client approval by id in Basecamp. Returns fields including id, status, title, created_at, updat…

list_all_basecamp_client_approvals

Get a list of client approvals for the project with bucket_id in Basecamp. Returns fields including…

delete_a_basecamp_chatbot_by_id

Delete a chatbot by id in Basecamp within the specified bucket_id. Returns 204 No Content on success…

update_a_basecamp_chatbot_by_id

Update a chatbot with id in Basecamp by changing its service_name. Returns the updated chatbot JSON…

get_single_basecamp_chatbot_by_id

Get a chatbot in Basecamp. Requires bucket_id, chat_id, and id. Returns id, created_at, updated_at,…

create_a_basecamp_chatbot

Create a chatbot with service_name on the Basecamp account. Returns the new chatbot including the li…

list_all_basecamp_chatbots

Get all chatbots for the chat identified by bucket_id and chat_id in Basecamp. Returns id, created_a…

update_a_basecamp_card_table_step_by_id

Update a step in Basecamp with bucket_id and id. Returns the updated step including title, due_on, a…

create_a_basecamp_card_table_step

Create a step with title in the card with id in the project bucket_id in Basecamp. Returns the creat…

update_a_basecamp_card_table_column_by_id

Update a column in Basecamp with bucket_id and id. Returns the updated column's JSON representation…

create_a_basecamp_card_table_column

Create a column in the card table with card_table_id in the project with project_id in Basecamp. Req…

update_a_basecamp_card_table_card_by_id

Update a card in Basecamp with project_id and id. Returns the updated card including title, content,…

create_a_basecamp_card_table_card

Create a card in Basecamp within the card table list identified by bucket_id and list_id. Requires t…

get_single_basecamp_card_table_card_by_id

Get a card in Basecamp by bucket_id and id. Returns id, status, title, description, creator info, pa…

delete_a_basecamp_campfire_line_by_id

Delete a Campfire line by project_id, campfire_id, and id in Basecamp. Returns 204 No Content if suc…

create_a_basecamp_campfire_line

Create a Campfire line with content in Basecamp. Requires project ID 1 and campfire ID 2. Returns th…

get_single_basecamp_campfire_line_by_id

Get a Campfire line by bucket_id, chat_id, and id in Basecamp. Returns id, status, visibility, times…

list_all_basecamp_campfire_lines

Get Campfire lines for bucket_id and chat_id in Basecamp. Returns id, status, visible_to_clients, cr…

get_single_basecamp_campfire_by_id

Get a Campfire by id in Basecamp. Returns id, status, title, creator details, bucket info, and URLs…

list_all_basecamp_campfires

Get a list of all active Campfires visible to the current user in Basecamp. Returns fields including…

list_all_basecamp_card_table_cards

Get cards in a column in Basecamp using bucket_id and list_id. Returns card id, status, title, creat…

list_all_basecamp_card_table_columns

Get a card table column by id and bucket_id in Basecamp. Returns id, status, title, type, creator in…

list_all_basecamp_card_tables

Get a card table by bucket_id and id in Basecamp. Returns fields including id, status, title, type,…

get_single_basecamp_comment_by_id

Get a comment by id and bucket_id in Basecamp. Returns id, status, visible_to_clients, created_at, u…

create_a_basecamp_comment

Create a comment with content in Basecamp under the recording with recording_id in the project with…

update_a_basecamp_comment_by_id

Update a comment content in Basecamp using bucket_id and id. Returns the updated comment with fields…

list_all_basecamp_comments

Get comments for a recording in Basecamp using bucket_id and recording_id. Returns comment id, statu…

create_a_basecamp_todo_list

Create a to-do list with name in Basecamp under bucket_id and todoset_id. Returns the to-do list inc…

update_a_basecamp_todo_list_by_id

Update a to-do list with id in the project bucket_id in Basecamp. Requires name and description para…

get_single_basecamp_todo_list_by_id

Get a to-do list by bucket_id and id in Basecamp. Returns fields including id, status, title, create…

list_all_basecamp_todo_lists

Get active to-do lists for bucket_id and todoset_id in Basecamp. Returns fields including id, status…

update_a_basecamp_todo_by_id

Update a to-do in Basecamp with bucket_id and id. Requires all existing parameters including content…

delete_a_basecamp_todo_by_id

Trash a recording by marking it as trashed in Basecamp. Requires bucket_id and id. Returns 204 No Co…

get_single_basecamp_todo_by_id

Get a to-do in Basecamp by bucket_id and id. Returns id, status, title, creator info, completion sta…

list_all_basecamp_todos

Get active to-dos for bucket_id and todolist_id in Basecamp. Returns fields including id, status, ti…

create_a_basecamp_todo

Create a to-do in Basecamp under bucket 1 and todolist 3 with required content. Returns the to-do's…

create_a_basecamp_project

Create a new project in Basecamp with name and description. Returns the created project's JSON repre…

delete_a_basecamp_project_by_id

Trash a project by id in Basecamp. Marks the project as trashed and it will be deleted after 30 days…

update_a_basecamp_project_by_id

Update a project with id in Basecamp. Requires name. Returns the updated project's name, description…

list_all_basecamp_projects

Get all active projects visible to the current user in Basecamp. Returns project id, status, created…

get_single_basecamp_project_by_id

Get a project by id in Basecamp. Returns id, status, created_at, updated_at, name, description, purp…

get_single_basecamp_person_by_id

Get person profile by id in Basecamp. Returns id, name, email_address, personable_type, title, creat…

list_all_basecamp_people

Get all people visible to the current user in Basecamp. Returns fields including id, name, email_add…

Enhanced

Basecamp

with AI Capabilities

AI Agent Toolset

AI Agent Toolset

MCP Server capabilities for seamless AI tool calling across all integration APIs

MCP Server capabilities for seamless AI tool calling across all integration APIs

Fine-Grained Control

Fine-Grained Control

Granular access control for all operations with custom method support

Granular access control for all operations with custom method support

Unlimited Customization

Unlimited Customization

Customize tool descriptions and parameters down to the finest detail for a workflow that feels built for you.

Customize tool descriptions and parameters down to the finest detail for a workflow that feels built for you.

Developer-First

Developer-First

Integrate with MCP clients like Cursor and Claude, or use frameworks like Langchain

Integrate with MCP clients like Cursor and Claude, or use frameworks like Langchain

Unified APIs for

Basecamp

Skip writing code for every integration. Save time by using Truto's category-specific Unified APIs. You can use the schema we provide out of the box or customize and override the mappings to suit your needs with AI.

Users

The User object represents a User.

Unified User Directory API

Collections

Tickets and contacts can be grouped into Collections. Collection resource usually maps to the various grouping systems used in the underlying product. Some examples are lists, projects, epics, etc. Yo…

Unified Ticketing API

Comments

Comments represent the communication happening on a Ticket, both between a User and a Contact and the internal things like notes, private comments, etc. A Ticket can have one or more Comments.

Unified Ticketing API

Tickets

Core resource which represents some work that needs to be carried out. Tickets are usually mapped to issues, tasks, work items, etc. depending on the underlying product.

Unified Ticketing API

Ticket status

Ticket Status represents the completion level of the Ticket. Some products provide customizing the Ticket Status.

Unified Ticketing API

Workspaces

Workspaces represent the top-level subdivision in a ticketing system. They usually have their own set of settings, tickets, statuses, priorities and users. Some of the usual terminologies used by the…

Unified Ticketing API

Search

Search endpoint for all the apps.

Unified Search API

Proxy API for

Basecamp

Access all of the

Basecamp

API without worrying about authentication and pagination. 

Truto's Proxy APIs are a 1-to-1 mapping of the

Basecamp

Ticketing

API.

API call us you

You call us, we call

Basecamp

and pass the response back in the same cycle.

Access all of the

Basecamp

API without worrying about authentication and pagination. 

Truto's Proxy APIs are a 1-to-1 mapping of the

Basecamp

Ticketing

API, you call us

we call

Basecamp

and pass the response back in the same cycle.

Account Linking

Account Linking

Use Truto's frontend SDK to link your

customer's

Basecamp

account.

We handle all the OAuth and API key flows. You do not need to create the OAuth app as well.

Account Linking

Account Linking

Use Truto's frontend SDK to link your

customer's

Basecamp

account.

We handle all the OAuth and API key flows. You do not need to create the OAuth app as well.

Seamless authentication 

Don't spend time refreshing access tokens, and figuring out how to store them securely. We do it for you.

We also sprinkle them into the API requests. So you just have to deal with 1 API key, ours.

Seamless authentication 

Don't spend time refreshing access tokens, and figuring out how to store them securely. We do it for you.

We also sprinkle them into the API requests. So you just have to deal with 1 API key, ours.

Unified response format

Unified response format

Truto follows a single response format for it's Proxy and Unified APIs across all the integrations.

into a unified cursor based pagination and all of the data is always present in the result attribute.

Basecamp

We translate

pagination

Unified response format

Unified response format

Truto follows a single response format for it's Proxy and Unified APIs across all the integrations.

into a unified cursor based pagination and all of the data is always present in the result attribute.

Basecamp

We translate

pagination

Get

Get

Basecamp

Basecamp

integrated into your app

integrated into your app

without the hassle

without the hassle

Our team understands what it takes to make a unified API implementation successful.

Our team understands what it takes to make a unified API implementation successful.

Boost customer satisfaction

Boost customer satisfaction

When customers can easily integrate their new products into their existing systems, they’re more likely to stick around. It’s just common sense!

Developers

Empower engineers

Who wants to do boring grunt work? Not engineers! By taking care of integrations for them, they’ll have more time to focus on what really matters - making a great product.

Profits

Boost profits 

Optimise developer resources. Truto frees up time and saves money. Say hello to a healthier bottom line!

Wow Experience

Wow your prospects

Say 'Yes' to every integration request your prospects ask you for. Integrations should not deter deal closures.

Powered by AI

Tick Icon

Customize the mappings as you need using AI.

Tick Icon

Build your own unified API from scratch, aided by AI.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

We have been able to dramatically accelerate our GTM timeline by several months as a result of Truto. The devs at Truto worked with us to build a unified API structure with our team so that we have a solid base for future integrations as well. The support has been very quick to respond to our inquiries and provide timely resolutions for our requests.

Josh Benson,

CEO of Omnitrain