---
title: "Set Allocation Override"
method: POST
path: "/extensions/roboledger/{graph_id}/operations/set-allocation-override"
tags: ["RoboLedger: Ledger & Events"]
---

# Set Allocation Override

`POST /extensions/roboledger/{graph_id}/operations/set-allocation-override`

## Request

- Base URL: `https://api.robosystems.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.robosystems.ai/extensions/roboledger/{graph_id}/operations/set-allocation-override`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

Set the outside owners' share of a member's result for one month in place of the pro-rata share its ownership percentage gives: a preferred return, a waterfall, a special allocation. Give the share as an amount in cents (negative for a share of a loss) or as a percentage of the month's result, with the basis; `clear` removes it. preview- and propose-consolidation-entries then use it for that month, and their basis says so. Only for a member consolidated in full, and refused in a month the consolidation entity has closed.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.

## Path parameters

- `graph_id` string, required

## Headers

- `Idempotency-Key` string, nullable

## Request body

- SetAllocationOverrideRequest: The outside owners' share of a member's result for one month, set by a person in place of the pro-rata share: a preferred return, a waterfall, a special allocation.
  - `entity_id` string, required: The member, consolidated in full.
  - `period` string, required: The month, as YYYY-MM.
  - `amount` integer, nullable: The outside owners' share of the month's result, in cents; negative for a share of a loss.
  - `percentage` number, nullable: The outside owners' share as a percentage of the month's result.
  - `basis` string, nullable: Why the share differs from the ownership percentage; required to set one.
  - `clear` boolean: Remove the month's override, back to the pro-rata share.

## Response `200`

Successful Response

- OperationEnvelopeAllocationOverrideResponse
  - `operation` string, required: Kebab-case operation name
  - `operationId` string, required: op_-prefixed ULID for audit and SSE correlation
  - `status` 'completed' | 'pending' | 'failed', required: Operation lifecycle state
  - `result` AllocationOverrideResponse: A member's allocation override for one month.
    - `entity_id` string, required: The member.
    - `period` string, required: The month, as YYYY-MM.
    - `amount` integer, nullable: The share, in cents, when set so.
    - `percentage` number, nullable: The share as a percentage, when set so.
    - `basis` string, nullable: Why it differs from pro rata.
    - `set_by` string, nullable: Who set it.
    - `cleared` boolean: True when the override was removed.
  - `at` string, required: ISO-8601 UTC timestamp
  - `createdBy` string, nullable: User ID that initiated the operation
  - `idempotentReplay` boolean: True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.

## Other responses

- `400`: Invalid request
- `401`: Authentication required
- `403`: Access denied
- `404`: Resource not found
- `409`: Idempotency-Key conflict — key reused with different body
- `422`: Validation error
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/robosystems/apis/robosystems-api.md) · [All operations](https://skmtc.dev/robosystems/apis/robosystems-api/llms.txt) · [OpenAPI document](https://skmtc.dev/robosystems/apis/robosystems-api/revisions/28ffd375c457?raw)
