---
title: "actor.agent-list@1 · OpenVibe.Services"
canonical: "https://openvibe.services/docs/contracts/actor.agent-list"
updated: null
---

# actor.agent-list@1 · OpenVibe.Services

HTML: [actor.agent-list@1 · OpenVibe.Services](https://openvibe.services/docs/contracts/actor.agent-list)

# ActorAgentList `actor.agent-list@1`

Generated at 2026-11-13 06:25:48 UTC from [`openvibe-contracts v0.419.0`](https://github.com/OpenVibers/OpenVibe.Contracts/tree/v0.419.0) and [`openvibe-sdk v0.161.0`](https://github.com/OpenVibers/OpenVibe.SDK/tree/v0.161.0).

- Version: 1.0.0
- Owner: actor
- Visibility: public
- Status: active
- Compatibility: backward
- Decision: [ADR-044](/docs/adr/ADR-044)
- Schema: [`https://openvibe.network/contracts/actor/agent-list.v1.json`](/docs/contracts/actor.agent-list.json)

actor.agent-list@1: GET /api/v1/agents for a signed-in person (capability actor.agent.manage): their own agent contacts, Vibe first. Vibe, the person's first agent, is created on this first read and cannot be deleted. Another person's agents are never in this list. The public agent-system catalog stays at GET /api/v1/agent-systems (actor.agent-list-result@2).

## Fields

| Field | Type | Required | Description | Constraints |
| --- | --- | --- | --- | --- |
| `agents` | [actor.agent](/docs/contracts/actor.agent) | yes |  | - `maxItems 32` |

## Examples

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

 Valid: mine

~~~~
{
  "agents": [
    {
      "id": "agt_01M4C49CW34NGX7TR2TNRVFWNW",
      "owner": "user:usr_01J8Z3Q4R5S6T7V8W9X0Y1Z2A1",
      "name": "Vibe",
      "face": "preset:vibe",
      "voice": null,
      "model": {
        "engine": "runtime",
        "model": "smart"
      },
      "computer": null,
      "apps": [],
      "memory": null,
      "level": "ask",
      "created_at": "2026-11-07T09:30:00.000Z"
    }
  ]
}
~~~~

Rejected: unknown-engine

~~~~
{
  "agents": [
    {
      "id": "agt_01M4C49CW34NGX7TR2TNRVFWNW",
      "owner": "user:usr_01J8Z3Q4R5S6T7V8W9X0Y1Z2A1",
      "name": "Vibe",
      "face": "preset:vibe",
      "voice": null,
      "model": {
        "engine": "toaster",
        "model": "smart"
      },
      "computer": null,
      "apps": [],
      "memory": null,
      "level": "ask",
      "created_at": "2026-11-07T09:30:00.000Z"
    }
  ]
}
~~~~

## Validate

~~~~
const contracts = require('openvibe-contracts');
contracts.validate('actor.agent-list@1', value);   // { valid, errors: [{ path, message }] }
~~~~
