API Reference / Strategy - Initiatives
Merge two or more initiatives into one
https://api.intelig.ai/api/v1/intelig/strategy/initiatives/merge
Auth: Authorization: ApiKey <key> (an API key sent as
Bearer is rejected) or Authorization: Bearer <jwt>
for a dashboard session. operationId: mergeInitiatives
Consolidates secondary initiatives into the primary. Reassigns linked commits, pull requests, action items, decisions, sprint memberships, ownership patterns, cognis findings, intent snapshots, link proposals, discovery candidates, and finance allocations to the primary. Secondary initiatives are soft-deleted and recorded in strategy_initiative_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/initiatives/merge" \
-H "Authorization: ApiKey $INTELIG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"primaryInitiativeId": 57,
"secondaryInitiativeIds": [
61,
62
],
"mergeReason": "Duplicate discovery of the same body of work"
}' Request body
application/json
| Field | Type | Required | Description |
|---|---|---|---|
primaryInitiativeId | integer (int64) | yes | The initiative that survives the merge. Example: 57 |
secondaryInitiativeIds | integer[] | yes | The initiatives absorbed into the primary. Example: [61,62] |
mergeReason | string | no | Why, for the audit trail. Example: Duplicate discovery of the same body of work |
Response 200
application/json · ApiResponseInitiativeMergeResultDto
| Field | Type | Description |
|---|---|---|
success | boolean | — |
message | string | — |
data | InitiativeMergeResultDto | — |
Status codes
200— Merge completed400— Validation failed (cross-org, deleted, duplicate ids, etc.)401— Not authenticated403— Insufficient permissions to access strategy pillar404— Initiative 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.