# games.cavu.secret

> A game's server secret. Lives in the publisher's own repo inside the game's private memberspace (at://<publisher>/space/games.cavu.secrets/<slug>), never in the public repo; only services that are members of that space (the game servers that run it) can read it. Games never see it: they get values mixed from it with ctx.seed(label). Replacing it changes everything mixed from it (e.g. a daily deal).

- Kind: record
- Record key: literal:self
- Authority: cavu.games
- Lexicon: 1
- Published by [pardy.at](https://lexicon.garden/identity/did:plc:dp7v5b5kejmmzzpwmqyf5wj6), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:dp7v5b5kejmmzzpwmqyf5wj6/games.cavu.secret)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:dp7v5b5kejmmzzpwmqyf5wj6/games.cavu.secret/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:dp7v5b5kejmmzzpwmqyf5wj6/games.cavu.secret/analytics)

## Record (`games.cavu.secret`)

Type: record · key literal:self

### Properties

- `createdAt` (string · datetime, required)
- `seed` (string, required): Base64 (standard, padded) of 32 random bytes. Read only by members of the game's games.cavu.secrets space; games see values mixed from it via ctx.seed, never the seed.
  - Constraints: maxLength: 128

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A game's server secret. Lives in the publisher's own repo inside the game's private memberspace (at://<publisher>/space/games.cavu.secrets/<slug>), never in the public repo; only services that are members of that space (the game servers that run it) can read it. Games never see it: they get values mixed from it with ctx.seed(label). Replacing it changes everything mixed from it (e.g. a daily deal).",
      "key": "literal:self",
      "record": {
        "properties": {
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "seed": {
            "description": "Base64 (standard, padded) of 32 random bytes. Read only by members of the game's games.cavu.secrets space; games see values mixed from it via ctx.seed, never the seed.",
            "maxLength": 128,
            "type": "string"
          }
        },
        "required": [
          "seed",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "games.cavu.secret",
  "lexicon": 1
}
```
