ReviewsEntityMergeRequest reviews.entity-merge-request@1
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
- Version
- 1.0.0
- Owner
- reviews
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/reviews/entity-merge-request.v1.json
reviews.entity-merge-request@1: the body of reviews.entity.merge on OpenVibe.Reviews: POST /api/v1/entities/:ref/merge { into, note? } merges :ref into another active entity, decided by the editor named in X-OV-Subject (403 reviews.person_required / reviews.editor_required). Nothing is rewritten: an audited merged_into link records who, when and why. Refusals: 404 entity.not_found, 422 merge.same_entity, 409 merge.not_active, 409 merge.target_not_active (with canonical_id), 409 merge.cycle.
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
into | string | yes | An entity id (ent_…) or its slug. |
|
note | string | null | Cut to 500 characters. |
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: by-slug
{
"into": "lumen-x2-headphones"
}Valid: merge
{
"into": "ent_01JAC1E2N3T4V5W6X7Y8Z9A0B1",
"note": "Same headphones, regional name"
}Rejected: no-target
{
"note": "Same headphones"
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('reviews.entity-merge-request@1', value); // { valid, errors: [{ path, message }] }