FurniOpsDocs

Probes

Before adding a vendor, probe its site. A probe reads a URL politely and reports the platform with its evidence, any wall, the public feed, sitemaps, structured data coverage and the effort to pull it.

A probe (prb_…) answers "what does this vendor's site offer, and how hard is it to read?" before you add a source. Give it a storefront or product page URL; it reads the site politely in the background and returns a report.

Probe from the dashboard under Sources › Probes (Probe a vendor's URL), or with POST /v1/source-probes, which needs sources:write. Follow it with GET /v1/source-probes/{id}: a probe takes about a minute.

curl https://api.furniops.com/v1/source-probes \
  -H "Authorization: Bearer $FURNIOPS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "url": "https://vendor.example" }'

How a probe reads a site

  • It reads robots.txt first and obeys it, for FurniOps' own, honest user agent.
  • One request at a time, at least a second apart (or the site's crawl delay), and at most 25 requests in all, robots.txt included.
  • It never signs in, solves a challenge or works around a wall: a wall is reported, and means "ask the vendor".

The report

PartWhat it says
platform, confidence, evidenceThe storefront platform (Shopify, WooCommerce, Magento, BigCommerce, Squarespace, Wix, Salesforce Commerce Cloud, Shopware, WordPress, or unknown), a score from 0 to 1, and the public signals it was named from.
wallWhat stopped the probe short, if anything (below).
feedThe platform's public product feed (Shopify or WooCommerce): its status, the products on its first page, the total when it says, and the fields it gives.
sitemapThe sitemaps read, the product pages they list, and whether there were more.
sampleStructured data (JSON-LD) read from a sample of product pages: products found, broken blocks, and the share of products giving each field.
robotsWhat robots.txt said: parsed, unavailable (everything allowed) or unreachable (nothing allowed), its crawl delay and its sitemaps.
disallowed, requests, notesURLs robots.txt kept the probe from, the requests made, and anything else that cut it short.
estimateThe effort to pull the site, the kind of source to use, and the reasons.

Walls

wall.kindMeaning
bot_challengeA bot challenge stood in the way.
loginThe catalogue needs a sign-in.
password_pageThe store is behind a password page.
rate_limitedThe site answered 429.
robots_unreachablerobots.txt did not answer, so nothing is allowed.
robots_disallows_siterobots.txt disallows the site.
crawl_delay_too_longThe crawl delay asked for is too long for a probe.
unreachableThe site could not be reached.

The estimate

effortMeansSuggested kind
lowA public feed.platform_feed
mediumStructured data on most product pages.structured_page
highPages that need a browser.browser
ask_vendorA wall: ask the vendor for a file or API access.vendor

A suggested kind is advice: FurniOps runs only some kinds today.

Limits

  • A catalogue may have 3 probes queued or running at once, and start 20 in 24 hours; one more answers 409 conflict.
  • Probing is in the expensive rate class.
  • Probes belong to the mode they were made in, and are kept with its catalogue.

From a probe to a source

Add the source yourself from what the report says. With AI agents in your plan, the onboarding agent drafts the source for you when FurniOps can run one for the site now (a public feed of a platform it reads, and no wall): the probe's proposal names that proposal, and a person decides.

On this page