local-descriptions
Original:🇺🇸 English
Translated
USE FOR getting AI-generated POI text descriptions. Requires POI IDs obtained from web-search (with result_filter=locations). Returns markdown descriptions grounded in web search context. Max 20 IDs per request.
2installs
Added on
NPX Install
npx skill4agent add brave/brave-search-skills local-descriptionsTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Local Descriptions (Search API)
Requires API Key: Get one at https://api.search.brave.comPlan: Included in the Search plan. See https://api-dashboard.search.brave.com/app/subscriptions/subscribeTwo-step flow: This endpoint requires POI IDs from a prior web search.
- Call
withweb-searchto get POI IDs fromresult_filter=locationslocations.results[].id- Pass those IDs to this endpoint to get AI-generated descriptions
Quick Start (cURL)
Get POI Description
bash
curl -s "https://api.search.brave.com/res/v1/local/descriptions?ids=loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA%3D" \
-H "Accept: application/json" \
-H "Accept-Encoding: gzip" \
-H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}"Multiple POIs
bash
curl -s "https://api.search.brave.com/res/v1/local/descriptions" \
-H "Accept: application/json" \
-H "Accept-Encoding: gzip" \
-H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
-G \
--data-urlencode "ids=loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=" \
--data-urlencode "ids=loc4HTAVTJKP4RBEBZCEMBI3NG26YD4II4PATIHPDYI="Note: POI IDs are opaque strings returned in web search . They are valid for approximately 8 hours. The example IDs above are for illustration — fetch fresh IDs via with .
locations.results[].idweb-searchresult_filter=locationsEndpoint
http
GET https://api.search.brave.com/res/v1/local/descriptionsAuthentication: header
X-Subscription-Token: <API_KEY>Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| string[] | Yes | — | POI IDs from web search |
Response Format
Response Fields
| Field | Type | Description |
|---|---|---|
| string | Always |
| array | List of description objects (entries may be |
| string | Always |
| string | POI identifier matching the request |
| string? | AI-generated markdown description, or |
Example Response
json
{
"type": "local_descriptions",
"results": [
{
"type": "local_description",
"id": "loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=",
"description": "### Overview\nA cozy neighborhood cafe known for its **artisanal coffee**..."
}
]
}Getting POI IDs
POI IDs come from the Web Search API () with :
web-searchresult_filter=locationsbash
# 1. Search for local businesses
curl -s "https://api.search.brave.com/res/v1/web/search?q=restaurants+san+francisco&result_filter=locations" \
-H "Accept: application/json" \
-H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}"
# 2. Extract POI IDs from locations.results[].id
# 3. Use those IDs with local/pois and local/descriptionsUse Cases
- Local business overview: Pair with to get both structured data (hours, ratings) and narrative descriptions
local-pois - Travel/tourism enrichment: Add descriptive context to POIs for travel planning or destination guides
- Search results augmentation: Supplement web search results with AI-generated summaries of local businesses
Notes
- Always markdown: Descriptions use headings, bullet lists, bold/italics — always formatted as markdown
### - Travel-guide tone: Typically 200-400 words covering what makes the POI notable
- AI-generated: Descriptions are AI-generated based on web search context, not sourced from business profiles
- Availability: Not all POIs have descriptions — may be
descriptionnull - Max IDs: Up to 20 IDs per request