Labsco
brave logo

local-descriptions

✓ Official158

by brave · part of brave/brave-search-skills

USE FOR getting AI-generated POI text descriptions. Requires POI IDs obtained from web-search (with result_filter=locations). Returns markdown descriptions…

🔥🔥✓ VerifiedFreeQuick setup
🧩 One of 7 skills in the brave/brave-search-skills package — works on its own, and pairs well with its siblings.

USE FOR getting AI-generated POI text descriptions. Requires POI IDs obtained from web-search (with result_filter=locations). Returns markdown descriptions…

Inspect the full instructions your agent will receiveExpand

This is the exact playbook injected into your agent when the skill activates — shown here so you can audit it before installing. You don't need to read it to use the skill.

by brave

USE FOR getting AI-generated POI text descriptions. Requires POI IDs obtained from web-search (with result_filter=locations). Returns markdown descriptions… npx skills add https://github.com/brave/brave-search-skills --skill local-descriptions Download ZIPGitHub158

Local Descriptions (Search API)

Requires API Key: Get one at https://api.search.brave.com

Plan: Included in the Search plan. See https://api-dashboard.search.brave.com/app/subscriptions/subscribe

Two-step flow: This endpoint requires POI IDs from a prior web search.

  • Call web-search with result_filter=locations to get POI IDs from locations.results[].id

  • Pass those IDs to this endpoint to get AI-generated descriptions

Endpoint

Copy & paste — that's it
GET https://api.search.brave.com/res/v1/local/descriptions

Authentication: X-Subscription-Token: <API_KEY> header

Parameters

Parameter Type Required Default Description ids string[] Yes — POI IDs from web search locations.results[].id (1-20, repeated: ?ids=a&ids=b)

Response Format

Response Fields

Field Type Description type string Always "local_descriptions" results array List of description objects (entries may be null) results[].type string Always "local_description" results[].id string POI identifier matching the request results[].description string? AI-generated markdown description, or null if unavailable

Example Response

Copy & paste — that's it
{
 "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 (web-search) with result_filter=locations:

Copy & paste — that's it
# 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/descriptions

Use Cases

  • Local business overview: Pair with local-pois to get both structured data (hours, ratings) and narrative descriptions

  • 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 — description may be null

  • Max IDs: Up to 20 IDs per request