appBskyActorDefs top-level constant

Map<String, dynamic> const appBskyActorDefs

app.bsky.actor.defs

Implementation

const appBskyActorDefs = <String, dynamic>{
  "lexicon": 1,
  "id": "app.bsky.actor.defs",
  "defs": {
    "profileViewBasic": {
      "type": "object",
      "required": ["did", "handle"],
      "properties": {
        "did": {"type": "string", "format": "did"},
        "handle": {"type": "string", "format": "handle"},
        "displayName": {"type": "string", "maxLength": 640, "maxGraphemes": 64},
        "avatar": {"type": "string", "format": "uri"},
        "associated": {"type": "ref", "ref": "#profileAssociated"},
        "viewer": {"type": "ref", "ref": "#viewerState"},
        "labels": {
          "type": "array",
          "items": {"type": "ref", "ref": "com.atproto.label.defs#label"}
        }
      }
    },
    "profileView": {
      "type": "object",
      "required": ["did", "handle"],
      "properties": {
        "did": {"type": "string", "format": "did"},
        "handle": {"type": "string", "format": "handle"},
        "displayName": {"type": "string", "maxLength": 640, "maxGraphemes": 64},
        "description": {
          "type": "string",
          "maxLength": 2560,
          "maxGraphemes": 256
        },
        "avatar": {"type": "string", "format": "uri"},
        "associated": {"type": "ref", "ref": "#profileAssociated"},
        "indexedAt": {"type": "string", "format": "datetime"},
        "viewer": {"type": "ref", "ref": "#viewerState"},
        "labels": {
          "type": "array",
          "items": {"type": "ref", "ref": "com.atproto.label.defs#label"}
        }
      }
    },
    "profileViewDetailed": {
      "type": "object",
      "required": ["did", "handle"],
      "properties": {
        "did": {"type": "string", "format": "did"},
        "handle": {"type": "string", "format": "handle"},
        "displayName": {"type": "string", "maxLength": 640, "maxGraphemes": 64},
        "description": {
          "type": "string",
          "maxLength": 2560,
          "maxGraphemes": 256
        },
        "avatar": {"type": "string", "format": "uri"},
        "banner": {"type": "string", "format": "uri"},
        "followersCount": {"type": "integer"},
        "followsCount": {"type": "integer"},
        "postsCount": {"type": "integer"},
        "associated": {"type": "ref", "ref": "#profileAssociated"},
        "indexedAt": {"type": "string", "format": "datetime"},
        "viewer": {"type": "ref", "ref": "#viewerState"},
        "labels": {
          "type": "array",
          "items": {"type": "ref", "ref": "com.atproto.label.defs#label"}
        }
      }
    },
    "profileAssociated": {
      "type": "object",
      "properties": {
        "lists": {"type": "integer"},
        "feedgens": {"type": "integer"},
        "labeler": {"type": "boolean"},
        "chat": {"type": "ref", "ref": "#profileAssociatedChat"}
      }
    },
    "profileAssociatedChat": {
      "type": "object",
      "required": ["allowIncoming"],
      "properties": {
        "allowIncoming": {
          "type": "string",
          "knownValues": ["all", "none", "following"]
        }
      }
    },
    "viewerState": {
      "type": "object",
      "description":
          "Metadata about the requesting account's relationship with the subject account. Only has meaningful content for authed requests.",
      "properties": {
        "muted": {"type": "boolean"},
        "mutedByList": {
          "type": "ref",
          "ref": "app.bsky.graph.defs#listViewBasic"
        },
        "blockedBy": {"type": "boolean"},
        "blocking": {"type": "string", "format": "at-uri"},
        "blockingByList": {
          "type": "ref",
          "ref": "app.bsky.graph.defs#listViewBasic"
        },
        "following": {"type": "string", "format": "at-uri"},
        "followedBy": {"type": "string", "format": "at-uri"}
      }
    },
    "preferences": {
      "type": "array",
      "items": {
        "type": "union",
        "refs": [
          "#adultContentPref",
          "#contentLabelPref",
          "#savedFeedsPref",
          "#savedFeedsPrefV2",
          "#personalDetailsPref",
          "#feedViewPref",
          "#threadViewPref",
          "#interestsPref",
          "#mutedWordsPref",
          "#hiddenPostsPref"
        ]
      }
    },
    "adultContentPref": {
      "type": "object",
      "required": ["enabled"],
      "properties": {
        "enabled": {"type": "boolean", "default": false}
      }
    },
    "contentLabelPref": {
      "type": "object",
      "required": ["label", "visibility"],
      "properties": {
        "labelerDid": {
          "type": "string",
          "format": "did",
          "description":
              "Which labeler does this preference apply to? If undefined, applies globally."
        },
        "label": {"type": "string"},
        "visibility": {
          "type": "string",
          "knownValues": ["ignore", "show", "warn", "hide"]
        }
      }
    },
    "savedFeed": {
      "type": "object",
      "required": ["id", "type", "value", "pinned"],
      "properties": {
        "id": {"type": "string"},
        "type": {
          "type": "string",
          "knownValues": ["feed", "list", "timeline"]
        },
        "value": {"type": "string"},
        "pinned": {"type": "boolean"}
      }
    },
    "savedFeedsPrefV2": {
      "type": "object",
      "required": ["items"],
      "properties": {
        "items": {
          "type": "array",
          "items": {"type": "ref", "ref": "app.bsky.actor.defs#savedFeed"}
        }
      }
    },
    "savedFeedsPref": {
      "type": "object",
      "required": ["pinned", "saved"],
      "properties": {
        "pinned": {
          "type": "array",
          "items": {"type": "string", "format": "at-uri"}
        },
        "saved": {
          "type": "array",
          "items": {"type": "string", "format": "at-uri"}
        },
        "timelineIndex": {"type": "integer"}
      }
    },
    "personalDetailsPref": {
      "type": "object",
      "properties": {
        "birthDate": {
          "type": "string",
          "format": "datetime",
          "description": "The birth date of account owner."
        }
      }
    },
    "feedViewPref": {
      "type": "object",
      "required": ["feed"],
      "properties": {
        "feed": {
          "type": "string",
          "description":
              "The URI of the feed, or an identifier which describes the feed."
        },
        "hideReplies": {
          "type": "boolean",
          "description": "Hide replies in the feed."
        },
        "hideRepliesByUnfollowed": {
          "type": "boolean",
          "description":
              "Hide replies in the feed if they are not by followed users.",
          "default": true
        },
        "hideRepliesByLikeCount": {
          "type": "integer",
          "description":
              "Hide replies in the feed if they do not have this number of likes."
        },
        "hideReposts": {
          "type": "boolean",
          "description": "Hide reposts in the feed."
        },
        "hideQuotePosts": {
          "type": "boolean",
          "description": "Hide quote posts in the feed."
        }
      }
    },
    "threadViewPref": {
      "type": "object",
      "properties": {
        "sort": {
          "type": "string",
          "description": "Sorting mode for threads.",
          "knownValues": ["oldest", "newest", "most-likes", "random"]
        },
        "prioritizeFollowedUsers": {
          "type": "boolean",
          "description": "Show followed users at the top of all replies."
        }
      }
    },
    "interestsPref": {
      "type": "object",
      "required": ["tags"],
      "properties": {
        "tags": {
          "type": "array",
          "description":
              "A list of tags which describe the account owner's interests gathered during onboarding.",
          "items": {"type": "string", "maxLength": 640, "maxGraphemes": 64},
          "maxLength": 100
        }
      }
    },
    "mutedWordTarget": {
      "type": "string",
      "maxLength": 640,
      "maxGraphemes": 64,
      "knownValues": ["content", "tag"]
    },
    "mutedWord": {
      "type": "object",
      "description": "A word that the account owner has muted.",
      "required": ["value", "targets"],
      "properties": {
        "value": {
          "type": "string",
          "description": "The muted word itself.",
          "maxLength": 10000,
          "maxGraphemes": 1000
        },
        "targets": {
          "type": "array",
          "description": "The intended targets of the muted word.",
          "items": {"type": "ref", "ref": "app.bsky.actor.defs#mutedWordTarget"}
        }
      }
    },
    "mutedWordsPref": {
      "type": "object",
      "required": ["items"],
      "properties": {
        "items": {
          "type": "array",
          "description": "A list of words the account owner has muted.",
          "items": {"type": "ref", "ref": "app.bsky.actor.defs#mutedWord"}
        }
      }
    },
    "hiddenPostsPref": {
      "type": "object",
      "required": ["items"],
      "properties": {
        "items": {
          "type": "array",
          "description":
              "A list of URIs of posts the account owner has hidden.",
          "items": {"type": "string", "format": "at-uri"}
        }
      }
    },
    "labelersPref": {
      "type": "object",
      "required": ["labelers"],
      "properties": {
        "labelers": {
          "type": "array",
          "items": {"type": "ref", "ref": "#labelerPrefItem"}
        }
      }
    },
    "labelerPrefItem": {
      "type": "object",
      "required": ["did"],
      "properties": {
        "did": {"type": "string", "format": "did"}
      }
    }
  }
};