{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Return the authenticated viewer's identity along with any opaque flags clients may use to gate UI.",
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "avatarCid": {
              "type": "string"
            },
            "did": {
              "format": "did",
              "type": "string"
            },
            "displayName": {
              "type": "string"
            },
            "envAdmin": {
              "description": "Implementation-defined flag. Clients should treat as opaque.",
              "type": "boolean"
            },
            "handle": {
              "format": "handle",
              "type": "string"
            },
            "roles": {
              "description": "Opaque flags assigned to the viewer. Values are implementation-defined; treat unknown entries as informational.",
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          "required": [
            "did",
            "roles",
            "envAdmin"
          ],
          "type": "object"
        }
      },
      "type": "query"
    }
  },
  "id": "app.didpic.identity.getSession",
  "lexicon": 1
}
