Discover/Paginas Amarillas API
live

Paginas Amarillas APIpaginasamarillas.es

Search Spanish businesses, retrieve contact details, ratings, reviews, and restaurant listings from paginasamarillas.es via a structured REST API.

Endpoint health
verified 10h ago
search_businesses
get_business_details
search_restaurants
get_search_suggestions
get_business_reviews
5/5 passing latest checkself-healing
Endpoints
5
Updated
26d ago

What is the Paginas Amarillas API?

This API provides access to business data from paginasamarillas.es, Spain's main business directory, across 5 endpoints. Use search_businesses to query by keyword and location and receive paginated results with IDs, addresses, and phone numbers. Separate endpoints cover restaurant search, full business profiles, customer reviews, and autocomplete suggestions for building location-aware search interfaces.

Try it
Page number for pagination.
Search keyword (e.g. 'restaurantes', 'fontaneros')
Location (e.g. 'madrid', 'barcelona')
api.parse.bot/scraper/3e9e5c93-2b2b-4805-b15f-717e6b2169be/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/3e9e5c93-2b2b-4805-b15f-717e6b2169be/search_businesses?page=1&what=restaurantes&where=madrid' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace paginasamarillas-es-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Paginas Amarillas: search Spanish businesses, drill into details and reviews."""
from parse_apis.paginas_amarillas_api import PaginasAmarillas, BusinessNotFound

client = PaginasAmarillas()

# Search for restaurants in Madrid — limit caps total items fetched.
for biz in client.businesssummaries.search(what="restaurantes", where="madrid", limit=3):
    print(biz.name, biz.activity, biz.address)

# Drill into a single result's full details.
first = client.businesssummaries.search(what="fontaneros", where="barcelona", limit=1).first()
if first:
    detail = first.details()
    print(detail.name, detail.phone, detail.email, detail.address)
    for link in detail.social_links:
        print(link.platform, link.url)

# Autocomplete suggestions for location search.
for suggestion in client.businesssummaries.suggest(query="madri", is_what=False, limit=5):
    print(suggestion)

# Reviews sub-resource on a business summary.
if first:
    for review in first.reviews.list(limit=3):
        print(review.content, review.total_likes, review.date_created)

# Typed error handling for a missing business.
try:
    gone = client.businesssummaries.search(what="cerrado", where="madrid", limit=1).first()
    if gone:
        gone.details()
except BusinessNotFound as exc:
    print(f"Business removed: {exc.business_url}")

print("exercised: search / suggest / details / reviews.list / BusinessNotFound")
All endpoints · 5 totalmissing one? ·

Search for businesses by keyword and location. Returns a paginated list of businesses with approximately 28-30 results per page. Clients should check total_results and has_next before requesting higher pages.

Input
ParamTypeDescription
pageintegerPage number for pagination.
whatrequiredstringSearch keyword (e.g. 'restaurantes', 'fontaneros')
whererequiredstringLocation (e.g. 'madrid', 'barcelona')
Response
{
  "type": "object",
  "fields": {
    "page": "integer current page number",
    "results": "array of business objects with id, name, activity, address, phone, url, is_free",
    "has_next": "boolean indicating if more pages are available",
    "total_results": "integer total number of matching businesses"
  },
  "sample": {
    "data": {
      "page": 1,
      "results": [
        {
          "id": "S00423979_000",
          "url": "https://www.paginasamarillas.es/f/madrid/la-daniela-cuchilleros_195495346_000000002.html",
          "name": "La Daniela Cuchilleros",
          "phone": "",
          "address": "Calle de los Cuchilleros, 9, 28005, Madrid",
          "is_free": false,
          "activity": "Cocina castellana"
        }
      ],
      "has_next": true,
      "total_results": 3603
    },
    "status": "success"
  }
}

About the Paginas Amarillas API

Search and Discovery

The search_businesses endpoint accepts two required parameters — what (a keyword like fontaneros or abogados) and where (a city or region like madrid) — and returns up to 28–30 results per page. Each result includes id, name, activity, address, phone, url, and an is_free flag. Use total_results and has_next to paginate through the full result set. The get_search_suggestions endpoint complements this by returning up to 5 autocomplete strings for partial queries; set is_what to true to autocomplete business types, or false to autocomplete locations.

Business Profiles and Reviews

