SearchOwnerResult search.owner-result@1
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
- Version
- 1.0.0
- Owner
- search
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/search/owner-result.v1.json
search.owner-result@1: answers of search.document.write on OpenVibe.Search. PUT and DELETE /api/v1/documents/:owner/:type/:id → search.write-result@1 (stale and conflicting revisions are 409 problems); GET /api/v1/owners/:owner/documents?type=&after=&limit= → { owner, documents, next_after } (reconciliation: type, id, revision, deleted, exposure, hash, indexed_at); GET /api/v1/owners/:owner/documents/:type/:id → { document, effective_indexability, exposure, via, event_id, indexed_at } (the stored document); GET /api/v1/owners/:owner/rejections?after= → { rejections, next_after } (index-document events Search refused, at most 200).
Fields
This schema has no named fields.
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: applied
{
"outcome": "applied",
"revision": 2,
"stored_revision": 1,
"deleted": false
}Valid: reconciliation
{
"owner": "wiki",
"documents": [
{
"type": "page",
"id": "restreaming",
"revision": 3,
"deleted": false,
"exposure": "public",
"hash": "ab12",
"indexed_at": "2026-09-24T10:00:01.000Z"
}
],
"next_after": null
}Valid: rejections
{
"rejections": [
{
"seq": 4,
"event_id": "evt_01JAB2C3D4E5F6G7H8J9K0MNPQ",
"event_type": "wiki.index_document.upserted",
"type": "page",
"id": "x",
"revision": 2,
"code": "search.bad_document",
"detail": "title is required",
"at": "2026-09-25T18:00:00.000Z"
}
],
"next_after": 4
}Rejected: partial
{
"documents": []
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('search.owner-result@1', value); // { valid, errors: [{ path, message }] }