Bridle governs the use of AI-generated likeness and voice. Consent becomes a live permission — checked at the moment of use, revocable at will, and provable after.
or email us →The check is free and open; the guarantee around it is what Bridle sells. We have no revoke capability — here is the code →
The right question
Every synthetic-media tool answers "is this fake?" — after the fact. The question a performer, a union, and a general counsel actually need answered is "was this allowed — right now?"
Consent is not a checkbox at sign-up. It is a live permission, checked at the moment of use — and its withdrawal is provable. That is what Bridle enforces, and what it records: for every act of use, a signed, tamper-evident decision of whether it was conformant.
The moment
A render is running under a live grant. When the rights-holder withdraws consent, the next check refuses — and Bridle produces the signed receipt that proves it. Try it.
Northbank — shot 14 · likeness ADG-001 (face, voice)
Issued by the rights-holder, at her own service. Bridle cannot revoke — it only reads the signed list.
Signed, tamper-evident — anyone can check it.
While the grant is live, each act signs an attestation. Withdraw consent and the next act becomes a signed decision record instead — this is the evidence.
{
"h2a_version": "0.1",
"attestation_id": "8f14e45f-ceea-467a-9ba3-8d1c2f7a91b0",
"grant_id": "3f9a…c21b",
"subject_ref": "urn:h2a:subject:ADG-001",
"grantee_ref": "urn:h2a:grantee:northbank-studios",
"output_hash": "sha256:9f2a…e7c1",
"generator": { "adapter": "synthesia", "model": "express-1" },
"status_check": {
"result": "valid",
"checked_at": "2026-07-18T11:45:28Z",
"status_uri": "https://issuer.example/status/adg-001"
},
"alg": "ES256",
"signature": "MEUCIQD…9f2a",
"created_at": "2026-07-18T11:45:28Z"
}
additionalProperties: false — the record is exactly these fields. Nothing hidden, nothing extra. That is the whole schema.
How it works
Every use is re-evaluated live against the issuer's signed status list. Nothing is cached; anything Bridle can't verify is refused.
Bounded, revocable authority to use a subject.
Signed receipt of one act of use.
The signed conformant / non-conformant decision.
Static, signed artefact — the issuer's, not Bridle's.
For developers
One SDK, one API, one MCP server — a generator is unreachable without a fresh permit, and every act leaves a signed record.
import { BridleClient } from "@bridle/sdk"; import { governedGenerate } from "@bridle/adapters"; const bridle = new BridleClient(process.env.BRIDLE_URL); // a generator is unreachable without a fresh permit const r = await governedGenerate(bridle, grantId, { purpose: "promotional-video", territory: "GB" }, synthesia, { script }); // your Synthesia / HeyGen adapter if (r.permitted) ship(r.attestation); // signed receipt else refuse(r.decision); // e.g. REFUSED_REVOKED
# Point-of-use check — live, never cached curl -X POST https://api.kilbowieconsulting.com/v0/check \ -H "authorization: Bearer $BRIDLE_TOKEN" \ -H "content-type: application/json" \ -d '{ "grant_id": "3f9a…c21b", "use": { "purpose": "promotional-video", "territory": "GB" } }' # → { "decision": "PERMITTED_CONFORMANT", # "chain_intact": true }
// Any MCP client (Claude, an agent) acts compliantly { "tool": "check_grant", "arguments": { "grant_id": "3f9a…c21b", "use": { "purpose": "promotional-video", "territory": "GB" } } } // → PERMITTED_CONFORMANT · else the generator is never called
Where the power sits
Here's the math — three reasons to believe it, strongest first. Not "trust us": redundant, auditable power that survives a bad day.
1 · Incentives. Bridle makes more money when revocations are honoured, not fewer — the check is free, the guarantee is the product. No incumbent can copy that, because none can honestly build a tool whose output reduces its own revenue or worsens its liability. This is the structural reason, and it can't be faked.
2 · No key. Revocation authority is custody of the status-list signing key, and that key stays with the rights-holder's fiduciary — never the operator, never the vendor. Bridle holds only the public key: it fetches the signed list, verifies it, and fails closed.
3 · Auditability. You don't have to take our word for either. The check is open and re-runnable against the reference verifier, and the signed list is a static artefact with mirror URIs named in the Mandate. In honesty: today Bridle operates the issuer endpoint on the fiduciary's behalf under shared ownership — an acknowledged interim — and configures the trust anchor. Independent fiduciary custody and Foundation-governed anchors are on the roadmap, not yet the fact. We say which is which.
The solid line is the runtime path; the dashed lines are parties that cannot block it.
"When a performer withdraws consent, the operator cannot pay Bridle to ignore it. Only the union can sign the list — and Bridle literally cannot."
The four powers
| Power | Who holds it | Where Bridle stands |
|---|---|---|
| Sign a revocation | The fiduciary, alone — rights-holder, union, or CMO. | No key. Bridle cannot obtain one. This is the whole split. |
| Decide which issuers count | The trust-anchor policy. | Bridle-configured at v1 by default — nothing else exists yet. Moving to Foundation-governed policy; we won't pretend that's done. |
| Decide how the check behaves | H2A Core & the conformance spec. | Fail-closed is a conformance requirement, not a per-deployment vendor choice. We can't quietly fail open. |
| Serve the list | Whoever hosts the signed artefact. | Bridle operates the endpoint on the fiduciary's behalf — the one place we sit near the path. Mitigated: multiple mirror URIs, static signed artefacts (a suppressed mirror is detectable; a stale one fails the signature or the horizon check), and issuers move without moving credentials (§8.7). |
Row four is the honest one — and it's what makes the first three credible.
For operators
When a revocation lands mid-generation, the gate halts and the decision record captures what was known, when, and what happened next — the artefact you hand your general counsel.
A signed, tamper-evident record that you halted when instructed — proof of a governed act, designed to be insurable.
Including any downstream leg that did not honour the halt. We record the gap rather than paper over it.
A chain is only as revocable as its slowest gate; the effective horizon is the maximum of its links. You hold the grant. You govern. You never generate without one.
Not a claim to trust — a claim to falsify. The code is open, and the parties who could block a revocation are the ones drawn off the runtime path above. See the standard →
Who it's for
Deploy synthetic actors and voices with proof each use was licensed — governance above whoever renders the pixels.
Give performers withdrawal that actually takes effect — and a signed record when it does. GDPR Art. 7(3) as a running system.
The artefact your procurement team — and an underwriter — actually relies on: admissible, tamper-evident evidence.
Where it's going
Conformance climbs L1 → L2 → L3. A live deployment is L1 today — we say what is proven and what is planned.
See the full roadmap →See it live
A short walkthrough of the governed actor — issue, check, the live revoke, and the receipt an underwriter relies on.