# StrategyPackageCandidate

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

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

| Field | Required at this level | Type | Description and constraints |
| --- | --- | --- | --- |
| <code>packageId</code> | Yes | <code>string</code> | — |
| <code>publisherOrganizationId</code> | Yes | <code>string</code> | — |
| <code>name</code> | Yes | <code>string</code> | — |
| <code>version</code> | Yes | <code>string</code> | — |
| <code>compilerVersion</code> | Yes | Constant <code>strategy-dsl-v1</code> | — |
| <code>compilerHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>definition</code> | Yes | [StrategyDefinitionV2Input](/api-reference/schemas/strategy-definition-v2-input/) | — |
| <code>supportedAssetIds</code> | Yes | Array of <code>string</code> | — |
| <code>supportedVenueIds</code> | Yes | Array of <code>string</code> | — |
| <code>riskClass</code> | Yes | <code>string</code> | Allowed: <code>LOW</code>, <code>MODERATE</code>, <code>HIGH</code>, <code>EXPERIMENTAL</code> |
| <code>performanceAssumptions</code> | Yes | Array of <code>string</code> | — |
| <code>historicalTests</code> | Yes | Array of <code>object</code> | — |
| <code>historicalTests&#91;&#93;.studyId</code> | Yes | <code>string</code> | — |
| <code>historicalTests&#91;&#93;.datasetHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>historicalTests&#91;&#93;.reportHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>historicalTests&#91;&#93;.compilerHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>historicalTests&#91;&#93;.passedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>historicalTests&#91;&#93;.passed</code> | Yes | Constant <code>true</code> | — |
| <code>forkTests</code> | Yes | Array of <code>object</code> | — |
| <code>forkTests&#91;&#93;.testRunId</code> | Yes | <code>string</code> | — |
| <code>forkTests&#91;&#93;.chainId</code> | Yes | <code>integer</code> | Minimum: <code>1</code> |
| <code>forkTests&#91;&#93;.forkBlockNumber</code> | Yes | [AtomicAmount](/api-reference/schemas/atomic-amount/) | — |
| <code>forkTests&#91;&#93;.forkBlockHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>forkTests&#91;&#93;.rpcQuorumEvidenceHashes</code> | Yes | Array of [Hash](/api-reference/schemas/hash/) | — |
| <code>forkTests&#91;&#93;.artifactHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>forkTests&#91;&#93;.compilerHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>forkTests&#91;&#93;.passedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>forkTests&#91;&#93;.passed</code> | Yes | Constant <code>true</code> | — |
| <code>maximumCapitalQuote</code> | Yes | [AtomicAmount](/api-reference/schemas/atomic-amount/) | — |
| <code>failureConditions</code> | Yes | Array of <code>string</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/StrategyPackageCandidate</code> in the [OpenAPI contract](/openapi/liquidity-operating-system-v2.openapi.json).