BotDeviceConnectResult bot.device-connect-result@1

Generated at from openvibe-contracts v0.97.0 and openvibe-sdk v0.26.0.

Version
1.0.0
Owner
bot
Visibility
first-party
Status
active
Compatibility
backward
Schema
https://openvibe.network/contracts/bot/device-connect-result.v1.json

bot.device-connect-result@1: answers of OpenVibe.Bot's device credential routes, which Bot gates with bot.robot.manage (bot.device.connect is reserved, not enforced). POST /api/v1/devices/:id/rotate → { device, credential, publish_key } (both secrets shown once); POST …/devices/:id/revoke → { device } (its socket closes at once).

Fields

This schema has no named fields.

Examples

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

Valid: revoked
{
  "device": {
    "id": "dev_01J8Z4N0A1B2C3D4E5F6G7H8J9",
    "robot_ids": [
      "rob_01J8Z4M2Q0R7T9YV3K6N8P1W2X"
    ],
    "name": "rover-pi",
    "kind": "agent",
    "agent_version": "0.1.0",
    "drivers": [
      "adeept"
    ],
    "capabilities": {},
    "last_seen": "2026-09-29T19:20:00.000Z",
    "revoked_at": "2026-09-29T19:20:00.000Z",
    "created_at": "2026-09-29T19:20:00.000Z",
    "updated_at": "2026-09-29T19:20:00.000Z"
  }
}
Valid: rotated
{
  "device": {
    "id": "dev_01J8Z4N0A1B2C3D4E5F6G7H8J9",
    "robot_ids": [
      "rob_01J8Z4M2Q0R7T9YV3K6N8P1W2X"
    ],
    "name": "rover-pi",
    "kind": "agent",
    "agent_version": "0.1.0",
    "drivers": [
      "adeept"
    ],
    "capabilities": {},
    "last_seen": "2026-09-29T19:20:00.000Z",
    "revoked_at": null,
    "created_at": "2026-09-29T19:20:00.000Z",
    "updated_at": "2026-09-29T19:20:00.000Z"
  },
  "credential": "devc_secret",
  "publish_key": "pk_secret"
}
Rejected: rotated-without-key
{
  "device": {
    "id": "dev_01J8Z4N0A1B2C3D4E5F6G7H8J9",
    "robot_ids": [
      "rob_01J8Z4M2Q0R7T9YV3K6N8P1W2X"
    ],
    "name": "rover-pi",
    "kind": "agent",
    "agent_version": "0.1.0",
    "drivers": [
      "adeept"
    ],
    "capabilities": {},
    "last_seen": "2026-09-29T19:20:00.000Z",
    "revoked_at": null,
    "created_at": "2026-09-29T19:20:00.000Z",
    "updated_at": "2026-09-29T19:20:00.000Z"
  },
  "credential": "devc_secret"
}

Validate

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