WorkApplication work.application@1
Generated at from
openvibe-contracts v0.150.0 and
openvibe-sdk v0.44.0.
- Version
- 1.0.0
- Owner
- work
- Visibility
- public
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/work/application.v1.json
work.application@1: a person's tracked job application on OpenVibe.Work (server/applications.js toWire), as GET/POST/PATCH /api/v1/me/applications[/:id] answer it. GET of one application adds its append-only status changes as `events`.
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | string | yes |
| |
subject_id | string | yes |
| |
listing_id | string | null | yes | The Work listing it was tracked from, or null when added by hand. |
|
title | string | yes |
| |
company | string | yes |
| |
url | string | yes |
| |
status | enum | yes |
| |
notes | string | yes |
| |
applied_at | string | null | yes |
| |
next_step | string | yes |
| |
next_step_at | string | null | yes |
| |
actor_task_id | string | null | yes | The latest OpenVibe.Actor task asked for this application (POST …/assist). |
|
assists | integer | yes |
| |
created_at | string | yes |
| |
updated_at | string | yes |
| |
events | array of object |
| ||
events[].at | string | yes |
| |
events[].from_status | enum | yes |
| |
events[].to_status | enum | yes |
|
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: applied
{
"id": "wap_01JQ8Z0000000000000000000A",
"subject_id": "user:usr_01JQ8Z0000000000000000000B",
"listing_id": null,
"title": "Backend Engineer",
"company": "Northwind",
"url": "https://northwind.example/jobs/1",
"status": "applied",
"notes": "",
"applied_at": "2026-10-12T05:00:00.000Z",
"next_step": "",
"next_step_at": null,
"actor_task_id": null,
"assists": 0,
"created_at": "2026-10-12T05:00:00.000Z",
"updated_at": "2026-10-12T05:00:00.000Z"
}Rejected: bad-status
{
"id": "wap_01JQ8Z0000000000000000000A",
"subject_id": "user:usr_01JQ8Z0000000000000000000B",
"listing_id": null,
"title": "Backend Engineer",
"company": "Northwind",
"url": "https://northwind.example/jobs/1",
"status": "ghosted",
"notes": "",
"applied_at": "2026-10-12T05:00:00.000Z",
"next_step": "",
"next_step_at": null,
"actor_task_id": null,
"assists": 0,
"created_at": "2026-10-12T05:00:00.000Z",
"updated_at": "2026-10-12T05:00:00.000Z"
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('work.application@1', value); // { valid, errors: [{ path, message }] }