MediaObjectList media.object-list@1

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

Version
1.0.0
Owner
media
Visibility
public
Status
active
Compatibility
backward
Schema
https://openvibe.network/contracts/media/object-list.v1.json

media.object-list@1: a page of GET /api/v2/:app/objects (media.object.list), newest first: the objects the caller may list in the tenant (a Network token sees only the namespaces its grant covers; ?namespace= narrows to one namespace and those below it), without their locations, and the cursor of the next page (null on the last).

Fields

FieldTypeRequiredDescriptionConstraints
objectsmedia.objectyes
next_cursorstring | nullyes
limitintegeryes
  • minimum 1
  • maximum 200

Examples

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

Valid: last-page
{
  "objects": [],
  "next_cursor": null,
  "limit": 50
}
Valid: page
{
  "objects": [
    {
      "id": "med_01K5WZX7S7Q4D2B8N3M6V1C9TZ",
      "app_id": "community",
      "namespace": "community.avatars",
      "kind": "file",
      "visibility": "unlisted",
      "lifecycle_status": "ready",
      "size_bytes": 9,
      "created_at": "2026-09-26 08:00:00"
    }
  ],
  "next_cursor": "med_01K5WZX7S7Q4D2B8N3M6V1C9TZ",
  "limit": 1
}
Rejected: no-cursor
{
  "objects": [],
  "limit": 50
}

Validate

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