532681d5c0
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
114 lines
4.2 KiB
JSON
114 lines
4.2 KiB
JSON
{
|
|
"id": "app.bsky.feed.searchPosts",
|
|
"defs": {
|
|
"main": {
|
|
"type": "query",
|
|
"errors": [
|
|
{
|
|
"name": "BadQueryString"
|
|
}
|
|
],
|
|
"output": {
|
|
"schema": {
|
|
"type": "object",
|
|
"required": [
|
|
"posts"
|
|
],
|
|
"properties": {
|
|
"posts": {
|
|
"type": "array",
|
|
"items": {
|
|
"ref": "app.bsky.feed.defs#postView",
|
|
"type": "ref"
|
|
}
|
|
},
|
|
"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."
|
|
}
|
|
}
|
|
},
|
|
"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."
|
|
},
|
|
"tag": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"maxLength": 640,
|
|
"maxGraphemes": 64
|
|
},
|
|
"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."
|
|
},
|
|
"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."
|
|
},
|
|
"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."
|
|
},
|
|
"sort": {
|
|
"type": "string",
|
|
"default": "latest",
|
|
"description": "Specifies the ranking order of results.",
|
|
"knownValues": [
|
|
"top",
|
|
"latest"
|
|
]
|
|
},
|
|
"limit": {
|
|
"type": "integer",
|
|
"default": 25,
|
|
"maximum": 100,
|
|
"minimum": 1
|
|
},
|
|
"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)."
|
|
},
|
|
"author": {
|
|
"type": "string",
|
|
"format": "at-identifier",
|
|
"description": "Filter to posts by the given account. Handles are resolved to DID before query-time."
|
|
},
|
|
"cursor": {
|
|
"type": "string",
|
|
"description": "Optional pagination mechanism; may not necessarily allow scrolling through entire result set."
|
|
},
|
|
"domain": {
|
|
"type": "string",
|
|
"description": "Filter to posts with URLs (facet links or embeds) linking to the given domain (hostname). Server may apply hostname normalization."
|
|
},
|
|
"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."
|
|
}
|
|
}
|
|
},
|
|
"description": "Find posts matching search criteria, returning views of those posts. Note that this API endpoint may require authentication (eg, not public) for some service providers and implementations."
|
|
}
|
|
},
|
|
"$type": "com.atproto.lexicon.schema",
|
|
"lexicon": 1
|
|
}
|