atproto/lexicons/app/bsky/graph/getListsWithMembership.json
rafael c370d933b7
Lists API improvements (#4081)
* Add purposes filter to app.bsky.graph.getLists

* Add getListsWithMembership

* Add getStarterPacksWithMembership

* Refactor list membership hydration

* changeset

* update getStarterPacksWithMembership lexicon output

* bsky: address feedback on list api improvements

* tidy

* tidy

---------

Co-authored-by: Devin Ivy <devinivy@gmail.com>
2025-08-05 01:06:05 -04:00

66 lines
2.0 KiB
JSON

{
"lexicon": 1,
"id": "app.bsky.graph.getListsWithMembership",
"defs": {
"main": {
"type": "query",
"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.",
"parameters": {
"type": "params",
"required": ["actor"],
"properties": {
"actor": {
"type": "string",
"format": "at-identifier",
"description": "The account (actor) to check for membership."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
},
"cursor": { "type": "string" },
"purposes": {
"type": "array",
"description": "Optional filter by list purpose. If not specified, all supported types are returned.",
"items": {
"type": "string",
"knownValues": ["modlist", "curatelist"]
}
}
}
},
"output": {
"encoding": "application/json",
"schema": {
"type": "object",
"required": ["listsWithMembership"],
"properties": {
"cursor": { "type": "string" },
"listsWithMembership": {
"type": "array",
"items": { "type": "ref", "ref": "#listWithMembership" }
}
}
}
}
},
"listWithMembership": {
"description": "A list and an optional list item indicating membership of a target user to that list.",
"type": "object",
"required": ["list"],
"properties": {
"list": {
"type": "ref",
"ref": "app.bsky.graph.defs#listView"
},
"listItem": {
"type": "ref",
"ref": "app.bsky.graph.defs#listItemView"
}
}
}
}
}