Skip to content

Expose GET /api/config endpoint for scenius-digest and Avails #9

@zhiganov

Description

@zhiganov

Problem

Both scenius-digest and Avails currently read community configuration from a static groups.json file in the scenius-digest repo. This means:

  • Adding communities requires editing JSON and redeploying
  • No self-service — only the operator can configure communities
  • Avails' share_poll MCP tool can only post to pre-configured communities

What's needed

GET /api/config endpoint that returns all active communities in the same dict shape as groups.json:

{
  "scenius": {
    "name": "Sensemaking Scenius",
    "group_id": "-1002141367711",
    "output_channel": "-1002708526104",
    "topics": { "links": "230", "events": "2156" },
    ...
  }
}

This is already designed in docs/plans/shaping.md (V2 integration slice) with TTL cache and groups.json fallback.

Consumers

  • scenius-digest — webhook handler, links API, events API, groups API
  • Availsshare_poll MCP tool needs community→channel mapping and topic IDs
  • my-community / dear-neighbors — community listing and event feeds

Context

This is part of V2 in the shaping doc. Blocked by V1 (backend + database + auth). The existing design in 2026-02-21-db-backed-config-design.md covers the migration path including seed script and fallback logic.

Related: Citizen-Infra/avails#44 (self-service community connection)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions