# app.2ndscreen.team

> Published by [2ndscreen.app](https://lexicon.garden/identity/did:plc:aeix5u7myob5u3yzlpxggxnu)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:aeix5u7myob5u3yzlpxggxnu/app.2ndscreen.team)
- [Documentation](https://lexicon.garden/lexicon/did:plc:aeix5u7myob5u3yzlpxggxnu/app.2ndscreen.team/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:aeix5u7myob5u3yzlpxggxnu/app.2ndscreen.team/examples)

## Definitions

### `app.2ndscreen.team`

**Type**: `record`

A particular club or representative side. Keys and fan references remain stable across league membership changes.

**Key**: `any`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `aliases` | `array` | No |  |
| `artwork` | `ref` → `app.2ndscreen.defs#artwork` | No |  |
| `createdAt` | `string` (datetime) | Yes |  |
| `kind` | `string` | No |  |
| `memberships` | `array` | No |  |
| `name` | `string` | Yes |  |
| `officialAccounts` | `array` | No |  |
| `providerIds` | `array` | No | Reviewed provider namespace/ID mappings, independent of the permanent catalog key. |
| `represents` | `string` | No | Country or region represented, where applicable; does not replace the sport and side identity. |
| `shortName` | `string` | No |  |
| `side` | `ref` → `app.2ndscreen.defs#side` | No |  |
| `sport` | `string` (at-uri) | Yes | Canonical DID-form AT URI of an app.2ndscreen.sport record. A link does not confer the referenced publisher’s curation status. |
| `status` | `string` | No | Unknown values must not erase a fan reference. Absence means unspecified. |
| `successor` | `string` (at-uri) | No | Canonical DID-form AT URI of a replacement app.2ndscreen.team record. Never rewrites fan references. Bound traversal and reject cycles; no transitive trust across publishers. |
| `updatedAt` | `string` (datetime) | No |  |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A particular club or representative side. Keys and fan references remain stable across league membership changes.",
      "key": "any",
      "record": {
        "properties": {
          "aliases": {
            "items": {
              "maxGraphemes": 100,
              "maxLength": 1000,
              "type": "string"
            },
            "maxLength": 20,
            "type": "array"
          },
          "artwork": {
            "ref": "app.2ndscreen.defs#artwork",
            "type": "ref"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "kind": {
            "knownValues": [
              "club",
              "national",
              "representative"
            ],
            "maxLength": 100,
            "type": "string"
          },
          "memberships": {
            "items": {
              "ref": "app.2ndscreen.defs#membership",
              "type": "ref"
            },
            "maxLength": 30,
            "type": "array"
          },
          "name": {
            "maxGraphemes": 100,
            "maxLength": 1000,
            "minLength": 1,
            "type": "string"
          },
          "officialAccounts": {
            "items": {
              "ref": "app.2ndscreen.defs#officialAccount",
              "type": "ref"
            },
            "maxLength": 10,
            "type": "array"
          },
          "providerIds": {
            "description": "Reviewed provider namespace/ID mappings, independent of the permanent catalog key.",
            "items": {
              "ref": "app.2ndscreen.defs#providerIdentifier",
              "type": "ref"
            },
            "maxLength": 20,
            "type": "array"
          },
          "represents": {
            "description": "Country or region represented, where applicable; does not replace the sport and side identity.",
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "shortName": {
            "maxGraphemes": 30,
            "maxLength": 300,
            "type": "string"
          },
          "side": {
            "ref": "app.2ndscreen.defs#side",
            "type": "ref"
          },
          "sport": {
            "description": "Canonical DID-form AT URI of an app.2ndscreen.sport record. A link does not confer the referenced publisher’s curation status.",
            "format": "at-uri",
            "type": "string"
          },
          "status": {
            "description": "Unknown values must not erase a fan reference. Absence means unspecified.",
            "knownValues": [
              "active",
              "retired",
              "superseded"
            ],
            "maxLength": 100,
            "type": "string"
          },
          "successor": {
            "description": "Canonical DID-form AT URI of a replacement app.2ndscreen.team record. Never rewrites fan references. Bound traversal and reject cycles; no transitive trust across publishers.",
            "format": "at-uri",
            "type": "string"
          },
          "updatedAt": {
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "name",
          "sport",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "app.2ndscreen.team",
  "lexicon": 1
}
```
