WikiPageWriteRequest wiki.page-write-request@1

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

Version
1.0.0
Owner
wiki
Visibility
first-party
Status
active
Compatibility
backward
Schema
https://openvibe.network/contracts/wiki/page-write-request.v1.json

wiki.page-write-request@1: bodies of wiki.page.create on OpenVibe.Wiki (editors of the space; a service acts for the person in X-OV-Subject). POST /api/v1/spaces/:space/pages: { title, body, summary?, infobox?, parent_id?, visibility?, citations?, message? } (title at most 200 characters, summary 300, body Markdown up to 200000). POST /api/v1/pages/:id/revisions: { expected_revision, body?, title?, summary?, infobox?, citations?, keep_citations?, message? } (expected_revision is the head you edited; a stale one is 412). PATCH /api/v1/pages/:id: { slug?, parent_id?, visibility?, noindex? } (visibility and noindex by an owner). POST /api/v1/pages/:id/media: { media_id, alt?, caption? } (a Media object the person can read, not private, ready). POST /api/v1/spaces/:space/import: { pages, publish?, on_existing?, source?, original_author?, ai_assisted? } (an owner; all or nothing; unknown keys refused). DELETE /api/v1/pages/:id and POST /api/v1/pages/:id/media/verify take no body.

Fields

This schema has no named fields.

Examples

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

Valid: create
{
  "title": "Restreaming",
  "body": "Restreaming sends one encoder feed to several platforms.",
  "summary": "Sending one stream to several platforms.",
  "citations": [
    {
      "url": "https://docs.example.com/rtmp",
      "retrieved_at": "2026-09-24T09:00:00Z"
    }
  ]
}
Valid: edit
{
  "expected_revision": 3,
  "body": "Restreaming sends one encoder feed to several platforms at once.",
  "message": "wording"
}
Valid: media
{
  "media_id": "med_01JAB2C3D4E5F6G7H8J9K0MNPQ",
  "alt": "OBS settings"
}
Rejected: everything-wrong
{
  "visibility": "secret",
  "noindex": "no"
}

Validate

const contracts = require('openvibe-contracts');
contracts.validate('wiki.page-write-request@1', value);   // { valid, errors: [{ path, message }] }