---
title: "vision.consent-revocation@1 · OpenVibe.Services"
canonical: "https://openvibe.services/docs/contracts/vision.consent-revocation"
updated: null
---

# vision.consent-revocation@1 · OpenVibe.Services

HTML: [vision.consent-revocation@1 · OpenVibe.Services](https://openvibe.services/docs/contracts/vision.consent-revocation)

# VisionConsentRevocation `vision.consent-revocation@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: vision
- Visibility: first-party
- Status: active
- Compatibility: backward
- Schema: [`https://openvibe.network/contracts/vision/consent-revocation.v1.json`](/docs/contracts/vision.consent-revocation.json)

vision.consent-revocation@1: DELETE /api/v1/faces/consents/:feature answers with the revoked feature and scope, when, and that the template and derived data were erased in the same transaction. Revocation removes past cast tags and cannot be undone by reusing an old text version.

## Fields

| Field | Type | Required | Description | Constraints |
| --- | --- | --- | --- | --- |
| `feature` | enum | yes |  | - `one of "verify", "find", "cast", "library", "voice"` |
| `scope` | string | yes |  | - `maxLength 160` |
| `revoked_at` | string | yes |  | - `format date-time` |
| `revoked_by` | enum | yes |  | - `one of "subject"` |
| `erased` | const | yes |  | - `= true` |

## Examples

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

 Valid: one

~~~~
{
  "feature": "cast",
  "scope": "live:one",
  "revoked_at": "2026-10-29T11:00:00.000Z",
  "revoked_by": "subject",
  "erased": true
}
~~~~

Rejected: one

~~~~
{
  "feature": "cast",
  "scope": "live:one",
  "revoked_at": "2026-10-29T11:00:00.000Z",
  "revoked_by": "admin",
  "erased": true
}
~~~~

## Validate

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