, `$`, `$ local-pois · Skills-SI Market , `$$`) |\n| `serves_cuisine` | string[]? | Cuisine types (restaurants) |\n| `thumbnail.src` | string? | Thumbnail image URL |\n| `thumbnail.original` | string? | Original image URL |\n| `profiles` | object[]? | External profiles (`name`, `url`, `long_name`, `img`) |\n| `reviews.reviews_in_foreign_language` | bool | Whether reviews in a foreign language are available |\n| `pictures.results` | object[]? | Photo thumbnails |\n| `action` | object? | Action to take — has `type` (string) and `url` (string) |\n| `results` | object[]? | Related web results (`LocationWebResult` with `meta_url`) |\n| `timezone` | string? | IANA timezone (e.g., `America/Los_Angeles`) |\n| `timezone_offset` | int? | UTC timezone offset |\n\n### Example Response\n\n```json\n{\n \"type\": \"local_pois\",\n \"results\": [\n {\n \"type\": \"location_result\",\n \"title\": \"Park Mediterranean Grill\",\n \"url\": \"https://yelp.com/biz/park-mediterranean-grill-sf\",\n \"provider_url\": \"https://yelp.com/biz/park-mediterranean-grill-sf\",\n \"id\": \"loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=\",\n \"postal_address\": {\n \"type\": \"PostalAddress\",\n \"displayAddress\": \"123 Main St, San Francisco, CA 94102\",\n \"streetAddress\": \"123 Main St\",\n \"addressLocality\": \"San Francisco\",\n \"addressRegion\": \"CA\",\n \"postalCode\": \"94102\",\n \"country\": \"US\"\n },\n \"contact\": { \"telephone\": \"+1 415-555-0123\" },\n \"thumbnail\": {\n \"src\": \"https://example.com/thumb.jpg\",\n \"original\": \"https://example.com/original.jpg\"\n },\n \"rating\": {\n \"ratingValue\": 4.5,\n \"bestRating\": 5.0,\n \"reviewCount\": 234,\n },\n \"opening_hours\": {\n \"current_day\": [\n { \"abbr_name\": \"Mon\", \"full_name\": \"Monday\", \"opens\": \"07:00\", \"closes\": \"21:00\" }\n ]\n },\n \"coordinates\": [37.7749, -122.4194],\n \"distance\": { \"value\": 0.3, \"units\": \"miles\" },\n \"categories\": [\"Mediterranean\", \"Greek\"],\n \"price_range\": \"$\",\n \"serves_cuisine\": [\"Mediterranean\", \"Greek\"],\n \"timezone\": \"America/Los_Angeles\"\n }\n ]\n}\n```\n\n## Getting POI IDs\n\n`local-place-search` returns POI IDs directly. They also come from the **Web Search API** (`web-search`) with `result_filter=locations`:\n\n```bash\n# 1. Search for local businesses\ncurl -s \"https://api.search.brave.com/res/v1/web/search?q=coffee+shops+near+me&result_filter=locations\" \\\n -H \"Accept: application/json\" \\\n -H \"X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}\" \\\n -H \"X-Loc-Lat: 37.7749\" \\\n -H \"X-Loc-Long: -122.4194\"\n\n# 2. Extract POI IDs from locations.results[].id\n# 3. Use those IDs with this endpoint\n```\n\n## Use Cases\n\n- **Local business lookup**: Retrieve full details (hours, contact, address) for POIs surfaced in web search\n- **Restaurant discovery pipeline**: Search for restaurants, fetch POI details, filter by cuisine/rating/price_range\n- **Business hours checker**: Get opening_hours for a business to determine if currently open\n- **Location-aware application**: Combine with location headers to get distance calculations for nearby POIs\n\n## Notes\n\n- **ID format**: Opaque strings (use `--data-urlencode` for cURL)\n- **Units**: `metric` or `imperial` for distance measurement preference\n- **Max IDs**: Up to 20 IDs per request\n","licenseDocuments":[]}}
L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Développement · SKILL.md

local-pois

local-pois

USE FOR getting local business/POI details. Requires POI IDs from local-place-search, or from web-search with result_filter=locations. Returns full business information including ratings, hours, contact info. Max 20 IDs.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: local-pois description: USE FOR getting local business/POI details. Requires POI IDs from local-place-search, or from web-search with result_filter=locations. Returns full business information including ratings, hours, contact info. Max 20 IDs.

