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

# Content ownership

> Confirm you own the words, files, or releases. Reuse the result later.

**Check ID:** `ownership-basic`

## Use cases

Release notes, policy text, agent outputs, licensing claims, bounty submissions, and marketplace listings where **who said it** and **what the exact text was** must be verifiable later.

## Workflow

1. The owning wallet signs.
2. Attach **`content`** (full text, up to 50,000 characters) and/or **`reference`** (`{ type, id }` — NEUS does not fetch URLs for you).
3. NEUS saves a durable result for check, link, and reuse.

Visibility: private vault, link-only, or public. [Privacy](../platform/security-and-trust).

## Content and storage

| Field         | Required | Notes                                                                                     |
| ------------- | -------- | ----------------------------------------------------------------------------------------- |
| `owner`       | Yes      | Must match the signer wallet                                                              |
| `content`     | No       | Text to bind to the account                                                               |
| `reference`   | No       | Stable pointer `{ type, id }` — not a bare string                                         |
| `contentHash` | No       | NEUS verifier hash (`0x` + 64 hex) only if precomputed; otherwise omit and send `content` |
| `provenance`  | No       | Advisory human / AI / mixed metadata                                                      |

Send at least one of `content`, `contentHash`, or `reference.id`.

To store the exact string on the receipt, set **`storeOriginalContent: true`** when you need to override defaults. Read back with **`proof.publicContent.content`**. [Privacy](../platform/security-and-trust) covers defaults.

**Pre-hash:** Do not paste a generic SHA256 as `contentHash`. Send `content`, verify, and use the returned verifier hash from NEUS.

### Example payload

```json theme={"dark"}
{
  "owner": "0x...",
  "content": "Release notes for v1.2",
  "reference": {
    "type": "url",
    "id": "https://example.com/releases/v1-2",
    "title": "Release notes v1.2"
  },
  "provenance": {
    "declaredKind": "mixed",
    "aiContext": {
      "generatorType": "agent",
      "provider": "NEUS",
      "model": "release-workflow",
      "runId": "release-v1-2"
    }
  }
}
```

If storage was off or only a hash/pointer was anchored, callers may see a resolution status such as `hash_only_not_recoverable` instead of full prose.

Schema: [`ownership-basic.json`](https://github.com/neus/network/blob/main/docs/verifiers/schemas/ownership-basic.json).
