CodesReleaseReadResult codes.release-read-result@1

Generated at from openvibe-contracts v0.53.0 and openvibe-sdk v0.11.0.

Version
1.0.0
Owner
codes
Visibility
first-party
Status
active
Compatibility
backward
Schema
https://openvibe.network/contracts/codes/release-read-result.v1.json

codes.release-read-result@1: answers of codes.release.read on OpenVibe.Codes (public; no token needed, but a token that is presented must hold the capability; never drafts). GET /api/v1/apps/:app/releases → { app_id, trust, releases } (published, deprecated and revoked releases, newest first); GET /api/v1/apps/:app/trust → { app_id, tier, note, set_by, set_at, note_on_authority } (metadata only: grants in OpenVibe.Network are the authority); GET /api/v1/releases/:id → { release, manifest } (the manifest as published: codes.app-manifest@1 for an app, mods.mod-manifest@1 for a mod). An id that is not an app or a release is 404.

Fields

This schema has no named fields.

Examples

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

Valid: app-releases
{
  "app_id": "app_01JAB2C3D4E5F6G7H8J9K0MNPR",
  "trust": {
    "tier": "unreviewed",
    "note": "",
    "set_by": null,
    "set_at": null
  },
  "releases": [
    {
      "id": "rel_01JAB2C3D4E5F6G7H8J9K0MNPQ",
      "app_id": "app_01JAB2C3D4E5F6G7H8J9K0MNPR",
      "project_id": "prj_01JAB2C3D4E5F6G7H8J9K0MNPS",
      "environment": "production",
      "kind": "app",
      "subject_id": null,
      "name": "Stream Deck Bridge",
      "version": "1.4.0",
      "status": "published",
      "manifest_id": "man_01JAB2C3D4E5F6G7H8J9K0MNPT",
      "compatibility": {
        "openvibe-contracts": ">=0.40.0"
      },
      "notes": "Scene switching over the chat socket.",
      "created_at": "2026-09-24T10:00:00.000Z",
      "created_by": "app:app_01JAB2C3D4E5F6G7H8J9K0MNPR",
      "published_at": "2026-09-24T10:05:00.000Z",
      "deprecated_at": null,
      "deprecation_reason": null,
      "replacement": null,
      "revoked_at": null,
      "revocation_reason": null,
      "trust": {
        "tier": "unreviewed",
        "note": "",
        "set_by": null,
        "set_at": null
      }
    }
  ]
}
Valid: release-with-manifest
{
  "release": {
    "id": "rel_01JAB2C3D4E5F6G7H8J9K0MNPQ",
    "app_id": "app_01JAB2C3D4E5F6G7H8J9K0MNPR",
    "project_id": "prj_01JAB2C3D4E5F6G7H8J9K0MNPS",
    "environment": "production",
    "kind": "app",
    "subject_id": null,
    "name": "Stream Deck Bridge",
    "version": "1.4.0",
    "status": "published",
    "manifest_id": "man_01JAB2C3D4E5F6G7H8J9K0MNPT",
    "compatibility": {
      "openvibe-contracts": ">=0.40.0"
    },
    "notes": "Scene switching over the chat socket.",
    "created_at": "2026-09-24T10:00:00.000Z",
    "created_by": "app:app_01JAB2C3D4E5F6G7H8J9K0MNPR",
    "published_at": "2026-09-24T10:05:00.000Z",
    "deprecated_at": null,
    "deprecation_reason": null,
    "replacement": null,
    "revoked_at": null,
    "revocation_reason": null,
    "trust": {
      "tier": "unreviewed",
      "note": "",
      "set_by": null,
      "set_at": null
    }
  },
  "manifest": {
    "id": "app_01JABCDEFGHJKMNPQRSTVWXYZ0",
    "name": "My app",
    "version": "0.1.0",
    "publisher": {
      "type": "app",
      "id": "app_01JABCDEFGHJKMNPQRSTVWXYZ0"
    },
    "project_id": "prj_01JABCDEFGHJKMNPQRSTVWXYZ0",
    "environment": "sandbox",
    "capabilities": [],
    "compatibility": {
      "contracts": "^0.26.0",
      "sdk": "^0.2.2"
    }
  }
}
Valid: trust
{
  "app_id": "app_01JAB2C3D4E5F6G7H8J9K0MNPR",
  "tier": "reviewed",
  "note": "checked 1.4.0",
  "set_by": "usr_01JAB2C3D4E5F6G7H8J9K0MNPQ",
  "set_at": "2026-09-25T10:00:00.000Z",
  "note_on_authority": "metadata only; grants in OpenVibe.Network are the authority"
}
Rejected: bad-app-id
{
  "app_id": "not-an-app",
  "trust": {
    "tier": "unreviewed"
  },
  "releases": []
}
Rejected: manifest-text
{
  "release": {
    "id": "rel_01JAB2C3D4E5F6G7H8J9K0MNPQ",
    "app_id": "app_01JAB2C3D4E5F6G7H8J9K0MNPR",
    "project_id": "prj_01JAB2C3D4E5F6G7H8J9K0MNPS",
    "environment": "production",
    "kind": "app",
    "subject_id": null,
    "name": "Stream Deck Bridge",
    "version": "1.4.0",
    "status": "published",
    "manifest_id": "man_01JAB2C3D4E5F6G7H8J9K0MNPT",
    "compatibility": {
      "openvibe-contracts": ">=0.40.0"
    },
    "notes": "Scene switching over the chat socket.",
    "created_at": "2026-09-24T10:00:00.000Z",
    "created_by": "app:app_01JAB2C3D4E5F6G7H8J9K0MNPR",
    "published_at": "2026-09-24T10:05:00.000Z",
    "deprecated_at": null,
    "deprecation_reason": null,
    "replacement": null,
    "revoked_at": null,
    "revocation_reason": null,
    "trust": {
      "tier": "unreviewed",
      "note": "",
      "set_by": null,
      "set_at": null
    }
  },
  "manifest": "not a manifest"
}

Validate

const contracts = require('openvibe-contracts');
contracts.validate('codes.release-read-result@1', value);   // { valid, errors: [{ path, message }] }