HostDeployActivatedPayload host.deploy.activated@1

Generated at from openvibe-contracts v0.76.0 and openvibe-sdk v0.20.1.

Version
1.0.0
Owner
host
Visibility
first-party
Status
active
Compatibility
backward
Decision
ADR-004
Schema
https://openvibe.network/contracts/events/payloads/host.deploy.activated.v1.json

host.deploy.activated v1 (OpenVibe.Host server/domain/deploys.js switchPointer, Stage B tenant hosting). A tenant site's active deploy changed, written into Host's event outbox in the transaction that moves the pointer (activate or rollback). Envelope: subject { type: deploy, id: <deploy id> }, visibility internal, priority low, actor the person or app that switched it. A network service's release going live is host.release.published, not this.

Fields

FieldTypeRequiredDescriptionConstraints
project_idstringyes
  • pattern ^prj_[0-9A-HJKMNP-TV-Z]{26}$
site_idstringyes
  • pattern ^site_[0-9A-HJKMNP-TV-Z]{26}$
sitestringyesThe site's name (<site>.openvibe.host).
  • pattern ^[a-z0-9](?:[a-z0-9]|-(?=[a-z0-9])){2,39}$
deploy_idstringyes
  • pattern ^dpl_[0-9A-HJKMNP-TV-Z]{26}$
previous_deploy_idstring | nullyesThe deploy that served before; null for the site's first activation.
  • pattern ^dpl_[0-9A-HJKMNP-TV-Z]{26}$
rollbackbooleanyestrue when the switch was a rollback.

Examples

From the contract's own test fixtures: valid ones validate, rejected ones must fail.

Valid: rollback
{
  "project_id": "prj_01JAB2C3D4E5F6G7H8J9K0MNPQ",
  "site_id": "site_01JAB2C3D4E5F6G7H8J9K0MNPR",
  "site": "my-site",
  "deploy_id": "dpl_01JAB2C3D4E5F6G7H8J9K0MNPT",
  "previous_deploy_id": "dpl_01JAB2C3D4E5F6G7H8J9K0MNPS",
  "rollback": true
}
Valid: tenant-site
{
  "project_id": "prj_01JAB2C3D4E5F6G7H8J9K0MNPQ",
  "site_id": "site_01JAB2C3D4E5F6G7H8J9K0MNPR",
  "site": "my-site",
  "deploy_id": "dpl_01JAB2C3D4E5F6G7H8J9K0MNPS",
  "previous_deploy_id": null,
  "rollback": false
}
Rejected: a-service-release
{
  "service": "live",
  "release": "d4e849f2",
  "commit": null,
  "origin": "https://openvibe.live",
  "deployed_at": "2026-09-26T08:00:05.000Z"
}
Rejected: tenant-no-previous
{
  "project_id": "prj_01JAB2C3D4E5F6G7H8J9K0MNPQ",
  "site_id": "site_01JAB2C3D4E5F6G7H8J9K0MNPR",
  "site": "my-site",
  "deploy_id": "dpl_01JAB2C3D4E5F6G7H8J9K0MNPS",
  "rollback": false
}

Validate

const contracts = require('openvibe-contracts');
contracts.validate('host.deploy.activated@1', value);   // { valid, errors: [{ path, message }] }