# TreasuryProjectionCreate

[All API schemas](/api-reference/schemas/)

<code>object</code> — Additional properties rejected

| Field | Required at this level | Type | Description and constraints |
| --- | --- | --- | --- |
| <code>assumptions</code> | Yes | <code>object</code> | Additional properties rejected |
| <code>assumptions.id</code> | Yes | <code>string</code> | Pattern: <code>^treasury&#95;assumptions&#95;&#91;0-9a-f&#93;{32}$</code> |
| <code>assumptions.resourceVersion</code> | Yes | <code>string</code> | Pattern: <code>^0x&#91;0-9a-f&#93;{64}$</code> |
| <code>throughDay</code> | Yes | <code>string</code> | Pattern: <code>^20&#91;0-9&#93;{2}-&#91;0-9&#93;{2}-&#91;0-9&#93;{2}$</code> |
| <code>restrictions</code> | Yes | Array of <code>object</code> | Min items: <code>1</code>; Max items: <code>256</code> |
| <code>restrictions&#91;&#93;.ledgerEntryId</code> | Yes | <code>string</code> | Pattern: <code>^&#91;a-zA-Z0-9&#93;&#91;a-zA-Z0-9:&#95;-&#93;{2,159}$</code> |
| <code>restrictions&#91;&#93;.restrictedAmountAtomic</code> | Yes | <code>string</code> | Pattern: <code>^&#40;0&#124;&#91;1-9&#93;&#91;0-9&#93;{0,77}&#41;$</code> |
| <code>restrictions&#91;&#93;.reason</code> | Yes | <code>string</code> | Min length: <code>1</code>; Max length: <code>2000</code> |
| <code>confirmation</code> | Yes | Constant <code>UNPAID&#95;SCHEDULES&#95;AND&#95;RESTRICTIONS&#95;EXCLUDE&#95;THEM</code> | — |

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Exact definition: <code>#/components/schemas/TreasuryProjectionCreate</code> in the [OpenAPI contract](/openapi/liquidity-operating-system-v2.openapi.json).