ToolsJobReadResult tools.job-read-result@1
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
- Version
- 1.0.0
- Owner
- tools
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/tools/job-read-result.v1.json
tools.job-read-result@1: answers of tools.job.read on the Tools satellites. GET /api/v1/jobs/:id → tools.job@1, and so is the data of every event on GET /api/v1/jobs/:id/events (Server-Sent Events, Last-Event-ID resume); GET /api/v1/jobs/:id/files/:n → the result file's bytes (Content-Type of the file; 409 tools.job.not_ready before the job succeeded).
Fields
This schema has no named fields.
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: file
"<bytes>"Valid: job
{
"id": "job_01JAB2C3D4E5F6G7H8J9K0MNPQ",
"object": "tools.job",
"service": "img",
"type": "img.process",
"type_version": 1,
"state": "queued",
"progress": {
"percent": null,
"message": null
},
"attempts": 0,
"max_attempts": 3,
"cancel_requested": false,
"created_at": "2026-09-23T09:00:00.000Z",
"started_at": null,
"finished_at": null,
"expires_at": "2026-09-23T10:00:00.000Z",
"result": null,
"error": null,
"retryable": false,
"retry_of": null,
"retried_by": null,
"references": [],
"links": {
"self": "/api/v1/jobs/job_01JAB2C3D4E5F6G7H8J9K0MNPQ",
"events": "/api/v1/jobs/job_01JAB2C3D4E5F6G7H8J9K0MNPQ/events",
"cancel": "/api/v1/jobs/job_01JAB2C3D4E5F6G7H8J9K0MNPQ",
"retry": null,
"retried_by": null
}
}Rejected: partial
{
"id": 5
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('tools.job-read-result@1', value); // { valid, errors: [{ path, message }] }