add lexicon codegen: vendored lexicons, lex cli and generation scripts

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Samuel Newman
2026-08-03 12:06:59 +03:00
parent a2129885c6
commit a3243820c9
311 changed files with 23342 additions and 14 deletions
+30
View File
@@ -0,0 +1,30 @@
{
"id": "app.bsky.graph.block",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"subject",
"createdAt"
],
"properties": {
"subject": {
"type": "string",
"format": "did",
"description": "DID of the account to be blocked."
},
"createdAt": {
"type": "string",
"format": "datetime"
}
}
},
"description": "Record declaring a 'block' relationship against another account. NOTE: blocks are public in Bluesky; see blog posts for details."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+353
View File
@@ -0,0 +1,353 @@
{
"id": "app.bsky.graph.defs",
"defs": {
"modlist": {
"type": "token",
"description": "A list of actors to apply an aggregate moderation action (mute/block) on."
},
"listView": {
"type": "object",
"required": [
"uri",
"cid",
"creator",
"name",
"purpose",
"indexedAt"
],
"properties": {
"cid": {
"type": "string",
"format": "cid"
},
"uri": {
"type": "string",
"format": "at-uri"
},
"name": {
"type": "string",
"maxLength": 64,
"minLength": 1
},
"avatar": {
"type": "string",
"format": "uri"
},
"labels": {
"type": "array",
"items": {
"ref": "com.atproto.label.defs#label",
"type": "ref"
}
},
"viewer": {
"ref": "#listViewerState",
"type": "ref"
},
"creator": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
},
"purpose": {
"ref": "#listPurpose",
"type": "ref"
},
"indexedAt": {
"type": "string",
"format": "datetime"
},
"description": {
"type": "string",
"maxLength": 3000,
"maxGraphemes": 300
},
"listItemCount": {
"type": "integer",
"minimum": 0
},
"descriptionFacets": {
"type": "array",
"items": {
"ref": "app.bsky.richtext.facet",
"type": "ref"
}
}
}
},
"curatelist": {
"type": "token",
"description": "A list of actors used for curation purposes such as list feeds or interaction gating."
},
"listPurpose": {
"type": "string",
"knownValues": [
"app.bsky.graph.defs#modlist",
"app.bsky.graph.defs#curatelist",
"app.bsky.graph.defs#referencelist"
]
},
"listItemView": {
"type": "object",
"required": [
"uri",
"subject"
],
"properties": {
"uri": {
"type": "string",
"format": "at-uri"
},
"subject": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
}
},
"relationship": {
"type": "object",
"required": [
"did"
],
"properties": {
"did": {
"type": "string",
"format": "did"
},
"blocking": {
"type": "string",
"format": "at-uri",
"description": "if the actor blocks this DID, this is the AT-URI of the block record"
},
"blockedBy": {
"type": "string",
"format": "at-uri",
"description": "if the actor is blocked by this DID, contains the AT-URI of the block record"
},
"following": {
"type": "string",
"format": "at-uri",
"description": "if the actor follows this DID, this is the AT-URI of the follow record"
},
"followedBy": {
"type": "string",
"format": "at-uri",
"description": "if the actor is followed by this DID, contains the AT-URI of the follow record"
},
"blockedByList": {
"type": "string",
"format": "at-uri",
"description": "if the actor is blocked by this DID via a block list, contains the AT-URI of the listblock record"
},
"blockingByList": {
"type": "string",
"format": "at-uri",
"description": "if the actor blocks this DID via a block list, this is the AT-URI of the listblock record"
}
},
"description": "lists the bi-directional graph relationships between one actor (not indicated in the object), and the target actors (the DID included in the object)"
},
"listViewBasic": {
"type": "object",
"required": [
"uri",
"cid",
"name",
"purpose"
],
"properties": {
"cid": {
"type": "string",
"format": "cid"
},
"uri": {
"type": "string",
"format": "at-uri"
},
"name": {
"type": "string",
"maxLength": 64,
"minLength": 1
},
"avatar": {
"type": "string",
"format": "uri"
},
"labels": {
"type": "array",
"items": {
"ref": "com.atproto.label.defs#label",
"type": "ref"
}
},
"viewer": {
"ref": "#listViewerState",
"type": "ref"
},
"purpose": {
"ref": "#listPurpose",
"type": "ref"
},
"indexedAt": {
"type": "string",
"format": "datetime"
},
"listItemCount": {
"type": "integer",
"minimum": 0
}
}
},
"notFoundActor": {
"type": "object",
"required": [
"actor",
"notFound"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
},
"notFound": {
"type": "boolean",
"const": true
}
},
"description": "indicates that a handle or DID could not be resolved"
},
"referencelist": {
"type": "token",
"description": "A list of actors used for only for reference purposes such as within a starter pack."
},
"listViewerState": {
"type": "object",
"properties": {
"muted": {
"type": "boolean"
},
"blocked": {
"type": "string",
"format": "at-uri"
}
}
},
"starterPackView": {
"type": "object",
"required": [
"uri",
"cid",
"record",
"creator",
"indexedAt"
],
"properties": {
"cid": {
"type": "string",
"format": "cid"
},
"uri": {
"type": "string",
"format": "at-uri"
},
"list": {
"ref": "#listViewBasic",
"type": "ref"
},
"feeds": {
"type": "array",
"items": {
"ref": "app.bsky.feed.defs#generatorView",
"type": "ref"
},
"maxLength": 3
},
"labels": {
"type": "array",
"items": {
"ref": "com.atproto.label.defs#label",
"type": "ref"
}
},
"record": {
"type": "unknown"
},
"creator": {
"ref": "app.bsky.actor.defs#profileViewBasic",
"type": "ref"
},
"indexedAt": {
"type": "string",
"format": "datetime"
},
"joinedWeekCount": {
"type": "integer",
"minimum": 0
},
"listItemsSample": {
"type": "array",
"items": {
"ref": "#listItemView",
"type": "ref"
},
"maxLength": 12
},
"joinedAllTimeCount": {
"type": "integer",
"minimum": 0
}
}
},
"starterPackViewBasic": {
"type": "object",
"required": [
"uri",
"cid",
"record",
"creator",
"indexedAt"
],
"properties": {
"cid": {
"type": "string",
"format": "cid"
},
"uri": {
"type": "string",
"format": "at-uri"
},
"labels": {
"type": "array",
"items": {
"ref": "com.atproto.label.defs#label",
"type": "ref"
}
},
"record": {
"type": "unknown"
},
"creator": {
"ref": "app.bsky.actor.defs#profileViewBasic",
"type": "ref"
},
"indexedAt": {
"type": "string",
"format": "datetime"
},
"listItemCount": {
"type": "integer",
"minimum": 0
},
"joinedWeekCount": {
"type": "integer",
"minimum": 0
},
"joinedAllTimeCount": {
"type": "integer",
"minimum": 0
}
}
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+33
View File
@@ -0,0 +1,33 @@
{
"id": "app.bsky.graph.follow",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"subject",
"createdAt"
],
"properties": {
"via": {
"ref": "com.atproto.repo.strongRef",
"type": "ref"
},
"subject": {
"type": "string",
"format": "did"
},
"createdAt": {
"type": "string",
"format": "datetime"
}
}
},
"description": "Record declaring a social 'follow' relationship of another account. Duplicate follows will be ignored by the AppView."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,53 @@
{
"id": "app.bsky.graph.getActorStarterPacks",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"starterPacks"
],
"properties": {
"cursor": {
"type": "string"
},
"starterPacks": {
"type": "array",
"items": {
"ref": "app.bsky.graph.defs#starterPackViewBasic",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Get a list of starter packs created by the actor."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+46
View File
@@ -0,0 +1,46 @@
{
"id": "app.bsky.graph.getBlocks",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"blocks"
],
"properties": {
"blocks": {
"type": "array",
"items": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
},
"cursor": {
"type": "string"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Enumerates which accounts the requesting account is currently blocking. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+58
View File
@@ -0,0 +1,58 @@
{
"id": "app.bsky.graph.getFollowers",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"subject",
"followers"
],
"properties": {
"cursor": {
"type": "string"
},
"subject": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
},
"followers": {
"type": "array",
"items": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Enumerates accounts which follow a specified account (actor)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+58
View File
@@ -0,0 +1,58 @@
{
"id": "app.bsky.graph.getFollows",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"subject",
"follows"
],
"properties": {
"cursor": {
"type": "string"
},
"follows": {
"type": "array",
"items": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
},
"subject": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Enumerates accounts which a specified account (actor) follows."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,58 @@
{
"id": "app.bsky.graph.getKnownFollowers",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"subject",
"followers"
],
"properties": {
"cursor": {
"type": "string"
},
"subject": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
},
"followers": {
"type": "array",
"items": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Enumerates accounts which follow a specified account (actor) and are followed by the viewer."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+59
View File
@@ -0,0 +1,59 @@
{
"id": "app.bsky.graph.getList",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"list",
"items"
],
"properties": {
"list": {
"ref": "app.bsky.graph.defs#listView",
"type": "ref"
},
"items": {
"type": "array",
"items": {
"ref": "app.bsky.graph.defs#listItemView",
"type": "ref"
}
},
"cursor": {
"type": "string"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"list"
],
"properties": {
"list": {
"type": "string",
"format": "at-uri",
"description": "Reference (AT-URI) of the list record to hydrate."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Gets a 'view' (with additional context) of a specified list."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,46 @@
{
"id": "app.bsky.graph.getListBlocks",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"lists"
],
"properties": {
"lists": {
"type": "array",
"items": {
"ref": "app.bsky.graph.defs#listView",
"type": "ref"
}
},
"cursor": {
"type": "string"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Get mod lists that the requesting account (actor) is blocking. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+46
View File
@@ -0,0 +1,46 @@
{
"id": "app.bsky.graph.getListMutes",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"lists"
],
"properties": {
"lists": {
"type": "array",
"items": {
"ref": "app.bsky.graph.defs#listView",
"type": "ref"
}
},
"cursor": {
"type": "string"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Enumerates mod lists that the requesting account (actor) currently has muted. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+65
View File
@@ -0,0 +1,65 @@
{
"id": "app.bsky.graph.getLists",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"lists"
],
"properties": {
"lists": {
"type": "array",
"items": {
"ref": "app.bsky.graph.defs#listView",
"type": "ref"
}
},
"cursor": {
"type": "string"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier",
"description": "The account (actor) to enumerate lists from."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
},
"purposes": {
"type": "array",
"items": {
"type": "string",
"knownValues": [
"modlist",
"curatelist"
]
},
"description": "Optional filter by list purpose. If not specified, all supported types are returned."
}
}
},
"description": "Enumerates the lists created by a specified account (actor)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,82 @@
{
"id": "app.bsky.graph.getListsWithMembership",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"listsWithMembership"
],
"properties": {
"cursor": {
"type": "string"
},
"listsWithMembership": {
"type": "array",
"items": {
"ref": "#listWithMembership",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier",
"description": "The account (actor) to check for membership."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
},
"purposes": {
"type": "array",
"items": {
"type": "string",
"knownValues": [
"modlist",
"curatelist"
]
},
"description": "Optional filter by list purpose. If not specified, all supported types are returned."
}
}
},
"description": "Enumerates the lists created by the session user, and includes membership information about `actor` in those lists. Only supports curation and moderation lists (no reference lists, used in starter packs). Requires auth."
},
"listWithMembership": {
"type": "object",
"required": [
"list"
],
"properties": {
"list": {
"ref": "app.bsky.graph.defs#listView",
"type": "ref"
},
"listItem": {
"ref": "app.bsky.graph.defs#listItemView",
"type": "ref"
}
},
"description": "A list and an optional list item indicating membership of a target user to that list."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+46
View File
@@ -0,0 +1,46 @@
{
"id": "app.bsky.graph.getMutes",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"mutes"
],
"properties": {
"mutes": {
"type": "array",
"items": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
},
"cursor": {
"type": "string"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Enumerates accounts that the requesting account (actor) currently has muted. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,64 @@
{
"id": "app.bsky.graph.getRelationships",
"defs": {
"main": {
"type": "query",
"errors": [
{
"name": "ActorNotFound",
"description": "the primary actor at-identifier could not be resolved"
}
],
"output": {
"schema": {
"type": "object",
"required": [
"relationships"
],
"properties": {
"actor": {
"type": "string",
"format": "did"
},
"relationships": {
"type": "array",
"items": {
"refs": [
"app.bsky.graph.defs#relationship",
"app.bsky.graph.defs#notFoundActor"
],
"type": "union"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier",
"description": "Primary account requesting relationships for."
},
"others": {
"type": "array",
"items": {
"type": "string",
"format": "at-identifier"
},
"maxLength": 30,
"description": "List of 'other' accounts to be related back to the primary."
}
}
},
"description": "Enumerates public relationships between one account, and a list of other accounts. Does not require auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,39 @@
{
"id": "app.bsky.graph.getStarterPack",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"starterPack"
],
"properties": {
"starterPack": {
"ref": "app.bsky.graph.defs#starterPackView",
"type": "ref"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"starterPack"
],
"properties": {
"starterPack": {
"type": "string",
"format": "at-uri",
"description": "Reference (AT-URI) of the starter pack record."
}
}
},
"description": "Gets a view of a starter pack."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,45 @@
{
"id": "app.bsky.graph.getStarterPacks",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"starterPacks"
],
"properties": {
"starterPacks": {
"type": "array",
"items": {
"ref": "app.bsky.graph.defs#starterPackViewBasic",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"uris"
],
"properties": {
"uris": {
"type": "array",
"items": {
"type": "string",
"format": "at-uri"
},
"maxLength": 25
}
}
},
"description": "Get views for a list of starter packs."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,71 @@
{
"id": "app.bsky.graph.getStarterPacksWithMembership",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"starterPacksWithMembership"
],
"properties": {
"cursor": {
"type": "string"
},
"starterPacksWithMembership": {
"type": "array",
"items": {
"ref": "#starterPackWithMembership",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier",
"description": "The account (actor) to check for membership."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Enumerates the starter packs created by the session user, and includes membership information about `actor` in those starter packs. Requires auth."
},
"starterPackWithMembership": {
"type": "object",
"required": [
"starterPack"
],
"properties": {
"listItem": {
"ref": "app.bsky.graph.defs#listItemView",
"type": "ref"
},
"starterPack": {
"ref": "app.bsky.graph.defs#starterPackView",
"type": "ref"
}
},
"description": "A starter pack and an optional list item indicating membership of a target user to that starter pack."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,54 @@
{
"id": "app.bsky.graph.getSuggestedFollowsByActor",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"suggestions"
],
"properties": {
"recId": {
"type": "integer",
"description": "DEPRECATED: use recIdStr instead."
},
"recIdStr": {
"type": "string",
"description": "Snowflake for this recommendation, use when submitting recommendation events."
},
"isFallback": {
"type": "boolean",
"default": false,
"description": "DEPRECATED, unused. Previously: if true, response has fallen-back to generic results, and is not scoped using relativeToDid"
},
"suggestions": {
"type": "array",
"items": {
"ref": "app.bsky.actor.defs#profileView",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
}
}
},
"description": "Enumerates follows similar to a given account (actor). Expected use is to recommend additional accounts immediately after following one account."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+63
View File
@@ -0,0 +1,63 @@
{
"id": "app.bsky.graph.list",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"name",
"purpose",
"createdAt"
],
"properties": {
"name": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Display name for list; can not be empty."
},
"avatar": {
"type": "blob",
"accept": [
"image/png",
"image/jpeg"
],
"maxSize": 1000000
},
"labels": {
"refs": [
"com.atproto.label.defs#selfLabels"
],
"type": "union"
},
"purpose": {
"ref": "app.bsky.graph.defs#listPurpose",
"type": "ref",
"description": "Defines the purpose of the list (aka, moderation-oriented or curration-oriented)"
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"description": {
"type": "string",
"maxLength": 3000,
"maxGraphemes": 300
},
"descriptionFacets": {
"type": "array",
"items": {
"ref": "app.bsky.richtext.facet",
"type": "ref"
}
}
}
},
"description": "Record representing a list of accounts (actors). Scope includes both moderation-oriented lists and curration-oriented lists."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+30
View File
@@ -0,0 +1,30 @@
{
"id": "app.bsky.graph.listblock",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"subject",
"createdAt"
],
"properties": {
"subject": {
"type": "string",
"format": "at-uri",
"description": "Reference (AT-URI) to the mod list record."
},
"createdAt": {
"type": "string",
"format": "datetime"
}
}
},
"description": "Record representing a block relationship against an entire an entire list of accounts (actors)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+36
View File
@@ -0,0 +1,36 @@
{
"id": "app.bsky.graph.listitem",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"subject",
"list",
"createdAt"
],
"properties": {
"list": {
"type": "string",
"format": "at-uri",
"description": "Reference (AT-URI) to the list record (app.bsky.graph.list)."
},
"subject": {
"type": "string",
"format": "did",
"description": "The account which is included on the list."
},
"createdAt": {
"type": "string",
"format": "datetime"
}
}
},
"description": "Record representing an account's inclusion on a specific list. The AppView will ignore duplicate listitem records."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+26
View File
@@ -0,0 +1,26 @@
{
"id": "app.bsky.graph.muteActor",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
}
}
},
"encoding": "application/json"
},
"description": "Creates a mute relationship for the specified account. Mutes are private in Bluesky. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,26 @@
{
"id": "app.bsky.graph.muteActorList",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"list"
],
"properties": {
"list": {
"type": "string",
"format": "at-uri"
}
}
},
"encoding": "application/json"
},
"description": "Creates a mute relationship for the specified list of accounts. Mutes are private in Bluesky. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+26
View File
@@ -0,0 +1,26 @@
{
"id": "app.bsky.graph.muteThread",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"root"
],
"properties": {
"root": {
"type": "string",
"format": "at-uri"
}
}
},
"encoding": "application/json"
},
"description": "Mutes a thread preventing notifications from the thread and any of its children. Mutes are private in Bluesky. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,53 @@
{
"id": "app.bsky.graph.searchStarterPacks",
"defs": {
"main": {
"type": "query",
"output": {
"schema": {
"type": "object",
"required": [
"starterPacks"
],
"properties": {
"cursor": {
"type": "string"
},
"starterPacks": {
"type": "array",
"items": {
"ref": "app.bsky.graph.defs#starterPackViewBasic",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Search query string. Syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended."
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string"
}
}
},
"description": "Find starter packs matching search criteria. Does not require auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,52 @@
{
"lexicon": 1,
"id": "app.bsky.graph.searchStarterPacksV2",
"defs": {
"main": {
"type": "query",
"description": "Find starter packs matching search criteria. Does not require auth.",
"parameters": {
"type": "params",
"required": ["q"],
"properties": {
"q": {
"type": "string",
"description": "Search query string. Syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": "string"
}
}
},
"output": {
"encoding": "application/json",
"schema": {
"type": "object",
"required": ["starterPacks"],
"properties": {
"cursor": {
"type": "string"
},
"hitsTotal": {
"type": "integer",
"description": "Estimated total number of matching hits. May be rounded or truncated."
},
"starterPacks": {
"type": "array",
"items": {
"type": "ref",
"ref": "app.bsky.graph.defs#starterPackView"
}
}
}
}
}
}
}
}
+70
View File
@@ -0,0 +1,70 @@
{
"id": "app.bsky.graph.starterpack",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"name",
"list",
"createdAt"
],
"properties": {
"list": {
"type": "string",
"format": "at-uri",
"description": "Reference (AT-URI) to the list record."
},
"name": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Display name for starter pack; can not be empty.",
"maxGraphemes": 50
},
"feeds": {
"type": "array",
"items": {
"ref": "#feedItem",
"type": "ref"
},
"maxLength": 3
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"description": {
"type": "string",
"maxLength": 3000,
"maxGraphemes": 300
},
"descriptionFacets": {
"type": "array",
"items": {
"ref": "app.bsky.richtext.facet",
"type": "ref"
}
}
}
},
"description": "Record defining a starter pack of actors and feeds for new users."
},
"feedItem": {
"type": "object",
"required": [
"uri"
],
"properties": {
"uri": {
"type": "string",
"format": "at-uri"
}
}
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+26
View File
@@ -0,0 +1,26 @@
{
"id": "app.bsky.graph.unmuteActor",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"actor"
],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier"
}
}
},
"encoding": "application/json"
},
"description": "Unmutes the specified account. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
@@ -0,0 +1,26 @@
{
"id": "app.bsky.graph.unmuteActorList",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"list"
],
"properties": {
"list": {
"type": "string",
"format": "at-uri"
}
}
},
"encoding": "application/json"
},
"description": "Unmutes the specified list of accounts. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+26
View File
@@ -0,0 +1,26 @@
{
"id": "app.bsky.graph.unmuteThread",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"root"
],
"properties": {
"root": {
"type": "string",
"format": "at-uri"
}
}
},
"encoding": "application/json"
},
"description": "Unmutes the specified thread. Requires auth."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
+42
View File
@@ -0,0 +1,42 @@
{
"id": "app.bsky.graph.verification",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"subject",
"handle",
"displayName",
"createdAt"
],
"properties": {
"handle": {
"type": "string",
"format": "handle",
"description": "Handle of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current handle matches the one at the time of verifying."
},
"subject": {
"type": "string",
"format": "did",
"description": "DID of the subject the verification applies to."
},
"createdAt": {
"type": "string",
"format": "datetime",
"description": "Date of when the verification was created."
},
"displayName": {
"type": "string",
"description": "Display name of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current displayName matches the one at the time of verifying."
}
}
},
"description": "Record declaring a verification relationship between two accounts. Verifications are only considered valid by an app if issued by an account the app considers trusted."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}