Skip to content

Commit

Permalink
lexicons: new app.bsky.graph.getRelationships endpoint (bluesky-socia…
Browse files Browse the repository at this point in the history
…l#2059)

* lexicons: new app.bsky.graph.getRelationships endpoint

* getRelationships: maxLength 30

* getRelationships: camelCase, consistent, simplify

* getRelationships: remove blocks; and handle in return

* lex: move graph relationships to defs file
  • Loading branch information
bnewbold authored Jan 24, 2024
1 parent ffd6c25 commit fb979b1
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 0 deletions.
27 changes: 27 additions & 0 deletions lexicons/app/bsky/graph/defs.json
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,33 @@
"muted": { "type": "boolean" },
"blocked": { "type": "string", "format": "at-uri" }
}
},
"notFoundActor": {
"type": "object",
"description": "indicates that a handle or DID could not be resolved",
"required": ["actor", "notFound"],
"properties": {
"actor": { "type": "string", "format": "at-identifier" },
"notFound": { "type": "boolean", "const": true }
}
},
"relationship": {
"type": "object",
"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)",
"required": ["did"],
"properties": {
"did": { "type": "string", "format": "did" },
"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"
}
}
}
}
}
51 changes: 51 additions & 0 deletions lexicons/app/bsky/graph/getRelationships.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
"lexicon": 1,
"id": "app.bsky.graph.getRelationships",
"defs": {
"main": {
"type": "query",
"description": "Enumerates public relationships between one account, and a list of other accounts",
"parameters": {
"type": "params",
"required": ["actor"],
"properties": {
"actor": { "type": "string", "format": "at-identifier" },
"others": {
"type": "array",
"maxLength": 30,
"items": {
"type": "string",
"format": "at-identifier"
}
}
}
},
"output": {
"encoding": "application/json",
"schema": {
"type": "object",
"required": ["relationships"],
"properties": {
"actor": { "type": "string", "format": "did" },
"relationships": {
"type": "array",
"items": {
"type": "union",
"refs": [
"app.bsky.graph.def#relationship",
"app.bsky.graph.defs#notFoundActor"
]
}
}
}
}
},
"errors": [
{
"name": "ActorNotFound",
"description": "the primary actor at-identifier could not be resolved"
}
]
}
}
}

0 comments on commit fb979b1

Please sign in to comment.