# net.anisota.beta.game.achievement

> Published by [anisota.net](https://lexicon.garden/identity/did:plc:lcieujcfkv4jx7gehsvok3pr)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:lcieujcfkv4jx7gehsvok3pr/net.anisota.beta.game.achievement)
- [Documentation](https://lexicon.garden/lexicon/did:plc:lcieujcfkv4jx7gehsvok3pr/net.anisota.beta.game.achievement/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:lcieujcfkv4jx7gehsvok3pr/net.anisota.beta.game.achievement/examples)

## Definitions

### `net.anisota.beta.game.achievement`

**Type**: `record`

Record representing an achievement unlocked by a player

**Key**: `any`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `name` | `string` | Yes | Display name of the achievement |
| `tier` | `integer` | No | Tier or milestone value (e.g., 1000 for followers-1000, 10 for level-10) |
| `rarity` | `string` | No | Rarity tier of the achievement |
| `category` | `string` | Yes | Category of the achievement |
| `metadata` | `unknown` | No | Additional achievement-specific data |
| `xpReward` | `integer` | No | Experience points awarded for this achievement |
| `signature` | `ref` → `#signature` | Yes |  |
| `unlockedAt` | `string` (datetime) | Yes | When the achievement was unlocked |
| `description` | `string` | No | Description of what was accomplished |
| `achievementId` | `string` | Yes | Unique identifier for the achievement (e.g., 'followers-1000', 'level-10') |
| `verificationUri` | `string` (at-uri) | No | AT URI linking to the verification record on the Anisota brand PDS |

### `net.anisota.beta.game.achievement#signature`

**Type**: `object`

Cryptographic signature proving authenticity

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `sig` | `string` | Yes | Base64-encoded cryptographic signature |
| `issuer` | `string` | Yes | DID of the signing authority (Anisota backend) |
| `signedAt` | `string` (datetime) | Yes | When the achievement was signed |

## Raw Schema

```json
{
  "id": "net.anisota.beta.game.achievement",
  "defs": {
    "main": {
      "key": "any",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "achievementId",
          "category",
          "name",
          "unlockedAt",
          "signature"
        ],
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 100,
            "description": "Display name of the achievement"
          },
          "tier": {
            "type": "integer",
            "minimum": 0,
            "description": "Tier or milestone value (e.g., 1000 for followers-1000, 10 for level-10)"
          },
          "rarity": {
            "enum": [
              "common",
              "uncommon",
              "rare",
              "epic",
              "legendary"
            ],
            "type": "string",
            "description": "Rarity tier of the achievement"
          },
          "category": {
            "enum": [
              "followers",
              "level",
              "social",
              "collection"
            ],
            "type": "string",
            "description": "Category of the achievement"
          },
          "metadata": {
            "type": "unknown",
            "description": "Additional achievement-specific data"
          },
          "xpReward": {
            "type": "integer",
            "minimum": 0,
            "description": "Experience points awarded for this achievement"
          },
          "signature": {
            "ref": "#signature",
            "type": "ref"
          },
          "unlockedAt": {
            "type": "string",
            "format": "datetime",
            "description": "When the achievement was unlocked"
          },
          "description": {
            "type": "string",
            "maxLength": 500,
            "description": "Description of what was accomplished"
          },
          "achievementId": {
            "type": "string",
            "maxLength": 100,
            "description": "Unique identifier for the achievement (e.g., 'followers-1000', 'level-10')"
          },
          "verificationUri": {
            "type": "string",
            "format": "at-uri",
            "description": "AT URI linking to the verification record on the Anisota brand PDS"
          }
        }
      },
      "description": "Record representing an achievement unlocked by a player"
    },
    "signature": {
      "type": "object",
      "required": [
        "issuer",
        "signedAt",
        "sig"
      ],
      "properties": {
        "sig": {
          "type": "string",
          "description": "Base64-encoded cryptographic signature"
        },
        "issuer": {
          "type": "string",
          "description": "DID of the signing authority (Anisota backend)"
        },
        "signedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the achievement was signed"
        }
      },
      "description": "Cryptographic signature proving authenticity"
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