Local POIs (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 search.

  1. Get POI IDs from local-place-search, or from web-search with result_filter=locations (locations.results[].id)
  2. Pass those IDs to this endpoint to get full business details

Quick Start (cURL)

Get POI Details

curl -s "https://api.search.brave.com/res/v1/local/pois" \
  -H "Accept: application/json" \
  -H "Accept-Encoding: gzip" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
  -G \
  --data-urlencode "ids=loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA="

Multiple POIs with Location Headers

curl -s "https://api.search.brave.com/res/v1/local/pois" \
  -H "Accept: application/json" \
  -H "Accept-Encoding: gzip" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
  -H "X-Loc-Lat: 37.7749" \
  -H "X-Loc-Long: -122.4194" \
  -G \
  --data-urlencode "ids=loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=" \
  --data-urlencode "ids=loc4HTAVTJKP4RBEBZCEMBI3NG26YD4II4PATIHPDYI=" \
  --data-urlencode "units=imperial"

Note: POI IDs are opaque strings returned in web search locations.results[].id. IDs are ephemeral and expire after ~8 hours. The example IDs above are for illustration — fetch fresh IDs via web-search with result_filter=locations. Use --data-urlencode since IDs may contain =.

Endpoint

GET https://api.search.brave.com/res/v1/local/pois

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

Parameters

ParameterTypeRequiredDefaultDescription
idsstring[]Yes—POI IDs from web search results (1-20)
search_langstringNoenLanguage preference (2+ char language code)
ui_langstringNoen-USUI language (locale code, e.g., "en-US")
unitsstringNonullmetric (km) or imperial (miles)

Location Headers (Optional)

For distance calculation from user location:

HeaderTypeRangeDescription
X-Loc-Latfloat-90.0 to 90.0User latitude
X-Loc-Longfloat-180.0 to 180.0User longitude

Response Fields

The response has type: "local_pois" and a results array of LocationResult objects:

FieldTypeDescription
titlestringBusiness/POI name
urlstringCanonical URL for the location
provider_urlstringProvider page URL
typestringAlways "location_result"
idstringPOI identifier (opaque string, valid ~8 hours)
descriptionstring?Short description
postal_address.typestringAlways "PostalAddress"
postal_address.displayAddressstringFormatted display address
postal_address.streetAddressstring?Street address
postal_address.addressLocalitystring?City
postal_address.addressRegionstring?State/region
postal_address.postalCodestring?Postal/ZIP code
postal_address.countrystring?Country code
contact.telephonestring?Phone number
contact.emailstring?Email address
rating.ratingValuefloat?Average rating (≥0)
rating.bestRatingfloat?Max possible rating
rating.reviewCountint?Number of reviews
rating.profile.namestring?Rating provider name
rating.profile.urlstring?Rating provider URL
opening_hours.current_dayobject[]?Today's hours (abbr_name, full_name, opens, closes)
opening_hours.daysobject[][]?Hours for each day of the week (same structure)
coordinates[float, float]?[latitude, longitude] tuple
distance.valuefloat?Distance from user location
distance.unitsstring?Distance unit (km or miles)
categoriesstring[]Business categories (default [])
price_rangestring?Price indicator ($, $, $$, $$)
serves_cuisinestring[]?Cuisine types (restaurants)
thumbnail.srcstring?Thumbnail image URL
thumbnail.originalstring?Original image URL
profilesobject[]?External profiles (name, url, long_name, img)
reviews.reviews_in_foreign_languageboolWhether reviews in a foreign language are available
pictures.resultsobject[]?Photo thumbnails
actionobject?Action to take — has type (string) and url (string)
resultsobject[]?Related web results (LocationWebResult with meta_url)
timezonestring?IANA timezone (e.g., America/Los_Angeles)
timezone_offsetint?UTC timezone offset

Example Response

{
  "type": "local_pois",
  "results": [
    {
      "type": "location_result",
      "title": "Park Mediterranean Grill",
      "url": "https://yelp.com/biz/park-mediterranean-grill-sf",
      "provider_url": "https://yelp.com/biz/park-mediterranean-grill-sf",
      "id": "loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=",
      "postal_address": {
        "type": "PostalAddress",
        "displayAddress": "123 Main St, San Francisco, CA 94102",
        "streetAddress": "123 Main St",
        "addressLocality": "San Francisco",
        "addressRegion": "CA",
        "postalCode": "94102",
        "country": "US"
      },
      "contact": { "telephone": "+1 415-555-0123" },
      "thumbnail": {
        "src": "https://example.com/thumb.jpg",
        "original": "https://example.com/original.jpg"
      },
      "rating": {
        "ratingValue": 4.5,
        "bestRating": 5.0,
        "reviewCount": 234,
      },
      "opening_hours": {
        "current_day": [
          { "abbr_name": "Mon", "full_name": "Monday", "opens": "07:00", "closes": "21:00" }
        ]
      },
      "coordinates": [37.7749, -122.4194],
      "distance": { "value": 0.3, "units": "miles" },
      "categories": ["Mediterranean", "Greek"],
      "price_range": "$",
      "serves_cuisine": ["Mediterranean", "Greek"],
      "timezone": "America/Los_Angeles"
    }
  ]
}

Getting POI IDs

local-place-search returns POI IDs directly. They also come from the Web Search API (web-search) with result_filter=locations:

# 1. Search for local businesses
curl -s "https://api.search.brave.com/res/v1/web/search?q=coffee+shops+near+me&result_filter=locations" \
  -H "Accept: application/json" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
  -H "X-Loc-Lat: 37.7749" \
  -H "X-Loc-Long: -122.4194"

# 2. Extract POI IDs from locations.results[].id
# 3. Use those IDs with this endpoint

Use Cases

  • Local business lookup: Retrieve full details (hours, contact, address) for POIs surfaced in web search
  • Restaurant discovery pipeline: Search for restaurants, fetch POI details, filter by cuisine/rating/price_range
  • Business hours checker: Get opening_hours for a business to determine if currently open
  • Location-aware application: Combine with location headers to get distance calculations for nearby POIs

Notes

  • ID format: Opaque strings (use --data-urlencode for cURL)
  • Units: metric or imperial for distance measurement preference
  • Max IDs: Up to 20 IDs per request
Skills enregistrées