# dev.tsunagite.permissions

> Published by [tsunagite.dev](https://lexicon.garden/identity/did:plc:pz4sp2vf5w26wnaee253gfms)

✓ This is the authoritative definition for this NSID.

## Description

Common permission sets used for Tsunagite setups.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:pz4sp2vf5w26wnaee253gfms/dev.tsunagite.permissions)
- [Documentation](https://lexicon.garden/lexicon/did:plc:pz4sp2vf5w26wnaee253gfms/dev.tsunagite.permissions/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:pz4sp2vf5w26wnaee253gfms/dev.tsunagite.permissions/examples)

## Definitions

### `dev.tsunagite.permissions#direct`

**Type**: `permission-set`

Permissions necessary for game using direct-to-PDS interaction.

```json
{
  "type": "permission-set",
  "title": "Tsunagite functionality (direct)",
  "detail": "Permission to directly upload scores and modify your user profile for this game.",
  "description": "Permissions necessary for game using direct-to-PDS interaction.",
  "permissions": [
    {
      "type": "permission",
      "action": [
        "create"
      ],
      "resource": "repo",
      "collection": [
        "dev.tsunagite.score"
      ]
    },
    {
      "type": "permission",
      "action": [
        "create, update"
      ],
      "resource": "repo",
      "collection": [
        "dev.tsunagite.profile"
      ]
    }
  ]
}
```

### `dev.tsunagite.permissions#hosted`

**Type**: `permission-set`

Permissions necessary for a game using a hosted service like api.tsunagite.dev.

```json
{
  "type": "permission-set",
  "title": "Tsunagite functionality (hosted)",
  "detail": "Permission to use a hosted service to upload scores and modify your user profile for this game.",
  "description": "Permissions necessary for a game using a hosted service like api.tsunagite.dev.",
  "permissions": [
    {
      "type": "permission",
      "action": [
        "create"
      ],
      "resource": "repo",
      "collection": [
        "dev.tsunagite.score"
      ]
    },
    {
      "type": "permission",
      "action": [
        "create, update"
      ],
      "resource": "repo",
      "collection": [
        "dev.tsunagite.profile"
      ]
    },
    {
      "lxm": [
        "dev.tsunagite.submitScore",
        "dev.tsunagite.setProfile"
      ],
      "type": "permission",
      "resource": "rpc",
      "inheritAud": true
    }
  ]
}
```

## Raw Schema

```json
{
  "id": "dev.tsunagite.permissions",
  "defs": {
    "direct": {
      "type": "permission-set",
      "title": "Tsunagite functionality (direct)",
      "detail": "Permission to directly upload scores and modify your user profile for this game.",
      "description": "Permissions necessary for game using direct-to-PDS interaction.",
      "permissions": [
        {
          "type": "permission",
          "action": [
            "create"
          ],
          "resource": "repo",
          "collection": [
            "dev.tsunagite.score"
          ]
        },
        {
          "type": "permission",
          "action": [
            "create, update"
          ],
          "resource": "repo",
          "collection": [
            "dev.tsunagite.profile"
          ]
        }
      ]
    },
    "hosted": {
      "type": "permission-set",
      "title": "Tsunagite functionality (hosted)",
      "detail": "Permission to use a hosted service to upload scores and modify your user profile for this game.",
      "description": "Permissions necessary for a game using a hosted service like api.tsunagite.dev.",
      "permissions": [
        {
          "type": "permission",
          "action": [
            "create"
          ],
          "resource": "repo",
          "collection": [
            "dev.tsunagite.score"
          ]
        },
        {
          "type": "permission",
          "action": [
            "create, update"
          ],
          "resource": "repo",
          "collection": [
            "dev.tsunagite.profile"
          ]
        },
        {
          "lxm": [
            "dev.tsunagite.submitScore",
            "dev.tsunagite.setProfile"
          ],
          "type": "permission",
          "resource": "rpc",
          "inheritAud": true
        }
      ]
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "Common permission sets used for Tsunagite setups."
}
```
