Sysco Products Scraper — Catalog, SUPC Codes & Brands avatar

Sysco Products Scraper — Catalog, SUPC Codes & Brands

Pricing

from $11.99 / 1,000 sysco product records

Go to Apify Store
Sysco Products Scraper — Catalog, SUPC Codes & Brands

Sysco Products Scraper — Catalog, SUPC Codes & Brands

Export Sysco products from the public catalog: SUPC item codes, names, brands, pack sizes and images for sourcing research. USD 15.99 per 1,000 products.

Pricing

from $11.99 / 1,000 sysco product records

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

3 hours ago

Last modified

Share

Sysco Products Scraper exports the public Sysco product catalog from Sysco Foodie: SUPC item codes, product names, brands, pack sizes, images and product URLs, with optional detail-page descriptions and pack counts. It costs USD 15.99 per 1,000 products on the FREE tier (USD 0.01599 per product) plus a USD 0.005 start fee, so the default 20-product run costs about USD 0.32.

It is built for foodservice sales and sourcing teams, restaurant consultants, menu and recipe-costing apps, competitive catalog research and AI agents that need Sysco item codes matched to product names and brands.

No prices: Sysco shows prices, stock and order guides only to signed-in customers in Sysco Shop. This Actor reads the public catalog and never signs in.

What Sysco product data does it return?

It returns one record per product, de-duplicated by SUPC.

FieldWhat it means
supcSysco item code (SUPC) as displayed; some products show several codes joined by +
supcCodesThe individual SUPCs as a list
titleProduct name in the public catalog
brandBrand line as listed, for example Keystone or IMPERIAL FRESH
sizePackage or unit size, for example 1 GAL or 12 CT
packPack count (detail page)
displayNameDisplay name (detail page)
descriptionShort catalog description, for example DETERGENT LIQ PRESOAK 2-IN-1 (detail page)
brandCodeBrand code (detail page)
imageUrlProduct image URL
productUrlSysco Foodie product page
sourceListingUrlCatalog page where the product was found, or null for a direct product URL
detailEnrichedtrue when the product page was read
recordTypeAlways product
scrapedAtExtraction time (ISO 8601)

Detail-page fields stay null unless you turn on includeDetails or pass product URLs directly. The OUTPUT key-value record holds the result count, pages finished and failed, warnings and runtime.

How many products are in the public Sysco catalog?

About 2,400. On 2026-10-26 the catalog at https://foodie.sysco.com/sysco-products/ ran to 200 pages of 12 products each (the last page held 5). It spans produce, meat and seafood, dairy, frozen and canned goods, bakery, beverages, disposables and cleaning chemicals across Sysco brand lines. One run can return up to 1,000 products and follow up to 200 catalog pages.

How do I find a Sysco product by SUPC, brand or keyword?

Add words or item codes to searchTerms. A product is kept when any term appears in its SUPC, title, brand or size (and description or brand code once the product page is read). Raise maxPages for narrow terms, because filtering happens on the pages the Actor visits.

Chicken products from the first 10 catalog pages:

{
"startUrls": [{ "url": "https://foodie.sysco.com/sysco-products/" }],
"searchTerms": ["chicken"],
"maxResults": 25,
"maxPages": 10,
"includeDetails": false
}

One product by URL, with pack count and description:

{
"startUrls": [{ "url": "https://foodie.sysco.com/sysco-products/2-in-1-detergent-and-presoak-7217343/" }],
"maxResults": 1,
"maxPages": 1
}

A product URL always returns its detail fields. You can also start from a numbered page such as https://foodie.sysco.com/sysco-products/page/46/. URLs outside foodie.sysco.com/sysco-products/ are rejected before crawling and cost only the start fee.

When should I use it, and when not?

Use it when you need:

  • a spreadsheet of Sysco SUPC codes with names, brands and pack sizes;
  • to match item codes on invoices or spec sheets to public product names;
  • brand and category coverage for competitive or menu research;
  • product images and links for a catalog or recipe-costing tool.

Do not use it when you need:

Use it from an AI assistant

Sysco Products Scraper works from Claude, ChatGPT, Cursor or any MCP client through Apify's MCP server. Add it with https://mcp.apify.com/?tools=muhammadafzal/sysco-food-service-scraper, then ask, for example: "Find Sysco Imperial Fresh produce items and give me their SUPC codes, pack sizes and product links."

