parts.page.mention.search
Search a mention service for matching results. A single XRPC host can serve multiple mention services, distinguished by the service AT URI.
Details · query
| Kind | query |
|---|---|
| Authority | mention.page.parts |
| Indexed |
Checks
Validunlimited-stringdefs.main.parameters.properties.scopeNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.main.parameters.properties.searchNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.mentionLabel.properties.textNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.result.properties.descriptionNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.result.properties.nameNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.result.properties.uriNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.subscopeInfo.properties.scopeNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"aspectRatio": {
"properties": {
"height": {
"type": "integer"
},
"width": {
"type": "integer"
}
},
"required": [
"width",
"height"
],
"type": "object"
},
"embedInfo": {
"properties": {
"aspectRatio": {
"description": "Aspect ratio of the embed. If provided, takes precedence over width/height for sizing.",
"ref": "#aspectRatio",
"type": "ref"
},
"height": {
"description": "Default height of the embed in pixels",
"maximum": 3200,
"minimum": 16,
"type": "integer"
},
"src": {
"description": "Source URL for the iframe embed",
"format": "uri",
"type": "string"
},
"width": {
"description": "Default width of the embed in pixels",
"maximum": 3200,
"minimum": 16,
"type": "integer"
}
},
"required": [
"src"
],
"type": "object"
},
"main": {
"description": "Search a mention service for matching results. A single XRPC host can serve multiple mention services, distinguished by the service AT URI.",
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"results": {
"items": {
"ref": "#result",
"type": "ref"
},
"maxLength": 50,
"type": "array"
}
},
"required": [
"results"
],
"type": "object"
}
},
"parameters": {
"properties": {
"limit": {
"default": 20,
"description": "Maximum number of results to return",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"scope": {
"description": "Optional scope identifier to narrow results within a service, as returned by a previous result's subscope.scope field",
"type": "string"
},
"search": {
"description": "Search query string",
"type": "string"
},
"service": {
"description": "AT URI of the parts.page.mention.service record identifying which service to query",
"format": "at-uri",
"type": "string"
}
},
"required": [
"service",
"search"
],
"type": "params"
},
"type": "query"
},
"mentionLabel": {
"properties": {
"text": {
"type": "string"
}
},
"type": "object"
},
"result": {
"properties": {
"description": {
"description": "A description for the mentioned entity",
"type": "string"
},
"embed": {
"description": "Optional embed info for creating an embed block instead of an inline mention",
"ref": "#embedInfo",
"type": "ref"
},
"href": {
"description": "Optional web URL for the mentioned entity",
"format": "uri",
"type": "string"
},
"icon": {
"description": "Optional icon URL for the mentioned entity, displayed next to the mention",
"format": "uri",
"type": "string"
},
"labels": {
"description": "A set of labels to be rendered with the mentionedEntity",
"items": {
"ref": "#mentionLabel",
"type": "ref"
},
"type": "array"
},
"name": {
"description": "Display name for the mentioned entity",
"type": "string"
},
"subscope": {
"description": "Optional subscope info indicating this result can be scoped into for further searching",
"ref": "#subscopeInfo",
"type": "ref"
},
"uri": {
"description": "Identifier for the mentioned entity",
"type": "string"
}
},
"required": [
"uri",
"name"
],
"type": "object"
},
"subscopeInfo": {
"properties": {
"label": {
"description": "Display label for the scope-down button (e.g. 'Posts', 'Tracks')",
"maxLength": 100,
"type": "string"
},
"scope": {
"description": "Scope identifier passed back to the service in subsequent search queries",
"type": "string"
}
},
"required": [
"scope",
"label"
],
"type": "object"
}
},
"id": "parts.page.mention.search",
"lexicon": 1
}