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
| Field | Type | Required | Description |
|---|---|---|---|
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
| Field | Type | Description |
|---|---|---|
success | boolean | — |
message | string | — |
data | ThemeMergeResultDto | — |
Status codes
200— Themes merged400— Validation failed (cross-org, duplicate ids, etc.)401— Not authenticated403— Insufficient permissions to access strategy pillar404— Theme not found429— —
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.