canonical: https://jentic.com/apis/circle.so/circle

# Circle So Circle Community API

Circle is a community platform used by creators, course operators, and SaaS companies to host members-only spaces, discussions, and events. The Circle Community API exposes 19 admin endpoints over https://app.circle.so/api/v1 covering communities, spaces, space groups, members, posts, and comments. Authentication uses a bearer token issued from Circle admin settings, and most endpoints require a community_id query parameter that scopes the call to a specific Circle community.

## For AI agents

Manage Circle community spaces, members, posts, and comments through 19 admin endpoints. Invite members, create posts in a space, and moderate comments using a bearer-token-authenticated REST API.

## Scope

Does not handle billing, video conferencing, or email marketing - use for Circle community, member, post, and comment management only.

## Capabilities

- Invite a new member to a Circle community by email and assign them to specific spaces
- Create a post in a Circle space with title, HTML body, and pin or comment-control flags
- List members of a community with pagination and filter by email or invited/active status
- Moderate community discussion by deleting individual comments by comment_id
- Update a member's profile name, bio, or assigned space_ids
- List space groups for a community to organise spaces by topic or audience
- Retrieve the authenticated member's profile via /me for session validation

## Use cases

### Automated Member Onboarding From a Course Platform

When a learner enrols in a course on an external LMS, an automation can call POST /community_members to invite them to the matching Circle community and assign space_ids for their cohort. This avoids manual seat provisioning and supports thousands of monthly enrolments. Skip_invitation can be set to true if the LMS handles the welcome email separately.

Example prompt: POST to /community_members with community_id 12345, email learner@example.com, name 'Alex Lee', and space_ids [678, 901] to invite the new cohort member.

### Cross-Posting Announcements Into Circle

A blog or newsletter publishing workflow can mirror new posts into a Circle space using POST /posts. The endpoint accepts an HTML body, pin and comment control flags, and the target space_id, so an editorial workflow can publish a single announcement to a website and to a Circle community simultaneously.

Example prompt: POST to /posts with community_id 12345, space_id 678, name 'Q3 Roadmap', body the announcement HTML, and is_pinned true.

### Community Health Reporting

GET /community_members and GET /posts with pagination let an analytics workflow pull weekly snapshots of active membership and posting volume per space. Combined with the comments_count and likes_count fields on Post, this powers a community-health dashboard without scraping the Circle UI.

Example prompt: GET /posts?community_id=12345&space_id=678&per_page=100&sort=latest and aggregate comments_count and likes_count for the last 50 posts.

### AI Agent Community Moderation

An AI moderation agent invoked through Jentic can scan recent comments via GET /comments, classify any that violate guidelines, and call DELETE /comments/{comment_id} to remove them. Jentic isolates the Circle bearer token in your Jentic One instance so the moderation logic never holds the raw credential.

Example prompt: Search Jentic for 'delete a comment in Circle', load the DELETE /comments/{comment_id} schema, then remove comment 555 from community 12345.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /community_members | Invite a new member to a community |
| GET | /community_members | List members of a community |
| POST | /posts | Create a new post in a space |
| GET | /posts | List posts in a space |
| POST | /comments | Create a comment on a post |
| DELETE | /comments/{comment_id} | Delete a comment |
| GET | /me | Get current authenticated member profile |

## Key resources

- **Communities** — List and read Circle communities the token has access to
- **Spaces** — List and read spaces and space groups inside a community
- **Members** — Invite, list, update, remove community members and read /me
- **Posts** — List, create, read, update, delete posts within a space
- **Comments** — List, create, and delete comments on a post

## Why Jentic

- **Setup:** Wiring the Circle Community API by hand means learning its bearer token auth and threading members, posts, and comments through the right community endpoints yourself. Through Jentic you install once, import the Circle Community API from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** Circle takes the target member or post in the request body when creating content, so scope the agent to the operations it needs, such as listing posts and adding comments. You choose the operations it may call, so comment deletion is not included unless you add it.
- **Credential handling:** Your Circle token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a community post' or 'add a member', and Jentic returns the matching Circle operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **CINNOX API** — CINNOX handles 1:1 customer messaging while Circle hosts many-to-many community discussion.
- **Cisco API** — Cisco Webex powers internal collaboration that complements Circle's external member community.
- **GoToMeeting API** — GoToMeeting hosts the live event sessions promoted in Circle posts.

## FAQ

### What authentication does the Circle Community API use?

Circle uses bearer-token authentication. Generate a token from Circle admin settings and pass it as Authorization: Bearer <token>. Through Jentic the token is stored encrypted in your Jentic One instance and never exposed to the agent at runtime.

### Can I invite members to a Circle community via the API?

Yes. POST /community_members with community_id, email, optional name, space_ids, and skip_invitation invites a new member. Use skip_invitation=true if your own system already sends the welcome email.

### What are the rate limits for the Circle Community API?

Circle does not publish hard rate limits in the OpenAPI spec; admin endpoints are intended for back-office use rather than per-request user traffic. Plan batched member sync jobs and let Jentic surface any 429 responses for retry.

### How do I create a Circle post through Jentic?

Run pip install jentic, then search Jentic for 'create a post in Circle'. Jentic returns POST /posts with its schema. Supply community_id, space_id, name, and body, and execute. Get started with Jentic One, the self-hosted execution layer.

### How do I scope a request to a specific community?

Most Circle endpoints require a community_id query parameter. For example GET /spaces?community_id=12345 lists spaces inside that community. Pass community_id consistently across calls - it is the primary tenancy boundary.

### Can I moderate comments programmatically?

Yes. GET /comments?community_id=...&post_id=... lists comments on a post and DELETE /comments/{comment_id} removes one. Combined, these support automated moderation workflows that flag and remove off-topic or abusive replies.

### Can I limit what my agent is allowed to do with the Circle Community API?

Yes. Because Jentic One is self-hosted, you decide which Circle operations your agent may call, so you can grant read-only access like GET /posts and GET /community_members while withholding write operations. If your agent only needs to add comments via POST /comments, you can enable that alone and leave destructive calls such as DELETE /comments/{comment_id} out unless you deliberately add them. Your own rules govern which operations and stored credentials the agent uses, and each call is scoped to a community by its community_id.
