# SavedVirtualsProject

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

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

| Field | Required at this level | Type | Description and constraints |
| --- | --- | --- | --- |
| <code>kind</code> | Yes | Constant <code>VIRTUALS&#95;DIRECTORY&#95;PROJECT</code> | — |
| <code>organizationId</code> | Yes | <code>string</code> | Min length: <code>1</code>; Max length: <code>160</code> |
| <code>virtualsProjectId</code> | Yes | <code>integer</code> | Minimum: <code>1</code>; Maximum: <code>9007199254740991</code> |
| <code>project</code> | Yes | <code>object</code> | Additional properties rejected |
| <code>project.id</code> | Yes | <code>integer</code> | Minimum: <code>1</code>; Maximum: <code>9007199254740991</code> |
| <code>project.name</code> | Yes | <code>string</code> | Min length: <code>1</code>; Max length: <code>200</code> |
| <code>project.symbol</code> | Yes | <code>string</code> | Max length: <code>100</code> |
| <code>project.chain</code> | Yes | <code>string</code> | Min length: <code>1</code>; Max length: <code>40</code> |
| <code>project.address</code> | Yes | At least one of: <code>string</code>; <code>null</code> | — |
| <code>project.imageUrl</code> | Yes | At least one of: <code>string</code>; <code>null</code> | — |
| <code>project.url</code> | Yes | <code>string</code> | Max length: <code>100</code> |
| <code>directoryObservedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>savedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>savedBy</code> | Yes | <code>string</code> | Format: <code>uuid</code> |
| <code>resourceVersion</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |

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/SavedVirtualsProject</code> in the [OpenAPI contract](/openapi/liquidity-operating-system-v2.openapi.json).