Sangeetha-Grantha

Metadata Value
Status Active
Version 1.2.0
Last Updated 2026-09-10
Author Sangeetha Grantha Team
Document Type Current guide

Client integration guide


Rasika and the Curator Console share backend infrastructure but use different read models. Select a contract by audience and preserve its visibility, pagination, and error semantics.

Rasika

The Ktor catalogue client targets /v2/catalogue. It consumes allowlisted catalogue DTOs, never editorial KrithiDto as a shortcut.

Later V2 directories are not mounted yet. See the mobile PRD.

Curator Console

The browser API client defaults to /v1. It combines legacy reference/catalogue reads, admin operations, and vector-search routes. The route map identifies the main workflows.

Token exchange uses an admin token and existing identity; subsequent protected requests send a Bearer JWT. The backend reloads roles on refresh and requires the current admin role. Do not infer privileges from visible UI controls.

Lexical and vector result models differ. Catalogue pagination fields are not a universal envelope for all admin lists. Hybrid/semantic responses return ranked items and totalMatches, not a paginated catalogue total.

Cross-client consistency

Public publication rules must be verified at the server. V1 and V2 deliberately differ on UNESTABLISHED; otherwise avoid leaking editorial fields through a reused DTO. Request parameter errors and variant ownership should be exercised in contract tests.

Successful catalogue reads use no-store. Legacy/reference endpoint cache behavior is distinct, so do not impose a global caching assumption. Changes to source text may also require a separate search-index refresh.

API contract · Examples · Configuration · Quality


Section index · Documentation home · Feature status