> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omnifence.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Shared Registry

> Stop users that other platforms banned from signing up to yours

The Shared Registry is a list of users that member platforms banned for serious harm, shared across
the industry. When one member bans a user, it reports the user to the registry. Every other member
then checks new sign-ups against the registry and can stop a known bad actor before the account
exists.

The registry never holds an email address, a name or any content. It holds a keyed hash of the
user's email and the category of harm. A check tells you that other platforms banned this user and
why. It never tells you which platform did.

## The problem it solves

A user that one platform bans for generating prohibited content, or for payment fraud, can sign up
to the next platform in minutes with the same email. Each platform finds out on its own, after the
harm happens again. The registry closes that gap: a ban on one member platform becomes a signal on
every member platform.

The design follows two proven models:

* **Self-exclusion and data sharing in UK gambling.** Operators check every registration against a
  shared register, and the data that operators send is hashed and kept only as long as the check
  needs it.
* **Cross-platform signal sharing for online safety.** Vetted members share signals about accounts
  that broke one narrow policy. Each receiving platform reviews a signal and acts under its own terms.

## How it works

<Steps>
  <Step title="A member bans a user">
    A person on the member's trust and safety team reviews the evidence and upholds a ban for
    payment fraud, prohibited content or ban evasion.
  </Step>

  <Step title="The member reports the user">
    The member normalises the user's email, hashes it with SHA-256, and sends the hash and the
    category to the registry. The email never leaves the member.
  </Step>

  <Step title="Another member checks a sign-up">
    When someone signs up to a second member platform, that platform hashes the email the same way
    and checks it against the registry.
  </Step>

  <Step title="The registry returns a signal">
    The check returns each category that members reported, how many members reported it, and when.
    The checking member decides what to do under its own terms.
  </Step>
</Steps>

Read [How it works](/registry/how-it-works) for the full flow, and
[Privacy and security](/registry/privacy-and-security) for what the registry stores and who can see
it.

## What a match tells you

```json theme={null}
{
  "match": true,
  "signals": [
    {
      "category": "prohibited_content",
      "reporter_count": 2,
      "first_reported_at": "2026-03-02T10:15:00.000Z",
      "last_reported_at": "2026-08-19T08:40:00.000Z",
      "automated_refusal_permitted": true
    }
  ],
  "normalisation_version": 1
}
```

Two different platforms banned this user for prohibited content, between March and August. You can
refuse the sign-up on that match alone. For lower-severity categories,
`automated_refusal_permitted` is `false`, and a person reviews the match before you refuse.

## Key properties

<Columns cols={2}>
  <Card title="No emails stored" icon="fingerprint" href="/registry/privacy-and-security">
    Members send a hash. The registry stores a second, keyed hash of it, so a copy of the registry
    reveals no emails.
  </Card>

  <Card title="Reporters stay anonymous" icon="user-secret" href="/registry/how-it-works#what-a-check-returns">
    A check returns counts and dates per category. It never names the member that reported a user.
  </Card>

  <Card title="Human-reviewed reports" icon="user-check" href="/registry/reporting">
    A member reports only bans that a person reviewed and upheld, and keeps the evidence.
  </Card>

  <Card title="Fair to the people named" icon="scale-balanced" href="/registry/disputes">
    Every entry expires. A person can dispute an entry, and a disputed entry stops matching at once.
  </Card>
</Columns>

## Who can join

The registry is open to vetted platforms, including platforms that do not use Omnifence moderation.
You do not need to use Omnifence moderation, and a registry key carries only registry access.

<Columns cols={2}>
  <Card title="Become a member" icon="handshake" href="/registry/membership">
    Eligibility, vetting, your API key and your obligations as a member.
  </Card>

  <Card title="Quickstart" icon="bolt" href="/registry/quickstart">
    Check your first sign-up and report your first ban.
  </Card>
</Columns>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.