# v1 · BackgroundJob

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

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

| Field | Required at this level | Type | Description and constraints |
| --- | --- | --- | --- |
| <code>id</code> | Yes | <code>string</code> | Min length: <code>1</code> |
| <code>kind</code> | Yes | <code>string</code> | Allowed: <code>DIAGNOSTIC&#95;SIMULATION</code>, <code>INDEXED&#95;SIMULATION</code>, <code>AI&#95;OUTPUT</code>, <code>REPORT&#95;GENERATION</code> |
| <code>resultId</code> | Yes | <code>string</code> | Min length: <code>1</code> |
| <code>state</code> | Yes | [BackgroundJobState](/api-reference/v1/schemas/background-job-state/) | — |
| <code>attempts</code> | Yes | <code>integer</code> | Minimum: <code>0</code>; Maximum: <code>5</code> |
| <code>availableAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>lastErrorCode</code> | No | <code>string</code> | — |
| <code>result</code> | No | <code>object</code> | Additional properties rejected |
| <code>result.resourceType</code> | Yes | <code>string</code> | Allowed: <code>simulation</code>, <code>ai&#95;output</code>, <code>report</code> |
| <code>result.resourceIds</code> | Yes | Array of <code>string</code> | Min items: <code>1</code>; Max items: <code>1</code> |
| <code>result.evidenceHashes</code> | Yes | Array of <code>string</code> | Min items: <code>1</code>; Max items: <code>1</code> |
| <code>createdAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>updatedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>completedAt</code> | No | <code>string</code> | Format: <code>date-time</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/BackgroundJob</code> in the [OpenAPI contract](/openapi/liquidity-studio.openapi.json).