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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions