Basecamp
Basecamp is a project management and team collaboration platform developed by 37signals. The Basecamp REST API (bc3-api) provides programmatic access to projects, to-do lists, messages, documents, schedules, and team members. OAuth2 authentication via the 37signals Launchpad is required. The API returns JSON and is documented on GitHub at github.com/basecamp/bc3-api.
Real signal across most facets with visible, nameable gaps — the contract exists but is thin, or the portal is good while governance and commercial terms are absent.
API Evangelist profiles Basecamp the way a machine reads it — 188 machine-readable artifacts across 20 APIs, pulled from the provider's own public surface and indexed so a developer, an analyst, or an AI agent can evaluate it against every other provider on the network.
Every provider in the network is reduced to the same set of machine-readable artifacts — OpenAPI contracts, event specifications, GraphQL schemas, runnable collections, pricing and rate-limit signals, security posture, OAuth scopes, and the agent surfaces (MCP servers and skills) that let software drive the API on its own. We profile them because the interface is the part of a company you can actually inspect: it is a truer signal of what a provider does than any marketing page. From those artifacts we compute the Kin Score — Basecamp scores 56.0/100 (developing), with a separate agent-readiness read of 54/100 (agent ready). The full breakdown is below, followed by every artifact we hold — each card links through to its machine-readable definition on apis.io.
Kin Score
This is the API Evangelist rating — a single, repeatable read computed from the artifacts on this page. Green fill is points earned; the red track is points possible, so every bar shows earned-versus-possible at a glance.
How we profile Basecamp
Each block below is one kind of artifact we hold for Basecamp. For each we say what it is and why it earns a place in the profile, then list every one we've indexed — capped at two rows, scroll within the panel for the rest.
APIs 20
Each API is captured as its own OpenAPI definition — every operation, parameter, and response. This is the single most useful machine-readable description of what an API does, and it's what lets us score, lint, mock, and generate against it without asking the provider for anything.
Individual APIs this provider publishes, each with its own machine-readable definition.
Basecamp Webhooks
Basecamp Webhooks deliver real-time HTTP notifications when events occur within a project. Configure webhooks per project with an HTTPS payload URL and resource types.
Basecamp Authorization API
OAuth 2.0 authorization code flow endpoints
Basecamp Campfires API
Manage project campfire chat rooms and lines
Basecamp Card Tables API
Manage kanban-style card tables and card movements
Basecamp Comments API
Manage comments on any commentable recording
Basecamp Documents API
Manage documents stored in vaults
Basecamp Identity API
Retrieve authenticated user identity
Basecamp Messages API
Manage messages on message boards
Basecamp People API
Manage people, profiles, and project access
Basecamp Projects API
Manage Basecamp projects (buckets)
Basecamp Recordings API
Common actions for all recordable resources (archive, trash, restore)
Basecamp Schedule Entries API
Manage individual schedule events and recurring entries
Basecamp Schedules API
Manage project schedules
Basecamp Subscriptions API
Manage per-recording notification subscriptions
Basecamp Templates API
Manage project templates and construct projects from them
Basecamp To-Do Lists API
Manage to-do lists within a to-do set
Basecamp To-Dos API
Manage individual to-do items
Basecamp Token API
Token exchange and refresh endpoints
Basecamp Uploads API
Manage file uploads stored in vaults
Basecamp Webhooks API
Manage webhook subscriptions for a project
Scroll within the panel for all 20 ·
Open Collections 2
Open, tool-agnostic collections carry the same runnable value as Postman without locking you to one client — the portable, forkable form of the same exercise.
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
Basecamp API
OPEN COLLECTIONBasecamp OAuth API
OPEN COLLECTIONGraphQL 1
Where a provider ships GraphQL, the schema is the contract. We profile it alongside the REST surface so the whole interface is legible in one place.
GraphQL schemas published by this provider.
Basecamp GraphQL Schema
This is a conceptual GraphQL schema for the Basecamp project management platform, derived from the Basecamp REST API (bc3-api). Basecamp does not currently offer a native GraphQ...
GRAPHQLPricing Plans 1
Pricing is part of the interface. Machine-readable plans tell you what a tier costs and includes before you commit — one of the six things the Kin Score reads for commercial clarity.
Published pricing tiers and plan structures.
Rate Limits 1
Rate limits are the difference between a demo that works and a production integration that doesn't fall over. Publishing them is an operational-transparency signal — and a hard requirement for any agent that plans its own throughput.
Documented rate limits and quota policies.
Basecamp Rate Limits
RATE LIMITSFinOps 1
Cost, billing, and metering signals let a buyer model the financial operations of an API before it's live. We profile them for the same reason we profile pricing: the money is part of the contract.
Cost, billing, and metering signals for API financial operations.
Basecamp Finops
FINOPSFeatures 8
The notable capabilities this provider advertises, captured as structured features so they can be searched and compared instead of read one landing page at a time.
Notable capabilities this provider offers.
Project Management
Create and manage projects with team access controls.
To-Do Lists
Hierarchical to-do lists with assignments, due dates, and completion tracking.
Message Boards
Threaded message boards for team discussion and announcements.
Campfire Chat
Real-time group chat within projects.
Schedules
Project calendars with events and milestones.
File Storage
Document and file storage with version history.
Webhooks
Real-time event notifications for project activity.
OAuth2 API
Full REST API with OAuth2 authentication for third-party integrations.
Scroll within the panel for all 8 ·
Event Specifications 1
Not every API is request/response. AsyncAPI describes the event-driven and streaming side — the webhooks and channels — so the asynchronous half of the interface is documented the same way the synchronous half is.
AsyncAPI definitions for this provider's event-driven and streaming APIs.
Basecamp Webhook Events
The Basecamp webhook system delivers real-time HTTP notifications to registered HTTPS endpoints when events occur within a Basecamp project. Webhooks are configured per project ...
ASYNCAPISemantic Vocabularies 1
JSON-LD contexts give the data shared meaning across APIs. We profile them because semantics are what let a machine reconcile 'customer' here with 'customer' somewhere else.
JSON-LD contexts and semantic vocabularies used across these APIs.
Basecamp Context
JSON-LDSpectral Rules 3
Governance rulesets we run against this provider's specs — the automated checks behind parts of the score. Profiling them makes the quality bar explicit and re-runnable, not a matter of opinion.
JSON Schema 48
Standalone JSON Schema definitions describe the data models behind the API. We profile them so the shapes are validatable on their own — useful long after a single request is forgotten.
Standalone JSON Schema definitions for this provider's data models.
Basecamp Project
JSON SCHEMABasecamp Webhook Payload
JSON SCHEMABucketRef
JSON SCHEMACampfire
JSON SCHEMACampfireLine
JSON SCHEMACampfireLineCreateRequest
JSON SCHEMACardColumn
JSON SCHEMACardMoveRequest
JSON SCHEMACardTable
JSON SCHEMAComment
JSON SCHEMACommentCreateRequest
JSON SCHEMADockItem
JSON SCHEMADocument
JSON SCHEMADocumentCreateRequest
JSON SCHEMAError
JSON SCHEMAMessage
JSON SCHEMAMessageCreateRequest
JSON SCHEMAMessageUpdateRequest
JSON SCHEMAPerson
JSON SCHEMAPersonRef
JSON SCHEMAPositionRequest
JSON SCHEMAProfileUpdateRequest
JSON SCHEMAProject
JSON SCHEMAProjectAccessRequest
JSON SCHEMAProjectConstruction
JSON SCHEMAProjectConstructionRequest
JSON SCHEMAProjectCreateRequest
JSON SCHEMAProjectUpdateRequest
JSON SCHEMARecording
JSON SCHEMARecurrenceSchedule
JSON SCHEMASchedule
JSON SCHEMAScheduleEntry
JSON SCHEMAScheduleEntryCreateRequest
JSON SCHEMAScheduleUpdateRequest
JSON SCHEMASubscription
JSON SCHEMASubscriptionUpdateRequest
JSON SCHEMATemplate
JSON SCHEMATemplateCreateRequest
JSON SCHEMATodo
JSON SCHEMATodoCreateRequest
JSON SCHEMATodoList
JSON SCHEMATodoListCreateRequest
JSON SCHEMAUpload
JSON SCHEMAUploadCreateRequest
JSON SCHEMAUploadUpdateRequest
JSON SCHEMAWebhook
JSON SCHEMAWebhookCreateRequest
JSON SCHEMAWebhookUpdateRequest
JSON SCHEMAScroll within the panel for all 48 ·
JSON Structure 46
JSON Structure captures the data shapes in a form built for tooling — a complement to JSON Schema that keeps the model machine-legible.
JSON Structure definitions describing this provider's data shapes.
Bucketref Structure
JSON STRUCTURECampfire Structure
JSON STRUCTURECampfireline Structure
JSON STRUCTURECampfirelinecreaterequest Structure
JSON STRUCTURECardcolumn Structure
JSON STRUCTURECardmoverequest Structure
JSON STRUCTURECardtable Structure
JSON STRUCTUREComment Structure
JSON STRUCTURECommentcreaterequest Structure
JSON STRUCTUREDockitem Structure
JSON STRUCTUREDocument Structure
JSON STRUCTUREDocumentcreaterequest Structure
JSON STRUCTUREError Structure
JSON STRUCTUREMessage Structure
JSON STRUCTUREMessagecreaterequest Structure
JSON STRUCTUREMessageupdaterequest Structure
JSON STRUCTUREPerson Structure
JSON STRUCTUREPersonref Structure
JSON STRUCTUREPositionrequest Structure
JSON STRUCTUREProfileupdaterequest Structure
JSON STRUCTUREProject Structure
JSON STRUCTUREProjectaccessrequest Structure
JSON STRUCTUREProjectconstruction Structure
JSON STRUCTUREProjectconstructionrequest Structure
JSON STRUCTUREProjectcreaterequest Structure
JSON STRUCTUREProjectupdaterequest Structure
JSON STRUCTURERecording Structure
JSON STRUCTURERecurrenceschedule Structure
JSON STRUCTURESchedule Structure
JSON STRUCTUREScheduleentry Structure
JSON STRUCTUREScheduleentrycreaterequest Structure
JSON STRUCTUREScheduleupdaterequest Structure
JSON STRUCTURESubscription Structure
JSON STRUCTURESubscriptionupdaterequest Structure
JSON STRUCTURETemplate Structure
JSON STRUCTURETemplatecreaterequest Structure
JSON STRUCTURETodo Structure
JSON STRUCTURETodocreaterequest Structure
JSON STRUCTURETodolist Structure
JSON STRUCTURETodolistcreaterequest Structure
JSON STRUCTUREUpload Structure
JSON STRUCTUREUploadcreaterequest Structure
JSON STRUCTUREUploadupdaterequest Structure
JSON STRUCTUREWebhook Structure
JSON STRUCTUREWebhookcreaterequest Structure
JSON STRUCTUREWebhookupdaterequest Structure
JSON STRUCTUREScroll within the panel for all 46 ·
Examples 46
Real request and response payloads are what turn a spec from abstract into obvious — and they're one of the twelve things an agent needs to call an API correctly on the first try.
Example request and response payloads for these APIs.
Bucketref Example
EXAMPLECampfire Example
EXAMPLECampfireline Example
EXAMPLECardcolumn Example
EXAMPLECardmoverequest Example
EXAMPLECardtable Example
EXAMPLEComment Example
EXAMPLECommentcreaterequest Example
EXAMPLEDockitem Example
EXAMPLEDocument Example
EXAMPLEError Example
EXAMPLEMessage Example
EXAMPLEMessagecreaterequest Example
EXAMPLEMessageupdaterequest Example
EXAMPLEPerson Example
EXAMPLEPersonref Example
EXAMPLEPositionrequest Example
EXAMPLEProfileupdaterequest Example
EXAMPLEProject Example
EXAMPLEProjectaccessrequest Example
EXAMPLEProjectconstruction Example
EXAMPLEProjectcreaterequest Example
EXAMPLEProjectupdaterequest Example
EXAMPLERecording Example
EXAMPLERecurrenceschedule Example
EXAMPLESchedule Example
EXAMPLEScheduleentry Example
EXAMPLESubscription Example
EXAMPLETemplate Example
EXAMPLETodo Example
EXAMPLETodocreaterequest Example
EXAMPLETodolist Example
EXAMPLEUpload Example
EXAMPLEUploadcreaterequest Example
EXAMPLEUploadupdaterequest Example
EXAMPLEWebhook Example
EXAMPLEWebhookcreaterequest Example
EXAMPLEWebhookupdaterequest Example
EXAMPLEScroll within the panel for all 46 ·
Security Posture 3
Authentication, domain security, vulnerability disclosure, and trust-center signals — the evidence that a provider takes security seriously enough to document it. We profile it because you can't govern what you can't see.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
Agentic Access 1
An x-agentic-access contract marks which operations are safe for an agent to run on its own and which need a human in the loop. It is the difference between an API an agent can use and one it can use safely.
Recommended x-agentic-access execution contracts for AI agents.
Use Cases 5
What developers actually build with this provider — captured so the catalogue answers 'what is this for', not just 'what does this expose'.
What developers build with this provider.
Software Development
Track sprints, bugs, and feature development with to-do lists.
Client Projects
Manage client deliverables, approvals, and communications.
Remote Team Collaboration
Asynchronous team communication and project coordination.
Project Automation
Automate project workflows and reporting via REST API.
Agency Project Management
Multi-client project organization for agencies and consultancies.
Resources
Every other property we hold for Basecamp — documentation, portals, status pages, policies, and corporate surface — grouped by the job it does, following the integrator's arc from getting started to running in production.
Get Started 1
Portal, sign-up, and the first successful call
Documentation 1
Reference material describing how the API behaves
Agent Surfaces 1
MCP servers, agent skills, and machine-readable catalogs
Design & Contract 3
Pagination, idempotency, versioning, errors, and events
Access & Security 3
Authentication, authorization, and security posture
Commercial 2
Pricing, plans, and the legal terms of use
Company 3
The organization behind the API
← All providers · Data indexed from github.com/api-evangelist/basecamp · machine-readable index on apis.io