appBskyFeedSearchPosts top-level constant
app.bsky.feed.searchPosts
Implementation
const appBskyFeedSearchPosts = <String, dynamic>{
"lexicon": 1,
"id": "app.bsky.feed.searchPosts",
"defs": {
"main": {
"type": "query",
"description":
"Find posts matching search criteria, returning views of those posts.",
"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."
},
"sort": {
"type": "string",
"description": "Specifies the ranking order of results.",
"default": "latest",
"knownValues": ["top", "latest"]
},
"since": {
"type": "string",
"description":
"Filter results for posts after the indicated datetime (inclusive). Expected to use 'sortAt' timestamp, which may not match 'createdAt'. Can be a datetime, or just an ISO date (YYYY-MM-DD)."
},
"until": {
"type": "string",
"description":
"Filter results for posts before the indicated datetime (not inclusive). Expected to use 'sortAt' timestamp, which may not match 'createdAt'. Can be a datetime, or just an ISO date (YYY-MM-DD)."
},
"mentions": {
"type": "string",
"format": "at-identifier",
"description":
"Filter to posts which mention the given account. Handles are resolved to DID before query-time. Only matches rich-text facet mentions."
},
"author": {
"type": "string",
"format": "at-identifier",
"description":
"Filter to posts by the given account. Handles are resolved to DID before query-time."
},
"lang": {
"type": "string",
"format": "language",
"description":
"Filter to posts in the given language. Expected to be based on post language field, though server may override language detection."
},
"domain": {
"type": "string",
"description":
"Filter to posts with URLs (facet links or embeds) linking to the given domain (hostname). Server may apply hostname normalization."
},
"url": {
"type": "string",
"format": "uri",
"description":
"Filter to posts with links (facet links or embeds) pointing to this URL. Server may apply URL normalization or fuzzy matching."
},
"tag": {
"type": "array",
"description":
"Filter to posts with the given tag (hashtag), based on rich-text facet or tag field. Do not include the hash (#) prefix. Multiple tags can be specified, with 'AND' matching.",
"items": {"type": "string", "maxLength": 640, "maxGraphemes": 64}
},
"limit": {
"type": "integer",
"default": 25,
"minimum": 1,
"maximum": 100
},
"cursor": {
"type": "string",
"description":
"Optional pagination mechanism; may not necessarily allow scrolling through entire result set."
}
}
},
"output": {
"encoding": "application/json",
"schema": {
"type": "object",
"required": ["posts"],
"properties": {
"cursor": {"type": "string"},
"hitsTotal": {
"type": "integer",
"description":
"Count of search hits. Optional, may be rounded/truncated, and may not be possible to paginate through all hits."
},
"posts": {
"type": "array",
"items": {"type": "ref", "ref": "app.bsky.feed.defs#postView"}
}
}
}
},
"errors": [
{"name": "BadQueryString"}
]
}
}
};