Dynamite Circle Chapters API
The Chapters API from Dynamite Circle — 2 operation(s) for chapters.
The Chapters API from Dynamite Circle — 2 operation(s) for chapters.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/dynamitecircle-com:dynamitecircle-com-chapters-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
name: DC Team
url: https://dc.dynamitecircle.com
description: 'Programmatic access to your DC membership data — trips, events, profile, announcements, and more. Designed for AI assistants, automation, and personal integrations. > **For ALL active DC members.** Every active DC member is eligible from day one — DC, DC BLACK, and trial accounts alike. ## What this is for
The DC Member API is for **personal use** — wiring DC into your own AI assistant, scripting personal automations, pulling your own data into your own dashboards. Think "give my Claude/Codex/Cursor access to my DC trips and announcements" or "auto-update my DC trip when I book a flight."
**It is not for:**
- Building apps that other DC members log into (use the official DC app)
- Crawling, scraping, or bulk-exporting member data
- Building an alternative DC client
- Public-facing services running on top of the API
We **augment, we don''t replace** — the API gives you awareness and convenience, then sends you to the app for the real interactions. Human stuff stays in the app: no message content, no DM access, no bulk profile browsing, no discussion threads. **Rate limits are strict on purpose.** They''re sized for personal automation, not application traffic. We''ll loosen them once we see real usage patterns — if you hit a wall, email the DC developer team at **bugs+api@dynamitecircle.com** and we''ll sort you out. ## Connect to Claude & other AI apps (hosted MCP)
This API is also a hosted MCP server — add it as a connector in Claude, Cursor, ChatGPT, or any MCP-compatible app and your assistant can read and act on your DC data directly. **No install.** When prompted, **sign in with your DC account** (one-click OAuth) — or paste a `dk_` API key. Every endpoint below is exposed as a tool. **Connector URL** (Streamable HTTP): `https://api.dynamitecircle.com/mcp`
- **Claude (web, Desktop & mobile):** Settings → Connectors → **Add custom connector** → paste the URL → **Connect**, then sign in with your DC account. (Paid Claude plan; on Team/Enterprise an admin may need to approve it first.)
- **Claude Code:** `claude mcp add --transport http dc https://api.dynamitecircle.com/mcp`
- **Cursor, ChatGPT & other MCP apps:** add a custom / remote MCP connector pointing at the URL above (Streamable HTTP). Discovery is published at `/.well-known/mcp.json`. **What you can do once connected** — ask in plain language, e.g. "Which DCBKK sessions have I bookmarked?", "Add a trip to Lisbon and show me which DCers will be around", "RSVP me to the next Bangkok meetup", "Summarize the latest announcements." Reads run freely; writes do exactly what the matching endpoint documents. Access is scoped to **you** — the connector only ever sees your own membership data. ## Official client — Agent Skill, CLI, Python library, MCP server
The fastest way to use this API — and to plug it into Claude Code, Codex CLI, Gemini CLI, Cursor, GitHub Copilot, or Claude Desktop — is the **official DC client**. One self-contained Python file, stdlib only, that ships as **four integrations from the same source**: Agent Skill (auto-discovered via SKILL.md), CLI (`dc …`), Python library (`from dc import DC`), and MCP server (`dc --mcp`, optional `mcp` dep). **Install via PyPI** (easiest):
```bash
pip install dynamitecircle
dc setup --api-key dk_your_api_key
dc self-test
dc profile
```
The package is published on PyPI as `dynamitecircle` — same code as the repo, version-locked to the deployed API.'
title: DC Member Chapters API
version: 2.6.11
servers:
- description: Production
url: https://api.dynamitecircle.com
security:
- ApiKeyAuth: []
tags:
- name: Chapters
paths:
/chapters:
get:
description: 'List all DC chapters (city-based community hubs), sorted by member count. Each chapter has a Google Place ID — pass it to `POST /trips` to create a trip to that chapter''s city.
**See also:** For a chapter by city or country name (`q=''Lisbon''`, `q=''Thailand''`), `POST /search/chapters` searches city + country names directly — faster than paginating this member-count-sorted list.'
operationId: get_chapters
responses:
'200':
content:
application/json:
schema:
properties:
chapters:
items:
type: object
type: array
description: Array of chapters, sorted by member count (descending).
properties:
cityID:
type: string
description: Chapter ID (same as the Google Place ID)
cityName:
type: string
description: City name
country:
type: string
description: Country
countryCode:
type: string
description: ISO country code
placeID:
type: string
description: Google Place ID — pass to POST /trips to create a trip to this city
memberCount:
type: number
description: Number of members in this chapter
upcomingTrips:
type: number
description: Number of upcoming trips to this chapter
chapterURL:
type: string
description: Link to chapter page on DC (canonical host).
shortURL:
type: string
description: Branded short link (dc.mba) to the same chapter.
nextCursor:
type: string
description: Cursor for the next page, or `null` if no more chapters.
type: object
description: Success
'401':
description: Unauthorized — missing or invalid API key
'403':
description: Forbidden — inactive membership or not eligible
'429':
description: Rate limit exceeded
summary: List chapters
tags:
- Chapters
parameters:
- description: Max chapters to return (1-100).
in: query
name: limit
required: false
schema:
default: '50'
type: number
- description: Cursor from a previous response's `nextCursor`. Pass to fetch the next page.
in: query
name: cursor
required: false
schema:
default: ''
type: string
/chapters/{cityID}:
get:
description: 'Get full details for a single chapter, including up to 100 home-chapter members and the list of DCers currently visiting via active trips.
- `members` — DCers whose **home chapter** is this city (up to 100).
- `currentVisitors` — DCers with an active trip to this city (`startDate right now?" — both locals (via `members`) and visitors (here).
Hidden + guest profiles are filtered from both lists.'
operationId: get_chapters__cityID
responses:
'200':
content:
application/json:
schema:
properties:
chapter:
type: object
description: Chapter metadata. Same shape as one entry from `GET /chapters`.
properties:
cityID:
type: string
description: Chapter ID (same as the Google Place ID)
cityName:
type: string
description: City name
country:
type: string
description: Country
countryCode:
type: string
description: ISO country code
placeID:
type: string
description: Google Place ID for the chapter city
memberCount:
type: number
description: Number of members whose home chapter is this city
upcomingTrips:
type: number
description: Number of upcoming trips to this chapter
chapterURL:
type: string
description: Link to chapter page on DC (canonical host).
shortURL:
type: string
description: Branded short link (dc.mba) to the same chapter.
members:
items:
type: object
type: array
description: Up to 100 home-chapter members. Each profile uses the full public-other-person shape (same as `GET /profile-match` results).
currentVisitors:
items:
type: object
type: array
description: DCers currently in this city via active trips (`startDate <= now <= endDate`). Use this together with `members` to answer "who is in <city> right now?".
properties:
tripID:
type: string
description: The visitor's active trip ID.
startDate:
type: string
description: Trip start date (ISO 8601).
endDate:
type: string
description: Trip end date (ISO 8601).
profile:
type: object
description: Mini profile of the visitor.
properties:
userID:
type: string
description: User ID.
userName:
type: string
description: Username (handle).
displayName:
type: string
description: Display name.
photo:
type: string
description: Profile photo URL.
headline:
type: string
description: Profile headline.
profileURL:
type: string
description: Profile URL on DC.
type: object
description: Success
'401':
description: Unauthorized — missing or invalid API key
'403':
description: Forbidden — inactive membership or not eligible
'429':
description: Rate limit exceeded
summary: Get a single chapter
tags:
- Chapters
parameters:
- description: Chapter ID (same as Google Place ID)
example: ChIJ82ENKDJgHTERIEjiXbIAAQE
in: path
name: cityID
required: true
schema:
type: string
components:
securitySchemes:
ApiKeyAuth:
bearerFormat: dk_<userID>_<random>
description: 'Your DC Member API key. Generate one from the user menu inside the DC member area (admin/tester access required). Send it as `Authorization: Bearer dk_your_api_key`.'
scheme: bearer
type: http