# chat.gel.assistant.permissions

- Kind: permission-set
- Authority: assistant.gel.chat
- Lexicon: 1
- Published by [gel.chat](https://lexicon.garden/identity/did:plc:k2csuyvih44bjf2lex73x56v), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:k2csuyvih44bjf2lex73x56v/chat.gel.assistant.permissions)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:k2csuyvih44bjf2lex73x56v/chat.gel.assistant.permissions/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:k2csuyvih44bjf2lex73x56v/chat.gel.assistant.permissions/analytics)

## Permission set (`chat.gel.assistant.permissions`)

Type: permission-set

### Shown at sign-in

- `title` (string): Chat
- `detail` (string): Create and manage chats and settings. Read shared chats.

### Permissions

- `space` (permission): Read, create, update and delete chat.gel.assistant.info and chat.gel.assistant.message records in your own chat.gel.assistant.conversation spaces, and create, update and delete the spaces themselves. From the Atproto Spaces proposal (0016); servers without it ignore space permissions.
  - Constraints: authority: self, collection: chat.gel.assistant.info, chat.gel.assistant.message, action: read, create, update, delete, manage: create, update, delete
  - Space type: `chat.gel.assistant.conversation`
- `space` (permission): Read records in anyone's chat.gel.assistant.conversation spaces. From the Atproto Spaces proposal (0016); servers without it ignore space permissions.
  - Constraints: authority: *, action: read
  - Space type: `chat.gel.assistant.conversation`
- `space` (permission): Read, create, update and delete chat.gel.assistant.preferences and chat.gel.assistant.conversationRef records in the space self among your own chat.gel.assistant.settings spaces, and create, update and delete the spaces themselves. From the Atproto Spaces proposal (0016); servers without it ignore space permissions.
  - Constraints: authority: self, skey: self, collection: chat.gel.assistant.preferences, chat.gel.assistant.conversationRef, action: read, create, update, delete, manage: create, update, delete
  - Space type: `chat.gel.assistant.settings`
- `blob` (permission): Not granted: permission sets don't grant blob permissions.

### Asking for it (OAuth scope)

- `include:chat.gel.assistant.permissions` (scope): A client asks for this permission set with this scope. The scope builder lists what the set grants.
  - Scope builder: `Open in the scope builder`

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "detail": "Create and manage chats and settings. Read shared chats.",
      "permissions": [
        {
          "action": [
            "read",
            "create",
            "update",
            "delete"
          ],
          "authority": "self",
          "collection": [
            "chat.gel.assistant.info",
            "chat.gel.assistant.message"
          ],
          "manage": [
            "create",
            "update",
            "delete"
          ],
          "resource": "space",
          "spaceType": "chat.gel.assistant.conversation",
          "type": "permission"
        },
        {
          "action": [
            "read"
          ],
          "authority": "*",
          "resource": "space",
          "spaceType": "chat.gel.assistant.conversation",
          "type": "permission"
        },
        {
          "action": [
            "read",
            "create",
            "update",
            "delete"
          ],
          "authority": "self",
          "collection": [
            "chat.gel.assistant.preferences",
            "chat.gel.assistant.conversationRef"
          ],
          "manage": [
            "create",
            "update",
            "delete"
          ],
          "resource": "space",
          "skey": "self",
          "spaceType": "chat.gel.assistant.settings",
          "type": "permission"
        },
        {
          "accept": [
            "*/*"
          ],
          "resource": "blob",
          "type": "permission"
        }
      ],
      "title": "Chat",
      "type": "permission-set"
    }
  },
  "id": "chat.gel.assistant.permissions",
  "lexicon": 1
}
```