get_business_details takes a full business URL and returns a richer profile: email, website, hours (as an array of day/time objects), social_links (platform and URL pairs), activities, rating, and address. Note that rating, hours, and activities may be null or empty — coverage depends on how complete the individual listing is. get_business_reviews accepts either a full business URL or a numeric container_id and returns review objects sorted newest-first, each carrying content, date_created, total_likes, total_dislikes, total_replies, and is_pinned. A more_available boolean indicates whether additional reviews exist beyond the requested limit.

Restaurant-Specific Search

search_restaurants targets restaurant listings specifically and adds optional cuisine (e.g. cocina-italiana) and price filter parameters on top of the required location field. The response shape mirrors search_businesses. Be aware that cuisine and price filters may not be applied consistently across all locations — validate results against filter intent before relying on them in production.

Reliability & maintenanceVerified

The Paginas Amarillas API is a managed, monitored endpoint for paginasamarillas.es — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when paginasamarillas.es changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official paginasamarillas.es API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
10h ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a Spain business finder using search_businesses with keyword and city inputs
  • Aggregate contact details (phone, email, website, social links) from business profiles for lead generation
  • Display customer sentiment by pulling review content, likes, and dislikes via get_business_reviews
  • Power a restaurant discovery app filtered by cuisine type using search_restaurants
  • Implement location and category autocomplete in a search UI with get_search_suggestions
  • Monitor business listing completeness by checking null fields like rating, hours, and email across profiles
  • Collect opening hours data for businesses in a specific Spanish city or region
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does paginasamarillas.es offer an official developer API?+
Paginas Amarillas Spain does not publish a public developer API or documented data access program. This Parse API provides structured access to the data on the site.
What does get_business_details return beyond what search_businesses provides?+
get_business_details returns fields not present in search results: email, website, hours (as an array of day/time pairs), social_links (per-platform URLs), and a full activities list. rating and reviews_count may still be null if the listing is incomplete.
Are the cuisine and price filters in search_restaurants reliable?+
These filters are accepted as inputs but may not be applied consistently across all locations server-side. Results should be validated against the requested filter values before being surfaced to end users.
Does the API return menu data or dish-level information for restaurants?+
Not currently. Restaurant results include name, address, phone, activity category, and URL — no menu, dish, or pricing detail fields are exposed. You can fork this API on Parse and revise it to add an endpoint targeting menu data if the source exposes it on individual restaurant pages.
How does pagination work across search endpoints?+
Both search_businesses and search_restaurants return approximately 28–30 results per page. The response includes a total_results integer and a has_next boolean. Request successive pages using the page parameter, and stop when has_next is false to avoid empty result pages.
Page content last updated . Spec covers 5 endpoints from paginasamarillas.es.
Related APIs in B2b DirectorySee all →
paginasamarillas.com.pe API
Search and discover Peruvian businesses with instant access to their contact details, including phone numbers, emails, WhatsApp, websites, social media profiles, addresses, and operating hours. Find verified reviews and comprehensive business information all in one place to easily connect with companies across Peru.
páginasamarelas.pt API
Search for Portuguese businesses by name or category, browse Yellow Pages listings, and access detailed company information like contact details, addresses, and services. Find the right local business quickly with filters and comprehensive business profiles from Portugal's official business directory.
paginasamarillas.com.mx API
Access Mexico's largest business directory to find company profiles, browse business categories, search for specific services, and discover industry insights from curated blog content. Build applications that help users discover and learn about Mexican businesses all in one place.
seccionamarilla.com.mx API
Search for Mexican businesses and get their detailed contact information, hours, and locations from Sección Amarilla's comprehensive directory. Browse popular business categories to discover services and companies across Mexico.
yellowpages.com API
Search and retrieve business listings, contact info, hours, categories, and customer reviews from YellowPages.com. Browse by category or location across the US.
pagesjaunes.fr API
Search for business listings across France on PagesJaunes.fr and access customer reviews and detailed location information. Find businesses by keyword and location, and retrieve comprehensive details including addresses, ratings, and reviews.
yellowpages.in API
Search for businesses across India and discover detailed information like contact details, addresses, and services from YellowPages.in's comprehensive business directory. Find relevant business categories with autocomplete suggestions to quickly locate the leads and companies you're looking for.
yellowpages.ca API
Search for businesses across Canada and retrieve detailed information including contact details, ratings, reviews, and website data. Supports keyword and location-based discovery of local businesses for research, analysis, and data enrichment use cases.