Portfolio

Mark every import_source whose `subscribed_scope_ids` contains the given scope as invalidated (spec §8.6). Helm AI's ScopeStore calls this after a rule write at a non-sheet scope so dependent sources' "ready" verdicts no longer reflect the current rule set

POST/portfolio/import-sources/invalidate-by-scope

Returns the affected count AND the affected source ids so the caller can broadcast morph_invalidate per source — needed for the frontend's per-row stale badge to flip without a full BatchJob refetch.

Request body

application/json, required · PortfolioInvalidateByScopeRequest

  • scope_idstringRequired#
  • reasonstringRequired#
{
  "scope_id": "string",
  "reason": "string"
}

Responses

200
{
  "affected": 1,
  "source_ids": {}
}
422

Validation error

Examples

curl -X POST https://your-org-domain/kong/core/api/v2/portfolio/import-sources/invalidate-by-scope\
  -H "Authorization: Bearer $HELM_API_KEY"\
  -H "Content-Type: application/json"\
  -d '{
  "scope_id": "string",
  "reason": "string"
}'