API Reference / Strategy - Themes

Merge two or more themes into one

post https://api.intelig.ai/api/v1/intelig/strategy/themes/merge

Auth: Authorization: ApiKey <key> (an API key sent as Bearer is rejected) or Authorization: Bearer <jwt> for a dashboard session. operationId: mergeThemes

Consolidates secondary themes into the primary. Active child initiatives currently grouped under the secondaries are reassigned to the primary. Secondary themes are soft-deleted and recorded in strategy_theme_alias. Idempotent: replaying the same merge returns the prior result without re-running side effects.

Example request

curl -X POST "https://api.intelig.ai/api/v1/intelig/strategy/themes/merge" \
  -H "Authorization: ApiKey $INTELIG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "primaryThemeId": 4,
    "secondaryThemeIds": [
      7,
      9
    ],
    "mergeReason": "Two names for the same strategic bet"
  }'

Request body

application/json

FieldTypeRequiredDescription
primaryThemeId integer (int64) yes The theme that survives the merge. Example: 4
secondaryThemeIds integer[] yes The themes absorbed into the primary. Example: [7,9]
mergeReason string no Why, for the audit trail. Example: Two names for the same strategic bet

Response 200

application/json · ApiResponseThemeMergeResultDto

FieldTypeDescription
success boolean
message string
data ThemeMergeResultDto

Status codes

  • 200 — Themes merged
  • 400 — Validation failed (cross-org, duplicate ids, etc.)
  • 401 — Not authenticated
  • 403 — Insufficient permissions to access strategy pillar
  • 404 — Theme not found
  • 429 — —

Every response is wrapped in { success, message, data }. A 4xx means the request is wrong — do not retry it unchanged. A 429 carries Retry-After in seconds.