Discover/local API
live

local APIlocal.ch ↗

Search Swiss businesses, retrieve contact details, opening hours, ratings, and perform reverse phone lookups via the local.ch directory API.

Endpoint health
verified 4d ago
get_business_detail
search_businesses
phone_number_lookup
get_search_results_by_url
4/4 passing latest checkself-healing
Endpoints
4
Updated
25d ago

What is the local API?

The local.ch API exposes 4 endpoints for querying Switzerland's largest business directory, covering keyword search, business detail lookup, reverse phone number lookup, and search-by-URL retrieval. The search_businesses endpoint returns paginated results with fields including address, telephone, mobile, email, website, rating, and review_count. The get_business_detail endpoint adds opening hours, categories, and images for any individual listing.

This call costs1 credit / call— charged only on success
Try it
Page number for pagination
Search keyword for business type or name (e.g. 'garage', 'restaurant', 'bank')
Location to search in, typically a Swiss city name (e.g. 'Zurich', 'Geneva', 'Basel')
→ api.parse.bot/scraper/44627546-fc9a-414a-b949-1ecffd9f66b8/<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/44627546-fc9a-414a-b949-1ecffd9f66b8/search_businesses?page=1&what=restaurant&where=Zurich' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 4 totalmissing one? ·

Search for businesses in the local.ch directory by keyword and location. Returns a paginated list of business listings with basic contact information. Pagination is page-number based. Each result includes a detail_url for fetching full business information via get_business_detail.

Input
ParamTypeDescription
pageintegerPage number for pagination
whatrequiredstringSearch keyword for business type or name (e.g. 'garage', 'restaurant', 'bank')
whererequiredstringLocation to search in, typically a Swiss city name (e.g. 'Zurich', 'Geneva', 'Basel')
Response
{
  "type": "object",
  "fields": {
    "query": "object containing what, where, and page parameters used",
    "businesses": "array of business listing objects with name, detail_url, id, address, telephone, mobile, email, website, rating, review_count, and categories",
    "total_count": "integer or null — total number of results if available"
  },
  "sample": {
    "data": {
      "query": {
        "page": 1,
        "what": "restaurant",
        "where": "Zurich"
      },
      "businesses": [
        {
          "id": "E2FE14_t_A8FFW9_xUkXBQ",
          "name": "George Bar & Grill",
          "email": null,
          "mobile": null,
          "rating": null,
          "address": "Gessnerallee 5, 8001 Zürich",
          "website": null,
          "telephone": "+1 (555) 012-3456",
          "categories": [],
          "detail_url": "https://www.local.ch/en/d/zurich/8001/restaurant/george-bar-grill-E2FE14_t_A8FFW9_xUkXBQ",
          "review_count": 0
        }
      ],
      "total_count": null
    },
    "status": "success"
  }
}

About the local API

Search and Retrieve Swiss Business Listings

The search_businesses endpoint accepts two required parameters — what (a keyword such as garage or restaurant) and where (a Swiss city name such as Zurich or Basel) — and returns a paginated list of matching directory entries. Each entry exposes name, address, telephone, mobile, email, website, rating, review_count, and a detail_url that can be passed directly to get_business_detail. The total_count field tells you how many results the directory holds for that query, though it may be null for some searches.

Business Detail and Phone Lookup

get_business_detail takes a full local.ch business URL and returns the complete available profile: contact fields (telephone, mobile, email, website), categories as an array of strings, images as an array of URLs, rating, and address. Not every field is populated for every listing — businesses that haven't filled out their profile will return null or empty values for some fields. The phone_number_lookup endpoint accepts a Swiss phone number in either spaced or unspaced format and returns all directory entries associated with that number, including the name, address, and contact details of any matched business or person.

Browsing by Search URL

The get_search_results_by_url endpoint accepts a full local.ch search-results URL — including German (/de/), French (/fr/), Italian (/it/), or English (/en/) path variants — and returns listings in the order the site displays them. Each result includes a 1-based position, name, detail_url, and contact fields. The has_next_page boolean and total_count make it straightforward to paginate through an entire result set. The optional page parameter overrides any page already embedded in the supplied URL.

Reliability & maintenanceVerified

The local API is a managed, monitored endpoint for local.ch — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when local.ch 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 local.ch 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
4d ago
Latest check
4/4 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 lead list of Swiss businesses by category and city using search_businesses with what and where parameters
  • Enrich a CRM with verified phone numbers, email addresses, and website URLs pulled from get_business_detail
  • Identify the owner of an unknown Swiss phone number using phone_number_lookup
  • Monitor directory presence and ratings for a chain of Swiss locations across multiple cities
  • Aggregate business listings for a specific search URL to compare rankings over time with get_search_results_by_url
  • Collect category tags and images for Swiss business profiles to populate a local services app
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does local.ch offer an official developer API?+
local.ch does not publish a public developer API or documented API program. The Parse API provides structured access to the directory's business and contact data.
What does `get_business_detail` return that `search_businesses` does not?+
get_business_detail adds categories (array of category strings), images (array of image URLs), and a full address field. The search endpoint returns these same contact fields at a summary level, but some fields — particularly categories and images — are only populated in the detail response.
Does every phone number lookup return a result?+
No. Coverage depends entirely on what is listed in the local.ch directory. Numbers belonging to unlisted individuals, businesses that have opted out, or non-Swiss numbers will return an empty results array. The total_count field will be 0 or null in those cases.
Does the API return opening hours for businesses?+
Opening hours are not currently exposed as a structured field in the get_business_detail response. The endpoint covers contact details, categories, images, and ratings. You can fork this API on Parse and revise get_business_detail to add an opening hours field if the source listing includes that data.
Can I retrieve user reviews and review text, not just the aggregate rating?+
The current endpoints return rating (numeric average) and review_count (integer) but do not expose individual review text or reviewer metadata. You can fork this API on Parse and revise it to add a reviews endpoint that returns individual review entries for a given business.
Page content last updated . Spec covers 4 endpoints from local.ch.
Related APIs in B2b DirectorySee all →
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.
gelbeseiten.de API
Search for businesses on Gelbe Seiten (gelbeseiten.de) by keyword and location, and retrieve full business details including contact information, opening hours, categories, and reviews.
homegate.ch API
Access data from Homegate.ch.
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.
yelp.com API
Search for businesses on Yelp and access their detailed information including reviews, photos, and ratings all from one interface. Get comprehensive business data like hours, contact details, and customer feedback without visiting Yelp directly.
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.
ricardo.ch API
Search and browse marketplace listings across Ricardo.ch, Switzerland's largest online marketplace, with powerful filtering by category and sorting options including price, relevance, recency, and auction activity. Quickly discover products tailored to your interests and find the best deals based on your preferred search criteria.
telecontact.ma API
Find businesses, phone numbers, and reviews across Morocco using Telecontact.ma's comprehensive directory—search by business name, location, phone number, brand, or ICE registration, and access detailed contact information, ratings, and top-rated companies in any category. Discover local services, browse by activity type, and identify leading brands all in one place.