HostSite host.site@1
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
- Version
- 1.0.0
- Owner
- host
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/host/site.v1.json
host.site@1: one static site on OpenVibe.Host (server/http/serialize.js site): its name (one DNS label), the default hostname and URL it is served at, the deploy it serves (one pointer; null until a deploy is activated) and any staff takedown.
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | string | yes |
| |
project_id | string | yes |
| |
name | string | yes |
| |
hostname | string | yes | ||
url | string | yes | ||
active_deploy_id | one of | yes | ||
takedown | object | null | yes | A staff takedown covering it: serving stops while the content is kept for review. | |
created_at | string | yes |
| |
updated_at | string | yes |
|
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: site
{
"id": "site_01JAD2S3T4V5W6X7Y8Z9A0B1C2",
"project_id": "prj_01JAD1P2R3J4K5M6N7P8Q9R0S1",
"name": "harbour-radio",
"hostname": "harbour-radio.openvibe.host",
"url": "https://harbour-radio.openvibe.host",
"active_deploy_id": "dpl_01JAD4D4E5F6G7H8J9K0M1N2P3",
"takedown": null,
"created_at": "2026-09-24T08:15:00.000Z",
"updated_at": "2026-09-24T09:40:12.000Z"
}Rejected: uppercase-name
{
"id": "site_01JAD2S3T4V5W6X7Y8Z9A0B1C2",
"project_id": "prj_01JAD1P2R3J4K5M6N7P8Q9R0S1",
"name": "Harbour-Radio",
"hostname": "harbour-radio.openvibe.host",
"url": "https://harbour-radio.openvibe.host",
"active_deploy_id": "dpl_01JAD4D4E5F6G7H8J9K0M1N2P3",
"takedown": null,
"created_at": "2026-09-24T08:15:00.000Z",
"updated_at": "2026-09-24T09:40:12.000Z"
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('host.site@1', value); // { valid, errors: [{ path, message }] }