openvibers/openvibe.contracts Commits
report and design index documents (0.275.0) (#284)
Changes
@@@ -1,5 +1,17 @@# Changelog++## 0.275.0 — 2026-11-02++++- **`report.index_document.upserted` / `.deleted` v1** (active, first-party; plan T9): OpenVibe.Report's Rundown++ topic pages (type `topic`, `/rundown/t/<slug>`) as OpenVibe.Search documents: the title, headline and summary of++ what streamers said. Live's own topic pages are noindex; Report's are the public copy. 60 topics were on no network++ search.++- **`design.index_document.upserted` / `.deleted` v1** (active, first-party): OpenVibe.Design's icon pages (type++ `icon`, `/icons/<name>`) and theme pages (type `theme`, `/t/<slug>`). 280 icons and 50 themes were on no network++ search.++- Both are sent through `openvibe-publishing/search-feed`; the Report and Design manifests list them in++ `eventsProduced`; the catalog has their entries and fixtures.++## 0.274.0 — 2026-11-02- **`tours.index_document.upserted` / `.deleted` v1** (active, first-party; plan T9): OpenVibe.Tours' pages as@@@ -7351,6 +7351,42 @@"compatibility": "backward","status": "active"},++ {++ "id": "design.index_document.upserted",++ "version": "1.0.0",++ "owner": "design",++ "schema": "events/payloads/design.index_document.upserted.v1.json",++ "visibility": "first-party",++ "compatibility": "backward",++ "status": "active"++ },++ {++ "id": "design.index_document.deleted",++ "version": "1.0.0",++ "owner": "design",++ "schema": "events/payloads/design.index_document.deleted.v1.json",++ "visibility": "first-party",++ "compatibility": "backward",++ "status": "active"++ },++ {++ "id": "report.index_document.upserted",++ "version": "1.0.0",++ "owner": "report",++ "schema": "events/payloads/report.index_document.upserted.v1.json",++ "visibility": "first-party",++ "compatibility": "backward",++ "status": "active"++ },++ {++ "id": "report.index_document.deleted",++ "version": "1.0.0",++ "owner": "report",++ "schema": "events/payloads/report.index_document.deleted.v1.json",++ "visibility": "first-party",++ "compatibility": "backward",++ "status": "active"++ },{"id": "work.application","version": "1.0.0",nnew file mode 100644@@@ -0,0 +1,31 @@++{++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.deleted.v1.json",++ "title": "DesignIndexDocumentDeletedPayload",++ "description": "design.index_document.deleted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for an icon or theme page that left the catalog. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",++ "type": "object",++ "required": [++ "type",++ "id",++ "revision"++ ],++ "additionalProperties": false,++ "properties": {++ "type": {++ "enum": [++ "icon",++ "theme"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "revision": {++ "type": "integer",++ "minimum": 1,++ "maximum": 9007199254740991,++ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."++ }++ }++}nnew file mode 100644@@@ -0,0 +1,37 @@++{++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.upserted.v1.json",++ "title": "DesignIndexDocumentUpsertedPayload",++ "description": "design.index_document.upserted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Design page: an icon (type icon, /icons/<name>, the glyph name as the id: its name, the words it is found by and the formats it downloads in) or a theme (type theme, /t/<slug>: its name, mode and description, from OpenVibe.Network's theme catalog). Sent by the sweep at boot and on a timer; a page that left the catalog becomes a tombstone. The sequencer (design_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind (icon: solid when it has a filled form), mode (theme). Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",++ "allOf": [++ {++ "$ref": "../../search/index-document.v1.json"++ },++ {++ "type": "object",++ "required": [++ "owner",++ "type",++ "deleted"++ ],++ "properties": {++ "owner": {++ "const": "design"++ },++ "type": {++ "enum": [++ "icon",++ "theme"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "deleted": {++ "const": false++ }++ }++ }++ ]++}nnew file mode 100644@@@ -0,0 +1,30 @@++{++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.deleted.v1.json",++ "title": "ReportIndexDocumentDeletedPayload",++ "description": "report.index_document.deleted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for a Rundown topic page that left the Rundown. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",++ "type": "object",++ "required": [++ "type",++ "id",++ "revision"++ ],++ "additionalProperties": false,++ "properties": {++ "type": {++ "enum": [++ "topic"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "revision": {++ "type": "integer",++ "minimum": 1,++ "maximum": 9007199254740991,++ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."++ }++ }++}nnew file mode 100644@@@ -0,0 +1,36 @@++{++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.upserted.v1.json",++ "title": "ReportIndexDocumentUpsertedPayload",++ "description": "report.index_document.upserted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Rundown topic page (type topic, /rundown/t/<slug>, the slug as the id): the topic's title, headline and summary of what streamers said about it, from OpenVibe.Live's Rundown. Live's own topic pages are noindex; Report's are the public copy. Sent by the sweep at boot and on a timer; a topic that left the Rundown becomes a tombstone. The sequencer (report_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind, takes. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",++ "allOf": [++ {++ "$ref": "../../search/index-document.v1.json"++ },++ {++ "type": "object",++ "required": [++ "owner",++ "type",++ "deleted"++ ],++ "properties": {++ "owner": {++ "const": "report"++ },++ "type": {++ "enum": [++ "topic"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "deleted": {++ "const": false++ }++ }++ }++ ]++}nnew file mode 100644@@@ -0,0 +1,24 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "design",++ "type": "icon",++ "id": "arrow-down",++ "canonical_url": "https://openvibe.design/icons/arrow-down",++ "title": "Arrow down icon",++ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",++ "body": "arrow-down\narrow down",++ "facets": {++ "kind": "icon"++ }++}nnew file mode 100644@@@ -0,0 +1,5 @@++{++ "type": "component",++ "id": "arrow-down",++ "revision": 3++}nnew file mode 100644@@@ -0,0 +1,5 @@++{++ "type": "icon",++ "id": "arrow-down",++ "revision": 3++}nnew file mode 100644@@@ -0,0 +1,24 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "design",++ "type": "icon",++ "id": "Not A Slug",++ "canonical_url": "https://openvibe.design/icons/arrow-down",++ "title": "Arrow down icon",++ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",++ "body": "arrow-down\narrow down",++ "facets": {++ "kind": "icon"++ }++}nnew file mode 100644@@@ -0,0 +1,24 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "rent",++ "type": "icon",++ "id": "arrow-down",++ "canonical_url": "https://openvibe.design/icons/arrow-down",++ "title": "Arrow down icon",++ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",++ "body": "arrow-down\narrow down",++ "facets": {++ "kind": "icon"++ }++}nnew file mode 100644@@@ -0,0 +1,24 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "design",++ "type": "component",++ "id": "arrow-down",++ "canonical_url": "https://openvibe.design/icons/arrow-down",++ "title": "Arrow down icon",++ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",++ "body": "arrow-down\narrow down",++ "facets": {++ "kind": "icon"++ }++}nnew file mode 100644@@@ -0,0 +1,7 @@++{++ "owner": "design",++ "type": "icon",++ "id": "arrow-down",++ "revision": 2,++ "deleted": true++}nnew file mode 100644@@@ -0,0 +1,24 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "design",++ "type": "icon",++ "id": "arrow-down",++ "canonical_url": "https://openvibe.design/icons/arrow-down",++ "title": "Arrow down icon",++ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",++ "body": "arrow-down\narrow down",++ "facets": {++ "kind": "icon"++ }++}nnew file mode 100644@@@ -0,0 +1,26 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "noindex",++ "reasons": [++ "thin_content"++ ]++ },++ "deleted": false,++ "revision": 1,++ "owner": "design",++ "type": "icon",++ "id": "arrow-down",++ "canonical_url": "https://openvibe.design/icons/arrow-down",++ "title": "Arrow down icon",++ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",++ "body": "arrow-down\narrow down",++ "facets": {++ "kind": "icon"++ }++}nnew file mode 100644@@@ -0,0 +1,24 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "design",++ "type": "theme",++ "id": "abyss",++ "canonical_url": "https://openvibe.design/t/abyss",++ "title": "Abyss theme",++ "summary": "A dark theme for every OpenVibe site.",++ "body": "Abyss\ndark",++ "facets": {++ "mode": "dark"++ }++}nnew file mode 100644@@@ -0,0 +1,25 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "report",++ "type": "topic",++ "id": "taking-a-break",++ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",++ "title": "Taking a break",++ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",++ "body": "Taking a break\nStreamers debate stepping away.",++ "facets": {++ "kind": "life",++ "takes": 4++ }++}nnew file mode 100644@@@ -0,0 +1,5 @@++{++ "type": "episode",++ "id": "taking-a-break",++ "revision": 3++}nnew file mode 100644@@@ -0,0 +1,5 @@++{++ "type": "topic",++ "id": "taking-a-break",++ "revision": 3++}nnew file mode 100644@@@ -0,0 +1,25 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "report",++ "type": "topic",++ "id": "Not A Slug",++ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",++ "title": "Taking a break",++ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",++ "body": "Taking a break\nStreamers debate stepping away.",++ "facets": {++ "kind": "life",++ "takes": 4++ }++}nnew file mode 100644@@@ -0,0 +1,25 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "rent",++ "type": "topic",++ "id": "taking-a-break",++ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",++ "title": "Taking a break",++ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",++ "body": "Taking a break\nStreamers debate stepping away.",++ "facets": {++ "kind": "life",++ "takes": 4++ }++}nnew file mode 100644@@@ -0,0 +1,25 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "report",++ "type": "episode",++ "id": "taking-a-break",++ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",++ "title": "Taking a break",++ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",++ "body": "Taking a break\nStreamers debate stepping away.",++ "facets": {++ "kind": "life",++ "takes": 4++ }++}nnew file mode 100644@@@ -0,0 +1,7 @@++{++ "owner": "report",++ "type": "topic",++ "id": "taking-a-break",++ "revision": 2,++ "deleted": true++}nnew file mode 100644@@@ -0,0 +1,27 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "noindex",++ "reasons": [++ "thin_content"++ ]++ },++ "deleted": false,++ "revision": 1,++ "owner": "report",++ "type": "topic",++ "id": "taking-a-break",++ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",++ "title": "Taking a break",++ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",++ "body": "Taking a break\nStreamers debate stepping away.",++ "facets": {++ "kind": "life",++ "takes": 4++ }++}nnew file mode 100644@@@ -0,0 +1,25 @@++{++ "visibility": "public",++ "authorship": "human",++ "provenance": [],++ "publication_state": "published",++ "published_at": "2026-10-31T12:00:00.000Z",++ "updated_at": "2026-11-02T08:00:00.000Z",++ "indexability": {++ "decision": "index",++ "reasons": []++ },++ "deleted": false,++ "revision": 1,++ "owner": "report",++ "type": "topic",++ "id": "taking-a-break",++ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",++ "title": "Taking a break",++ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",++ "body": "Taking a break\nStreamers debate stepping away.",++ "facets": {++ "kind": "life",++ "takes": 4++ }++}@@@ -83320,6 +83320,160 @@}}},++ "design.index_document.upserted": {++ "version": "1.0.0",++ "owner": "design",++ "status": "active",++ "schema": {++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.upserted.v1.json",++ "title": "DesignIndexDocumentUpsertedPayload",++ "description": "design.index_document.upserted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Design page: an icon (type icon, /icons/<name>, the glyph name as the id: its name, the words it is found by and the formats it downloads in) or a theme (type theme, /t/<slug>: its name, mode and description, from OpenVibe.Network's theme catalog). Sent by the sweep at boot and on a timer; a page that left the catalog becomes a tombstone. The sequencer (design_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind (icon: solid when it has a filled form), mode (theme). Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",++ "allOf": [++ {++ "$ref": "../../search/index-document.v1.json"++ },++ {++ "type": "object",++ "required": [++ "owner",++ "type",++ "deleted"++ ],++ "properties": {++ "owner": {++ "const": "design"++ },++ "type": {++ "enum": [++ "icon",++ "theme"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "deleted": {++ "const": false++ }++ }++ }++ ]++ }++ },++ "design.index_document.deleted": {++ "version": "1.0.0",++ "owner": "design",++ "status": "active",++ "schema": {++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.deleted.v1.json",++ "title": "DesignIndexDocumentDeletedPayload",++ "description": "design.index_document.deleted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for an icon or theme page that left the catalog. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",++ "type": "object",++ "required": [++ "type",++ "id",++ "revision"++ ],++ "additionalProperties": false,++ "properties": {++ "type": {++ "enum": [++ "icon",++ "theme"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "revision": {++ "type": "integer",++ "minimum": 1,++ "maximum": 9007199254740991,++ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."++ }++ }++ }++ },++ "report.index_document.upserted": {++ "version": "1.0.0",++ "owner": "report",++ "status": "active",++ "schema": {++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.upserted.v1.json",++ "title": "ReportIndexDocumentUpsertedPayload",++ "description": "report.index_document.upserted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Rundown topic page (type topic, /rundown/t/<slug>, the slug as the id): the topic's title, headline and summary of what streamers said about it, from OpenVibe.Live's Rundown. Live's own topic pages are noindex; Report's are the public copy. Sent by the sweep at boot and on a timer; a topic that left the Rundown becomes a tombstone. The sequencer (report_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind, takes. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",++ "allOf": [++ {++ "$ref": "../../search/index-document.v1.json"++ },++ {++ "type": "object",++ "required": [++ "owner",++ "type",++ "deleted"++ ],++ "properties": {++ "owner": {++ "const": "report"++ },++ "type": {++ "enum": [++ "topic"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "deleted": {++ "const": false++ }++ }++ }++ ]++ }++ },++ "report.index_document.deleted": {++ "version": "1.0.0",++ "owner": "report",++ "status": "active",++ "schema": {++ "$schema": "https://json-schema.org/draft/2020-12/schema",++ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.deleted.v1.json",++ "title": "ReportIndexDocumentDeletedPayload",++ "description": "report.index_document.deleted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for a Rundown topic page that left the Rundown. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",++ "type": "object",++ "required": [++ "type",++ "id",++ "revision"++ ],++ "additionalProperties": false,++ "properties": {++ "type": {++ "enum": [++ "topic"++ ]++ },++ "id": {++ "type": "string",++ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"++ },++ "revision": {++ "type": "integer",++ "minimum": 1,++ "maximum": 9007199254740991,++ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."++ }++ }++ }++ },"work.application": {"version": "1.0.0","owner": "work",@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Actor API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Actor as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Actor as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.AI API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.AI as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.AI as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Bench API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Bench as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Bench as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Billing API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Billing as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Billing as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Blog API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Blog as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Blog as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Bot API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Bot as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Bot as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Chat API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Chat as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Chat as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Codes API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Codes as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Codes as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Community API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Community as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Community as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Coupons API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Coupons as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Coupons as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Deals API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Deals as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Deals as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Domains API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Domains as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Domains as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Events API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Events as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Events as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Food API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Food as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Food as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Games API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Games as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Games as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Host API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Host as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Host as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Inventory API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Inventory as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Inventory as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Live API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Live as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Live as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.MediaHub API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.MediaHub as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.MediaHub as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Media API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Media as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Media as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Network API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Network as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Network as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.News API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.News as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.News as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenRestream API",-- "version": "0.274.0",-- "description": "Routes of OpenRestream as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenRestream as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Play API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Play as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Play as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Quest API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Quest as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Quest as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Report API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Report as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Report as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Reviews API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Reviews as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Reviews as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Run API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Run as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Run as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Search API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Search as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Search as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Services API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Services as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Services as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Sources API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Sources as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Sources as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Space API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Space as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Space as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Tips API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Tips as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Tips as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Today API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Today as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Today as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Tools API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Tools as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Tools as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Trade API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Trade as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Trade as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.VIP API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.VIP as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.VIP as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Vision API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Vision as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Vision as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Watch API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Watch as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Watch as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Wiki API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Wiki as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Wiki as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Work API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Work as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Work as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -3,8 +3,8 @@"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema","info": {"title": "OpenVibe.Zone API",-- "version": "0.274.0",-- "description": "Routes of OpenVibe.Zone as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",++ "version": "0.275.0",++ "description": "Routes of OpenVibe.Zone as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.","license": {"name": "MIT","identifier": "MIT"@@@ -260538,6 +260538,54 @@ export interface ToursIndexDocumentDeletedPayload {revision: number;}++/** [email protected] (owner: design) */++/**++ * design.index_document.upserted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Design page: an icon (type icon, /icons/<name>, the glyph name as the id: its name, the words it is found by and the formats it downloads in) or a theme (type theme, /t/<slug>: its name, mode and description, from OpenVibe.Network's theme catalog). Sent by the sweep at boot and on a timer; a page that left the catalog becomes a tombstone. The sequencer (design_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind (icon: solid when it has a filled form), mode (theme). Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.++ */++export type DesignIndexDocumentUpsertedPayload = IndexDocument & {++ owner: "design";++ type: "icon" | "theme";++ id?: string;++ deleted: false;++};++++/** [email protected] (owner: design) */++/**++ * design.index_document.deleted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for an icon or theme page that left the catalog. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.++ */++export interface DesignIndexDocumentDeletedPayload {++ type: "icon" | "theme";++ id: string;++ /**++ * Index revision of the tombstone; wins over any document at the same or an older revision.++ */++ revision: number;++}++++/** [email protected] (owner: report) */++/**++ * report.index_document.upserted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Rundown topic page (type topic, /rundown/t/<slug>, the slug as the id): the topic's title, headline and summary of what streamers said about it, from OpenVibe.Live's Rundown. Live's own topic pages are noindex; Report's are the public copy. Sent by the sweep at boot and on a timer; a topic that left the Rundown becomes a tombstone. The sequencer (report_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind, takes. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.++ */++export type ReportIndexDocumentUpsertedPayload = IndexDocument & {++ owner: "report";++ type: "topic";++ id?: string;++ deleted: false;++};++++/** [email protected] (owner: report) */++/**++ * report.index_document.deleted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for a Rundown topic page that left the Rundown. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.++ */++export interface ReportIndexDocumentDeletedPayload {++ type: "topic";++ id: string;++ /**++ * Index revision of the tombstone; wins over any document at the same or an older revision.++ */++ revision: number;++}++/** [email protected] (owner: work) *//*** 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`.@@@ -16,7 +16,10 @@"publicSite": "service"},"capabilities": [],-- "eventsProduced": [],++ "eventsProduced": [++ "design.index_document.deleted",++ "design.index_document.upserted"++ ],"eventsConsumed": [],"namespacesOwned": ["design.*"@@@ -18,7 +18,10 @@"capabilities": ["report.ai_usage.read"],-- "eventsProduced": [],++ "eventsProduced": [++ "report.index_document.deleted",++ "report.index_document.upserted"++ ],"eventsConsumed": ["ai.call.recorded"],@@@ -1,6 +1,6 @@{"name": "openvibe-contracts",-- "version": "0.274.0",++ "version": "0.275.0","description": "Machine-readable contracts for the OpenVibe network: schemas, manifests, ids, error envelope, capability checks.","main": "index.js","types": "generated/typescript/index.d.ts",
@@ -1,5 +1,17 @@
@@ -1,5 +1,17 @@
# Changelog
# Changelog
+## 0.275.0 — 2026-11-02
+
+- **`report.index_document.upserted` / `.deleted` v1** (active, first-party; plan T9): OpenVibe.Report's Rundown
+ topic pages (type `topic`, `/rundown/t/<slug>`) as OpenVibe.Search documents: the title, headline and summary of
+ what streamers said. Live's own topic pages are noindex; Report's are the public copy. 60 topics were on no network
+ search.
+- **`design.index_document.upserted` / `.deleted` v1** (active, first-party): OpenVibe.Design's icon pages (type
+ `icon`, `/icons/<name>`) and theme pages (type `theme`, `/t/<slug>`). 280 icons and 50 themes were on no network
+ search.
+- Both are sent through `openvibe-publishing/search-feed`; the Report and Design manifests list them in
+ `eventsProduced`; the catalog has their entries and fixtures.
+
## 0.274.0 — 2026-11-02
## 0.274.0 — 2026-11-02
- **`tours.index_document.upserted` / `.deleted` v1** (active, first-party; plan T9): OpenVibe.Tours' pages as
- **`tours.index_document.upserted` / `.deleted` v1** (active, first-party; plan T9): OpenVibe.Tours' pages as
@@ -7351,6 +7351,42 @@
@@ -7351,6 +7351,42 @@
"compatibility": "backward",
"compatibility": "backward",
"status": "active"
"status": "active"
},
},
+ {
+ "id": "design.index_document.upserted",
+ "version": "1.0.0",
+ "owner": "design",
+ "schema": "events/payloads/design.index_document.upserted.v1.json",
+ "visibility": "first-party",
+ "compatibility": "backward",
+ "status": "active"
+ },
+ {
+ "id": "design.index_document.deleted",
+ "version": "1.0.0",
+ "owner": "design",
+ "schema": "events/payloads/design.index_document.deleted.v1.json",
+ "visibility": "first-party",
+ "compatibility": "backward",
+ "status": "active"
+ },
+ {
+ "id": "report.index_document.upserted",
+ "version": "1.0.0",
+ "owner": "report",
+ "schema": "events/payloads/report.index_document.upserted.v1.json",
+ "visibility": "first-party",
+ "compatibility": "backward",
+ "status": "active"
+ },
+ {
+ "id": "report.index_document.deleted",
+ "version": "1.0.0",
+ "owner": "report",
+ "schema": "events/payloads/report.index_document.deleted.v1.json",
+ "visibility": "first-party",
+ "compatibility": "backward",
+ "status": "active"
+ },
{
{
"id": "work.application",
"id": "work.application",
"version": "1.0.0",
"version": "1.0.0",
new file mode 100644
new file mode 100644
@@ -0,0 +1,31 @@
@@ -0,0 +1,31 @@
+{
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.deleted.v1.json",
+ "title": "DesignIndexDocumentDeletedPayload",
+ "description": "design.index_document.deleted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for an icon or theme page that left the catalog. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",
+ "type": "object",
+ "required": [
+ "type",
+ "id",
+ "revision"
+ ],
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "enum": [
+ "icon",
+ "theme"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "revision": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 9007199254740991,
+ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."
+ }
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,37 @@
@@ -0,0 +1,37 @@
+{
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.upserted.v1.json",
+ "title": "DesignIndexDocumentUpsertedPayload",
+ "description": "design.index_document.upserted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Design page: an icon (type icon, /icons/<name>, the glyph name as the id: its name, the words it is found by and the formats it downloads in) or a theme (type theme, /t/<slug>: its name, mode and description, from OpenVibe.Network's theme catalog). Sent by the sweep at boot and on a timer; a page that left the catalog becomes a tombstone. The sequencer (design_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind (icon: solid when it has a filled form), mode (theme). Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",
+ "allOf": [
+ {
+ "$ref": "../../search/index-document.v1.json"
+ },
+ {
+ "type": "object",
+ "required": [
+ "owner",
+ "type",
+ "deleted"
+ ],
+ "properties": {
+ "owner": {
+ "const": "design"
+ },
+ "type": {
+ "enum": [
+ "icon",
+ "theme"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "deleted": {
+ "const": false
+ }
+ }
+ }
+ ]
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,30 @@
@@ -0,0 +1,30 @@
+{
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.deleted.v1.json",
+ "title": "ReportIndexDocumentDeletedPayload",
+ "description": "report.index_document.deleted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for a Rundown topic page that left the Rundown. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",
+ "type": "object",
+ "required": [
+ "type",
+ "id",
+ "revision"
+ ],
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "enum": [
+ "topic"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "revision": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 9007199254740991,
+ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."
+ }
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,36 @@
@@ -0,0 +1,36 @@
+{
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.upserted.v1.json",
+ "title": "ReportIndexDocumentUpsertedPayload",
+ "description": "report.index_document.upserted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Rundown topic page (type topic, /rundown/t/<slug>, the slug as the id): the topic's title, headline and summary of what streamers said about it, from OpenVibe.Live's Rundown. Live's own topic pages are noindex; Report's are the public copy. Sent by the sweep at boot and on a timer; a topic that left the Rundown becomes a tombstone. The sequencer (report_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind, takes. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",
+ "allOf": [
+ {
+ "$ref": "../../search/index-document.v1.json"
+ },
+ {
+ "type": "object",
+ "required": [
+ "owner",
+ "type",
+ "deleted"
+ ],
+ "properties": {
+ "owner": {
+ "const": "report"
+ },
+ "type": {
+ "enum": [
+ "topic"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "deleted": {
+ "const": false
+ }
+ }
+ }
+ ]
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "design",
+ "type": "icon",
+ "id": "arrow-down",
+ "canonical_url": "https://openvibe.design/icons/arrow-down",
+ "title": "Arrow down icon",
+ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",
+ "body": "arrow-down\narrow down",
+ "facets": {
+ "kind": "icon"
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
+{
+ "type": "component",
+ "id": "arrow-down",
+ "revision": 3
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
+{
+ "type": "icon",
+ "id": "arrow-down",
+ "revision": 3
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "design",
+ "type": "icon",
+ "id": "Not A Slug",
+ "canonical_url": "https://openvibe.design/icons/arrow-down",
+ "title": "Arrow down icon",
+ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",
+ "body": "arrow-down\narrow down",
+ "facets": {
+ "kind": "icon"
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "rent",
+ "type": "icon",
+ "id": "arrow-down",
+ "canonical_url": "https://openvibe.design/icons/arrow-down",
+ "title": "Arrow down icon",
+ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",
+ "body": "arrow-down\narrow down",
+ "facets": {
+ "kind": "icon"
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "design",
+ "type": "component",
+ "id": "arrow-down",
+ "canonical_url": "https://openvibe.design/icons/arrow-down",
+ "title": "Arrow down icon",
+ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",
+ "body": "arrow-down\narrow down",
+ "facets": {
+ "kind": "icon"
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,7 @@
@@ -0,0 +1,7 @@
+{
+ "owner": "design",
+ "type": "icon",
+ "id": "arrow-down",
+ "revision": 2,
+ "deleted": true
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "design",
+ "type": "icon",
+ "id": "arrow-down",
+ "canonical_url": "https://openvibe.design/icons/arrow-down",
+ "title": "Arrow down icon",
+ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",
+ "body": "arrow-down\narrow down",
+ "facets": {
+ "kind": "icon"
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,26 @@
@@ -0,0 +1,26 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "noindex",
+ "reasons": [
+ "thin_content"
+ ]
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "design",
+ "type": "icon",
+ "id": "arrow-down",
+ "canonical_url": "https://openvibe.design/icons/arrow-down",
+ "title": "Arrow down icon",
+ "summary": "The arrow-down icon of the OpenVibe icon set: SVG, PNG, a web font, React and Android.",
+ "body": "arrow-down\narrow down",
+ "facets": {
+ "kind": "icon"
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "design",
+ "type": "theme",
+ "id": "abyss",
+ "canonical_url": "https://openvibe.design/t/abyss",
+ "title": "Abyss theme",
+ "summary": "A dark theme for every OpenVibe site.",
+ "body": "Abyss\ndark",
+ "facets": {
+ "mode": "dark"
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,25 @@
@@ -0,0 +1,25 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "report",
+ "type": "topic",
+ "id": "taking-a-break",
+ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",
+ "title": "Taking a break",
+ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",
+ "body": "Taking a break\nStreamers debate stepping away.",
+ "facets": {
+ "kind": "life",
+ "takes": 4
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
+{
+ "type": "episode",
+ "id": "taking-a-break",
+ "revision": 3
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
+{
+ "type": "topic",
+ "id": "taking-a-break",
+ "revision": 3
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,25 @@
@@ -0,0 +1,25 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "report",
+ "type": "topic",
+ "id": "Not A Slug",
+ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",
+ "title": "Taking a break",
+ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",
+ "body": "Taking a break\nStreamers debate stepping away.",
+ "facets": {
+ "kind": "life",
+ "takes": 4
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,25 @@
@@ -0,0 +1,25 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "rent",
+ "type": "topic",
+ "id": "taking-a-break",
+ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",
+ "title": "Taking a break",
+ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",
+ "body": "Taking a break\nStreamers debate stepping away.",
+ "facets": {
+ "kind": "life",
+ "takes": 4
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,25 @@
@@ -0,0 +1,25 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "report",
+ "type": "episode",
+ "id": "taking-a-break",
+ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",
+ "title": "Taking a break",
+ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",
+ "body": "Taking a break\nStreamers debate stepping away.",
+ "facets": {
+ "kind": "life",
+ "takes": 4
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,7 @@
@@ -0,0 +1,7 @@
+{
+ "owner": "report",
+ "type": "topic",
+ "id": "taking-a-break",
+ "revision": 2,
+ "deleted": true
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,27 @@
@@ -0,0 +1,27 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "noindex",
+ "reasons": [
+ "thin_content"
+ ]
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "report",
+ "type": "topic",
+ "id": "taking-a-break",
+ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",
+ "title": "Taking a break",
+ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",
+ "body": "Taking a break\nStreamers debate stepping away.",
+ "facets": {
+ "kind": "life",
+ "takes": 4
+ }
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,25 @@
@@ -0,0 +1,25 @@
+{
+ "visibility": "public",
+ "authorship": "human",
+ "provenance": [],
+ "publication_state": "published",
+ "published_at": "2026-10-31T12:00:00.000Z",
+ "updated_at": "2026-11-02T08:00:00.000Z",
+ "indexability": {
+ "decision": "index",
+ "reasons": []
+ },
+ "deleted": false,
+ "revision": 1,
+ "owner": "report",
+ "type": "topic",
+ "id": "taking-a-break",
+ "canonical_url": "https://openvibe.report/rundown/t/taking-a-break",
+ "title": "Taking a break",
+ "summary": "Streamers debate stepping away: fresh air, robot faces and emotional breaks.",
+ "body": "Taking a break\nStreamers debate stepping away.",
+ "facets": {
+ "kind": "life",
+ "takes": 4
+ }
+}
@@ -83320,6 +83320,160 @@
@@ -83320,6 +83320,160 @@
}
}
}
}
},
},
+ "design.index_document.upserted": {
+ "version": "1.0.0",
+ "owner": "design",
+ "status": "active",
+ "schema": {
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.upserted.v1.json",
+ "title": "DesignIndexDocumentUpsertedPayload",
+ "description": "design.index_document.upserted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Design page: an icon (type icon, /icons/<name>, the glyph name as the id: its name, the words it is found by and the formats it downloads in) or a theme (type theme, /t/<slug>: its name, mode and description, from OpenVibe.Network's theme catalog). Sent by the sweep at boot and on a timer; a page that left the catalog becomes a tombstone. The sequencer (design_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind (icon: solid when it has a filled form), mode (theme). Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",
+ "allOf": [
+ {
+ "$ref": "../../search/index-document.v1.json"
+ },
+ {
+ "type": "object",
+ "required": [
+ "owner",
+ "type",
+ "deleted"
+ ],
+ "properties": {
+ "owner": {
+ "const": "design"
+ },
+ "type": {
+ "enum": [
+ "icon",
+ "theme"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "deleted": {
+ "const": false
+ }
+ }
+ }
+ ]
+ }
+ },
+ "design.index_document.deleted": {
+ "version": "1.0.0",
+ "owner": "design",
+ "status": "active",
+ "schema": {
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/design.index_document.deleted.v1.json",
+ "title": "DesignIndexDocumentDeletedPayload",
+ "description": "design.index_document.deleted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for an icon or theme page that left the catalog. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.",
+ "type": "object",
+ "required": [
+ "type",
+ "id",
+ "revision"
+ ],
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "enum": [
+ "icon",
+ "theme"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "revision": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 9007199254740991,
+ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."
+ }
+ }
+ }
+ },
+ "report.index_document.upserted": {
+ "version": "1.0.0",
+ "owner": "report",
+ "status": "active",
+ "schema": {
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.upserted.v1.json",
+ "title": "ReportIndexDocumentUpsertedPayload",
+ "description": "report.index_document.upserted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Rundown topic page (type topic, /rundown/t/<slug>, the slug as the id): the topic's title, headline and summary of what streamers said about it, from OpenVibe.Live's Rundown. Live's own topic pages are noindex; Report's are the public copy. Sent by the sweep at boot and on a timer; a topic that left the Rundown becomes a tombstone. The sequencer (report_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind, takes. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",
+ "allOf": [
+ {
+ "$ref": "../../search/index-document.v1.json"
+ },
+ {
+ "type": "object",
+ "required": [
+ "owner",
+ "type",
+ "deleted"
+ ],
+ "properties": {
+ "owner": {
+ "const": "report"
+ },
+ "type": {
+ "enum": [
+ "topic"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "deleted": {
+ "const": false
+ }
+ }
+ }
+ ]
+ }
+ },
+ "report.index_document.deleted": {
+ "version": "1.0.0",
+ "owner": "report",
+ "status": "active",
+ "schema": {
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://openvibe.network/contracts/events/payloads/report.index_document.deleted.v1.json",
+ "title": "ReportIndexDocumentDeletedPayload",
+ "description": "report.index_document.deleted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for a Rundown topic page that left the Rundown. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.",
+ "type": "object",
+ "required": [
+ "type",
+ "id",
+ "revision"
+ ],
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "enum": [
+ "topic"
+ ]
+ },
+ "id": {
+ "type": "string",
+ "pattern": "^[a-z0-9][a-z0-9-]{0,89}$"
+ },
+ "revision": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 9007199254740991,
+ "description": "Index revision of the tombstone; wins over any document at the same or an older revision."
+ }
+ }
+ }
+ },
"work.application": {
"work.application": {
"version": "1.0.0",
"version": "1.0.0",
"owner": "work",
"owner": "work",
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Actor API",
"title": "OpenVibe.Actor API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Actor as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Actor as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.AI API",
"title": "OpenVibe.AI API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.AI as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.AI as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Bench API",
"title": "OpenVibe.Bench API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Bench as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Bench as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Billing API",
"title": "OpenVibe.Billing API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Billing as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Billing as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Blog API",
"title": "OpenVibe.Blog API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Blog as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Blog as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Bot API",
"title": "OpenVibe.Bot API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Bot as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Bot as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Chat API",
"title": "OpenVibe.Chat API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Chat as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Chat as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Codes API",
"title": "OpenVibe.Codes API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Codes as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Codes as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Community API",
"title": "OpenVibe.Community API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Community as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Community as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Coupons API",
"title": "OpenVibe.Coupons API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Coupons as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Coupons as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Deals API",
"title": "OpenVibe.Deals API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Deals as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Deals as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Domains API",
"title": "OpenVibe.Domains API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Domains as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Domains as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Events API",
"title": "OpenVibe.Events API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Events as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Events as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Food API",
"title": "OpenVibe.Food API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Food as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Food as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Games API",
"title": "OpenVibe.Games API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Games as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Games as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Host API",
"title": "OpenVibe.Host API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Host as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Host as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Inventory API",
"title": "OpenVibe.Inventory API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Inventory as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Inventory as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Live API",
"title": "OpenVibe.Live API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Live as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Live as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.MediaHub API",
"title": "OpenVibe.MediaHub API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.MediaHub as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.MediaHub as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Media API",
"title": "OpenVibe.Media API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Media as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Media as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Network API",
"title": "OpenVibe.Network API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Network as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Network as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.News API",
"title": "OpenVibe.News API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.News as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.News as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenRestream API",
"title": "OpenRestream API",
- "version": "0.274.0",
- "description": "Routes of OpenRestream as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenRestream as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Play API",
"title": "OpenVibe.Play API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Play as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Play as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Quest API",
"title": "OpenVibe.Quest API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Quest as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Quest as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Report API",
"title": "OpenVibe.Report API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Report as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Report as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Reviews API",
"title": "OpenVibe.Reviews API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Reviews as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Reviews as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Run API",
"title": "OpenVibe.Run API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Run as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Run as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Search API",
"title": "OpenVibe.Search API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Search as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Search as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Services API",
"title": "OpenVibe.Services API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Services as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Services as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Sources API",
"title": "OpenVibe.Sources API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Sources as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Sources as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Space API",
"title": "OpenVibe.Space API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Space as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Space as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Tips API",
"title": "OpenVibe.Tips API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Tips as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Tips as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Today API",
"title": "OpenVibe.Today API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Today as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Today as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Tools API",
"title": "OpenVibe.Tools API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Tools as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Tools as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Trade API",
"title": "OpenVibe.Trade API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Trade as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Trade as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.VIP API",
"title": "OpenVibe.VIP API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.VIP as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.VIP as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Vision API",
"title": "OpenVibe.Vision API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Vision as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Vision as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Watch API",
"title": "OpenVibe.Watch API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Watch as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Watch as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Wiki API",
"title": "OpenVibe.Wiki API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Wiki as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Wiki as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Work API",
"title": "OpenVibe.Work API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Work as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Work as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -3,8 +3,8 @@
@@ -3,8 +3,8 @@
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"info": {
"info": {
"title": "OpenVibe.Zone API",
"title": "OpenVibe.Zone API",
- "version": "0.274.0",
- "description": "Routes of OpenVibe.Zone as the OpenVibe contracts describe them (openvibe-contracts 0.274.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
+ "version": "0.275.0",
+ "description": "Routes of OpenVibe.Zone as the OpenVibe contracts describe them (openvibe-contracts 0.275.0): each operation lists the capabilities it performs; a token for the service's audience must carry one of them unless the route is open. Generated by openvibe-contracts lib/openapi.js; do not edit.",
"license": {
"license": {
"name": "MIT",
"name": "MIT",
"identifier": "MIT"
"identifier": "MIT"
@@ -260538,6 +260538,54 @@ export interface ToursIndexDocumentDeletedPayload {
@@ -260538,6 +260538,54 @@ export interface ToursIndexDocumentDeletedPayload {
revision: number;
revision: number;
}
}
+/** [email protected] (owner: design) */
+/**
+ * design.index_document.upserted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Design page: an icon (type icon, /icons/<name>, the glyph name as the id: its name, the words it is found by and the formats it downloads in) or a theme (type theme, /t/<slug>: its name, mode and description, from OpenVibe.Network's theme catalog). Sent by the sweep at boot and on a timer; a page that left the catalog becomes a tombstone. The sequencer (design_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind (icon: solid when it has a filled form), mode (theme). Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.
+ */
+export type DesignIndexDocumentUpsertedPayload = IndexDocument & {
+ owner: "design";
+ type: "icon" | "theme";
+ id?: string;
+ deleted: false;
+};
+
+/** [email protected] (owner: design) */
+/**
+ * design.index_document.deleted v1 (OpenVibe.Design server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for an icon or theme page that left the catalog. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:design.
+ */
+export interface DesignIndexDocumentDeletedPayload {
+ type: "icon" | "theme";
+ id: string;
+ /**
+ * Index revision of the tombstone; wins over any document at the same or an older revision.
+ */
+ revision: number;
+}
+
+/** [email protected] (owner: report) */
+/**
+ * report.index_document.upserted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). The OpenVibe.Search document of a Rundown topic page (type topic, /rundown/t/<slug>, the slug as the id): the topic's title, headline and summary of what streamers said about it, from OpenVibe.Live's Rundown. Live's own topic pages are noindex; Report's are the public copy. Sent by the sweep at boot and on a timer; a topic that left the Rundown becomes a tombstone. The sequencer (report_index_revisions) gives an unchanged document its old revision and nothing is sent. Always visibility public and publication_state published. Facets: kind, takes. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.
+ */
+export type ReportIndexDocumentUpsertedPayload = IndexDocument & {
+ owner: "report";
+ type: "topic";
+ id?: string;
+ deleted: false;
+};
+
+/** [email protected] (owner: report) */
+/**
+ * report.index_document.deleted v1 (OpenVibe.Report server/search-index.js, via openvibe-publishing/search-feed). A Search tombstone for a Rundown topic page that left the Rundown. Only sent for a page Search was sent before. Consumed by OpenVibe.Search ('*.index_document.*'). Envelope: subject { type, id, revision }, visibility internal, actor service:report.
+ */
+export interface ReportIndexDocumentDeletedPayload {
+ type: "topic";
+ id: string;
+ /**
+ * Index revision of the tombstone; wins over any document at the same or an older revision.
+ */
+ revision: number;
+}
+
/** [email protected] (owner: work) */
/** [email protected] (owner: work) */
/**
/**
* 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`.
* 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`.
@@ -16,7 +16,10 @@
@@ -16,7 +16,10 @@
"publicSite": "service"
"publicSite": "service"
},
},
"capabilities": [],
"capabilities": [],
- "eventsProduced": [],
+ "eventsProduced": [
+ "design.index_document.deleted",
+ "design.index_document.upserted"
+ ],
"eventsConsumed": [],
"eventsConsumed": [],
"namespacesOwned": [
"namespacesOwned": [
"design.*"
"design.*"
@@ -18,7 +18,10 @@
@@ -18,7 +18,10 @@
"capabilities": [
"capabilities": [
"report.ai_usage.read"
"report.ai_usage.read"
],
],
- "eventsProduced": [],
+ "eventsProduced": [
+ "report.index_document.deleted",
+ "report.index_document.upserted"
+ ],
"eventsConsumed": [
"eventsConsumed": [
"ai.call.recorded"
"ai.call.recorded"
],
],
@@ -1,6 +1,6 @@
@@ -1,6 +1,6 @@
{
{
"name": "openvibe-contracts",
"name": "openvibe-contracts",
- "version": "0.274.0",
+ "version": "0.275.0",
"description": "Machine-readable contracts for the OpenVibe network: schemas, manifests, ids, error envelope, capability checks.",
"description": "Machine-readable contracts for the OpenVibe network: schemas, manifests, ids, error envelope, capability checks.",
"main": "index.js",
"main": "index.js",
"types": "generated/typescript/index.d.ts",
"types": "generated/typescript/index.d.ts",