Run it with the API

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('muhammadafzal/sysco-food-service-scraper').call({
startUrls: [{ url: 'https://foodie.sysco.com/sysco-products/' }],
searchTerms: ['Keystone'],
maxResults: 20,
maxPages: 20,
includeDetails: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python (apify-client 3.x):

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("muhammadafzal/sysco-food-service-scraper").call(
run_input={"searchTerms": ["7217343"], "maxResults": 1, "maxPages": 5}
)
items = client.dataset(run.default_dataset_id).list_items().items
print(items)

What does the output look like?

An enriched product and a listing-only product from 2026-10-26:

[
{
"recordType": "product",
"supc": "7217343",
"supcCodes": ["7217343"],
"title": "2-in-1 Detergent and Presoak",
"displayName": "2-in-1 Detergent and Presoak",
"description": "DETERGENT LIQ PRESOAK 2-IN-1",
"brandCode": "Keystone",
"brand": "Keystone",
"pack": "4",
"size": "1 GAL",
"imageUrl": "https://image.sysco.com/image-server/product/image/7217343/web/3.jpg",
"productUrl": "https://foodie.sysco.com/sysco-products/2-in-1-detergent-and-presoak-7217343/",
"sourceListingUrl": null,
"detailEnriched": true,
"scrapedAt": "2026-10-26T12:23:05.515Z"
},
{
"recordType": "product",
"supc": "2795896",
"supcCodes": ["2795896"],
"title": "1 Sysco Imperial Granny Smith Apple, Finely Diced",
"displayName": null,
"description": null,
"brandCode": null,
"brand": "IMPERIAL FRESH",
"pack": null,
"size": "12 CT",
"imageUrl": "https://image.sysco.com/image-server/product/image/2795896/web/1.jpg",
"productUrl": "https://foodie.sysco.com/sysco-products/1-sysco-imperial-granny-smith-apple-finely-diced-2795896/",
"sourceListingUrl": "https://foodie.sysco.com/sysco-products/",
"detailEnriched": false,
"scrapedAt": "2026-10-26T12:22:52.234Z"
}
]

How much does it cost? (pricing)

Pay per event. Apify platform usage is included in these prices.

EventFREEBRONZESILVERGOLDPLATINUM / DIAMOND
Sysco product record (one dataset item)USD 0.01599USD 0.01499USD 0.01399USD 0.01199USD 0.01199
Actor start (per started GB of allocated memory)USD 0.005USD 0.005USD 0.005USD 0.005USD 0.005

The default memory is 256 MB, so a run has one start event. Worked totals on the FREE tier:

  • Default run (20 products): 20 × USD 0.01599 + USD 0.005 = USD 0.325
  • Largest run (1,000 products): 1,000 × USD 0.01599 + USD 0.005 = USD 15.995

Detail enrichment adds requests but no second charge. A filter that matches nothing pays only the start event. The status message at run start estimates the result cost from your tier's live per-product price.

How fast is it, and what are the limits?

The catalog is plain HTML, so the Actor uses fast HTTP requests (no browser): up to 5 at a time and 120 per minute, with two retries per page. A listing-only run reads one catalog page per 12 products; includeDetails adds one request per product. The default timeout is 300 seconds.

If every request is blocked, the run fails with 0 products and 0 product charges instead of returning placeholder rows. The Actor makes direct requests and has no proxy setting. The brand field is copied as Sysco lists it and sometimes repeats a product description.

FAQ

Does it return Sysco prices?

No. Sysco shows prices only to signed-in customers, and the Actor never signs in or reads customer accounts.

What is a SUPC?

SUPC is Sysco's item number. Each record has it as supc, and as a list in supcCodes when a product shows more than one.

Can I look up a Sysco item number?

Yes. Put the SUPC in searchTerms and give maxPages enough room, or pass the product URL directly if you have it.

Can I export the whole Sysco catalog?

Up to 1,000 products per run. Split the rest across runs that start at later pages, for example https://foodie.sysco.com/sysco-products/page/84/.

Does it include nutrition or allergen data?

No. It returns what the public catalog shows: names, codes, brands, sizes, pack counts, short descriptions and images.

Why are description and pack empty?

They come from the product page. Turn on includeDetails, or pass product URLs, to fill them.

The Actor reads only the public Sysco Foodie catalog. It does not bypass logins, CAPTCHAs or other access controls and collects no customer or personal data. Product names, images and trademarks belong to their owners; use the data for research and follow Sysco's terms.

Last verified: 2026-10-27