{
"id": "pub.oysters.getFeed",
"defs": {
"main": {
"type": "query",
"errors": [
{
"name": "InvalidRequest",
"description": "An unknown tag, an unknown sort, or a cursor that did not decode."
}
],
"output": {
"schema": {
"type": "object",
"required": [
"feed"
],
"properties": {
"feed": {
"type": "array",
"items": {
"ref": "pub.oysters.defs#postView",
"type": "ref"
},
"description": "The page, in ranking order."
},
"cursor": {
"type": "string",
"description": "Pass to the next call. Absent when there is nothing more."
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"properties": {
"sort": {
"type": "string",
"default": "hot",
"description": "Ranking to page through. 'hot' is the board's own ranking; 'new' is submission order.",
"knownValues": [
"hot",
"new"
]
},
"tags": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxLength": 10,
"description": "Restrict to submissions carrying any of these tags. OR, not AND. Tags outside the curated vocabulary are an error rather than an empty page, so a typo is visible."
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1,
"description": "How many submissions to return."
},
"cursor": {
"type": "string",
"description": "Opaque. Pass back what the previous page returned; do not construct one."
}
}
},
"description": "A page of the board's feed. Public: no authentication, and the same answer for everybody."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}