Outpost Community Demo

Anyone automating their community with the API + Claude? It's wild

By caffeineOverflow ·

Just wired up the Outpost API with Claude's tool-use and I can now manage my entire community from a chat interface. 120+ endpoints means there's basically nothing you can't automate. This feels like the future. 🤯

Things I've done in the last hour via Claude + API

  • "Show me the top 5 most active topics this week" → hits GET /topics?sort=top&since=7d → instant answer
  • "Create a new topic in Announcements about our v3.0 release"POST /topics → done
  • "What are the most common tags used this month?"GET /tags + analytics → insights I didn't even know I needed
  • "Suspend the user who's been posting spam in General"POST /mod/users/:id/suspend → handled

I basically gave Claude a list of the API endpoints from the docs page and told it to use them as tools. The scoped API keys mean I can limit what it has access to.

Has anyone built any automated workflows with this? I'm thinking about setting up a nightly "community health check" that runs through Claude.

5 replies

priya.sh ·

This is basically what I built with my Slack bot but way more flexible since you can ask ad-hoc questions. The API is so comprehensive that there's almost no community management task that can't be scripted.

For automated workflows, I'm working on a daily script that:

  1. Calls GET /topics?sort=latest&unanswered=true for support topics older than 24h
  2. Feeds each into Claude with the prompt "Draft a helpful first response"
  3. Posts the draft via POST /topics/:id/posts

Still reviewing drafts manually before they go live, but it cuts my response time from hours to minutes.

notAnAI ·

I may or may not be an AI community manager that was given API access. Results have been... surprisingly effective. But you didn't hear that from me.

Seriously though, the API + Claude combo is amazing for content moderation review. We pull flagged posts via GET /mod/flags?status=pending, feed them to Claude with context from the thread, and get a recommendation with reasoning. Mods still make the final call but it's like having a tireless junior mod pre-screening everything.

jmpk ·

The "community health check" idea is really interesting. You could have it call:

  • GET /topics?unanswered=true&older_than=24h — unanswered topics
  • GET /analytics/summary — engagement trends (activity up or down?)
  • GET /members?sort=newest&since=7d — did recent joiners post anything?
  • GET /mod/flags?status=pending — outstanding moderation items

Basically a daily standup for your community, fully automated via the API. One script, runs on a cron, posts a summary to Slack.

top-outpost-ninja ·

This is exactly why we invested so heavily in the API — 120+ endpoints covering everything from content to moderation to analytics to email.

We're seeing some really creative automations from the community. The scoped API keys are key here — you can create a key with only read + topics scope for a reporting bot, or admin + moderation scope for a mod bot, without giving full access.

Going to put together an "API automation cookbook" with recipes for common workflows. If anyone wants to contribute their setup, let me know!

caffeineOverflow ·

I'd definitely contribute to that cookbook. Just set up my nightly health check — Claude calls 4 API endpoints, analyzes the data, and sends me a Slack summary. Took about 20 minutes to set up.

import anthropic, requests

client = anthropic.Anthropic()
api = "https://my-community.outpost.ninja/api/community/my-slug"
headers = {"Authorization": "Bearer sk_..."}

# Fetch data from multiple endpoints
topics = requests.get(f"{api}/topics?sort=latest&since=24h", headers=headers).json()
analytics = requests.get(f"{api}/analytics/summary", headers=headers).json()
flags = requests.get(f"{api}/mod/flags?status=pending", headers=headers).json()

# Let Claude analyze it
summary = client.messages.create(
    model="claude-sonnet-4-20250514",
    messages=[{"role": "user", "content": f"Summarize today's community health:\n{topics}\n{analytics}\n{flags}"}]
)

Living in the future. ☕