IsItKosherApp APIisitkosherapp.com ↗
Search and browse kosher-certified products from isitkosherapp.com. Access product status, certifying authority, brand, category, and more via 6 endpoints.
What is the IsItKosherApp API?
The IsItKosherApp API provides access to kosher-certified product data across 6 endpoints, covering global products organized by country, region, certifying authority, and category. You can search the full database with search_products, drill into a specific country with list_country_products, or retrieve complete product details — including kosher status, brand, certifying authority, and last-updated timestamp — using get_product.
curl -X GET 'https://api.parse.bot/scraper/f48856b6-24bb-488e-8ba6-7d0b64314a0f/list_country_products?page=2&country=ES&category=bebidas' \ -H 'X-API-Key: $PARSE_API_KEY'
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 isitkosherapp-com-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.
"""Walkthrough: Is It Kosher SDK — browse countries, sources, search products, drill into details."""
from parse_apis.isitkosherapp_com_api import IsItKosher, Region, InputNotFound
client = IsItKosher()
# Browse available countries and pick the first European one.
for country in client.countries.list(limit=5):
print(country.country_code, country.name, country.region)
# List certifying authorities.
for source in client.sources.list(limit=3):
print(source.source_code, source.name)
# Search globally for a product keyword.
hit = client.product_summaries.search(query="chocolate", limit=1).first()
if hit is not None:
print(hit.name, hit.brand, hit.status)
# Navigate from the summary to full product details.
detail = hit.details()
print(detail.name, detail.category, detail.source, detail.source_country)
print("related:", len(detail.related_products))
# Browse products in a specific region.
for item in client.product_summaries.list_by_region(region=Region.EUROPE, limit=3):
print(item.name, item.source)
# Use a derived country code to list products for that country.
uk = client.product_summaries.list_by_country(country="GB", limit=1).first()
if uk is not None:
try:
full = client.products.get(product_id=uk.product_id)
print(full.name, full.status, full.updated)
except InputNotFound:
print("product no longer available")
print("exercised: countries.list / sources.list / product_summaries.search /"
" details / list_by_region / list_by_country / products.get")
Lists kosher products certified for one country, one page per call (the site serves 9 products per page). Optionally narrows to a keyword search within that country, or to one of the country's category names (category takes precedence over query when both are given). Returns the product cards, the site's total product count for the current view, the page count, has_more, and the country's category list with per-category counts (empty on category-filtered views). The country is chosen from the Country dropdown (the 50 countries the site currently lists, identical to list_countries.countries[*].country_code); any other 2-letter code is forwarded to the site and yields a stale_input (input_not_found) response when the site has no data for it. The optional source filter keeps only the cards on the requested page whose certifying authority matches (the site has no country-plus-authority view of its own), so total_products, total_pages and has_more still describe the unfiltered country view and a page may come back with an empty products array while has_more is true; walk pages until has_more is false to collect every match. For an authority's complete product list regardless of country, use search_products with source.
| Param | Type | Description |
|---|---|---|
| page | integer | 1-based page number; use total_pages / has_more from the response to continue. |
| query | string | Free-text keyword (product name, brand or category word) to search within the country. Omitted = the country's full product list. |
| source | string | Certifying authority to restrict results to, given either as its display name exactly as the site shows it (e.g. Chabad Barcelona, case-insensitive) or as its source_code from list_sources.sources[*].source_code / get_product.source_code. A name is resolved through the site's authority directory (up to about 9 extra round trips); a code costs one extra round trip. An authority the site does not list yields a stale_input (input_not_found) response. Omitted = no authority filter. |
| countryrequired | string | Country to list, as a 2-letter ISO country code from the Country dropdown (e.g. ES for Spain); the same codes list_countries emits as countries[*].country_code. Case-insensitive. |
| category | string | Exact category name from this endpoint's categories[*].name for the same country. Omitted = no category filter. |
{
"type": "object",
"fields": {
"page": "integer, the page returned",
"has_more": "boolean, true when page < total_pages of the unfiltered view",
"products": "array of product cards: product_id (string, consumed by get_product), name, brand (null when the site lists none), status (kosher status label such as Parve or Dairy), source (certifying authority display name), image_url (null when the site shows its placeholder), url",
"categories": "array of {name, product_count} category facets for the country",
"total_pages": "integer, last page number in the site's pagination",
"total_products": "integer, the site's product count for this view (unfiltered by source)"
},
"sample": {
"data": {
"page": 2,
"has_more": true,
"products": [
{
"url": "https://isitkosherapp.com/product/brand/galletas-bar-chocolate-chip-con-sello/380651",
"name": "galletas bar chocolate chip con sello",
"brand": null,
"source": "Chabad Barcelona",
"status": "Parve",
"image_url": "https://isitkosherapp.com/products/images/ima_VvRP7pE524jrn.jpg",
"product_id": "380651"
},
{
"url": "https://isitkosherapp.com/product/cadbury/galletas-fruit-nut-bars-brunch/380652",
"name": "galletas fruit & nut bars brunch",
"brand": "cadbury",
"source": "Chabad Barcelona",
"status": "Parve",
"image_url": "https://isitkosherapp.com/products/images/ima_xJBPjxA5LKzAy.jpg",
"product_id": "380652"
}
],
"categories": [
{
"name": "aceites y salsas",
"product_count": 50
},
{
"name": "bebidas",
"product_count": 169
}
],
"total_pages": 75,
"total_products": 669
},
"status": "success"
}
}About the IsItKosherApp API
What the API Covers
This API exposes the product database from isitkosherapp.com, a directory of kosher-certified food and consumer products. Each product record carries a name, brand (nullable), status (e.g. Parve, Dairy, Warning, Not Kosher), category, certifying authority (source and source_code), image_url, and a updated timestamp as shown on the site. The get_product endpoint fetches the full detail record for a single product using the product_id string returned by any of the listing endpoints.
Browsing and Searching Products
Three listing endpoints let you browse at different scopes. list_country_products accepts a required 2-letter ISO country code (e.g. ES for Spain), with optional query, source, and category filters — note that category takes precedence over query when both are provided. list_region_products accepts one of the site's eight named world regions and an optional query keyword; unfiltered region views are capped at 1,000 products by the site. search_products queries the full global database by keyword and optionally restricts results to one certifying authority via the source parameter. All three endpoints paginate at 9 products per call and return total_pages, total_products, and has_more to drive pagination.
Authority and Geography Lookups
list_sources returns every kosher certifying authority the site publishes — including each authority's source_code, display name, logo_image_url, and page_url. The source_code from this endpoint is what you pass as the source filter in search_products and list_country_products. list_countries aggregates all eight region pages in one call and returns each country's 2-letter code, display name, and the region it belongs to — giving you the full set of valid inputs for list_country_products and list_region_products. Both meta-endpoints also surface any failed region fetches in regions_failed.
The IsItKosherApp API is a managed, monitored endpoint for isitkosherapp.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when isitkosherapp.com 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 isitkosherapp.com 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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a kosher product lookup tool filtered by country and certifying authority using list_country_products with the source parameter.
- Populate a product catalog with kosher status labels (Parve, Dairy, Not Kosher) fetched via get_product.
- Map kosher certification coverage by country using list_countries and list_country_products total_products counts.
- Filter products to a single certifying authority across the global database using search_products with the source input.
- Display category facets for a region or country using the categories array returned by list_region_products or list_country_products.
- Audit which certifying authorities are active by enumerating list_sources and cross-referencing their source_code values.
- Build region-by-region product browsing using the eight regions exposed by list_region_products.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 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.