Xometry Scraper | Capabilities, Materials & Case Studies
Pricing
from $2.20 / 1,000 results
Xometry Scraper | Capabilities, Materials & Case Studies
Extract Xometry's public capabilities, materials, finishes, industries, resources and case studies, primarily from the US website. Get titles, URLs, FAQs, images and published company contacts. Pay per delivered row plus a start fee.
Pricing
from $2.20 / 1,000 results
Rating
0.0
(0)
Developer
kane liu
Maintained by CommunityActor stats
1
Bookmarked
3
Total users
2
Monthly active users
2 days ago
Last modified
Categories
Security
Limited permissionsShare
Xometry Scraper
Extract Xometry's public manufacturing capabilities, materials, finishes and case studies, primarily from its US website, as rows you can export.
- Page titles, URLs, FAQs, images and content sections.
- Capability, material, industry and resource catalogs.
- Public Xometry headquarters contact details when available, not supplier-network contacts.
- Optional child capability pages as separate rows.
- Pay $3.00 per 1,000 delivered rows on the Free plan, plus a small start fee.
What does Xometry Scraper do?
Xometry Scraper collects public marketing content from Xometry, not manufacturing quotes or private account data. Use it to compare services, organize technical reference material or monitor published case studies. It is an unofficial tool, not affiliated with Xometry.
- Lists: capabilities, materials, finishes, industries, resources and case studies.
- Details: a capability, material or case study selected by its slug.
- URLs: several supported pages through
startUrls. - Discovery: a catalog overview or sitemap sections.
- Child pages:
crawlChildrenis off by default; additional pages count toward the limit and are billed like other rows.
What data can you extract from Xometry?
Rows share the following fields. Availability varies by page; arrays can be empty and scalar values can be null. Tables below separate the main row types and their additional fields.
| Field | Description | Example |
|---|---|---|
rowType | Kind of page or index row | capability |
recordType | Page classification, normally matching rowType | capability |
id | Row identity | cnc-machining-service |
uid | Page identifier | cnc-machining-service |
title | Page title | CNC Machining Services |
url | Page URL | https://www.xometry.com/capabilities/cnc-machining-service/ |
canonicalUrl | Preferred URL published by the source | https://www.xometry.com/capabilities/cnc-machining-service/ |
domain | Domain associated with the row | www.xometry.com |
country | Country label; not proof of localized content | US |
contentDepth | Available content level, not private-account access | api_full |
scrapedAt | Collection timestamp | 2026-10-24T08:00:00+00:00 |
faq | Published question-and-answer entries | [] |
images | Image URLs | [] |
leadAbsences | Reasons contact fields are empty | {} |
Capability rows: capability
| Field | Description | Example |
|---|---|---|
children | Related child capability identifiers | ["cnc-turning-service"] |
tables | Technical table summaries | [] |
Material rows: material
| Field | Description | Example |
|---|---|---|
tables | Material table summaries | [] |
sections | Available content sections | [] |
Finish detail rows: finish
| Field | Description | Example |
|---|---|---|
sections | Finish descriptions | [] |
Finish overview rows: finishes
| Field | Description | Example |
|---|---|---|
sections | Finish overview content | [] |
Industry detail rows: industry
| Field | Description | Example |
|---|---|---|
sections | Industry page content | [] |
Industry overview rows: industries
| Field | Description | Example |
|---|---|---|
sections | Industry overview content | [] |
Article rows: content_post
| Field | Description | Example |
|---|---|---|
category | Published content category | guides |
author | Published author label or identifier | Jane Doe |
Case-study rows: case_study
| Field | Description | Example |
|---|---|---|
author | Case-study author, not a factory contact | Jane Doe |
readTimeMinutes | Published reading-time estimate | 5 |
Home rows: home
| Field | Description | Example |
|---|---|---|
address | Published headquarters address, if present | null |
Contact rows: contact
| Field | Description | Example |
|---|---|---|
phones | Published contact numbers | [{"value":"+1 555 0100","type":"office"}] |
emails | Published contact inboxes | [{"value":"name@example.com","type":"general"}] |
About rows: about
| Field | Description | Example |
|---|---|---|
emails | Published company contact inboxes | [] |
org | Published company identity | {"name":"Xometry, Inc."} |
Capability hub rows: capabilities_hub
| Field | Description | Example |
|---|---|---|
children | Capability identifiers in this selection | ["cnc-machining-service"] |
Material hub rows: materials_hub
| Field | Description | Example |
|---|---|---|
children | Material identifiers in this selection | ["material-cnc-machining-metal"] |
Finish hub rows: finishes_hub
| Field | Description | Example |
|---|---|---|
children | Finish identifiers in this selection | [] |
Industry hub rows: industries_hub
| Field | Description | Example |
|---|---|---|
children | Industry identifiers in this selection | ["automotive"] |
Resource hub rows: resources_hub
| Field | Description | Example |
|---|---|---|
children | Linked content identifiers when available | [] |
Resource overview rows: resources
| Field | Description | Example |
|---|---|---|
sections | Resource overview content | [] |
Content hub rows: content_hub
| Field | Description | Example |
|---|---|---|
title | Content hub title | Resources |
Catalog rows: catalog
| Field | Description | Example |
|---|---|---|
capabilityCount | Reported capability total, when available | null |
materialCount | Reported material total, when available | null |
caseStudyCount | Reported case-study total, when available | null |
Sitemap index rows: sitemap_index
| Field | Description | Example |
|---|---|---|
totalPaths | Number of discovered sitemap paths | 100 |
Sitemap section rows: sitemap_section
| Field | Description | Example |
|---|---|---|
sitemapCount | Number of paths in the section | 20 |
seeds | Suggested page identifiers for later inputs | [] |
Restricted quote-page rows: quoting_gated
| Field | Description | Example |
|---|---|---|
contentDepth | Restriction marker, not quote data | gated |
Restricted account-page rows: auth_gated
| Field | Description | Example |
|---|---|---|
title | Restricted-page label | Authentication required |
Other page rows: page
| Field | Description | Example |
|---|---|---|
title | Available public page title | Xometry |
Contact details on content pages can repeat Xometry headquarters information; they do not identify the manufacturer featured in a case study.
How to scrape Xometry
- Open Xometry Scraper in Apify Console.
- Fill one target field or choose a list mode.
- Set
maxResultsto3for a small first run. - Click Start and wait for completion.
- Download the dataset or read it through the API.
Empty input starts an example using https://www.xometry.com/capabilities/, limited to three rows. Normal event prices still apply. With mode set to auto, one filled target field selects its matching mode. Clear the prefilled startUrls when using a slug instead.
Automatic selection: auto
Use one of startUrls, capabilitySlug, materialSlug or caseStudyUid. When targets conflict, URLs take priority, followed by case-study, capability and material identifiers.
Capabilities: capabilities
List capability pages without a slug. A hub row can also occupy a place in the result limit.
One capability: capability
Fill capabilitySlug. Nested paths such as cnc-machining-service/cnc-turning-service are accepted.
Materials: materials
List material pages and their available descriptions.
One material: material
Fill materialSlug with a published material identifier.
Finishes: finishes
List published finish pages.
Case studies: case_studies
List case studies with available titles, categories and author information.
One case study: case_study
Fill caseStudyUid with the final identifier from its URL.
Page URLs: start_urls
Fill startUrls. A hub URL selects its list; a detail URL selects its page. Home, contact and about pages use this mode too.
Catalog: discover
Get a catalog overview and a limited selection of capabilities and case studies, not a guaranteed full-site export.
Industries: industries
List public industry pages, such as automotive pages.
Resources: resources
List published resource articles, which can include case studies.
Sitemap: enumerate
Get sitemap index and section rows, including suggested page identifiers. These are not full page details.
What to fill in
| Field | What to enter | Default |
|---|---|---|
mode | One of the modes above | auto |
startUrls | Supported Xometry URLs | Empty; form sample is the capabilities hub |
capabilitySlug | Capability identifier or nested path | Empty |
materialSlug | Material identifier | Empty |
caseStudyUid | Case-study identifier | Empty |
maxResults | Rows per input, from 1 to 5,000 | 70; form sample 3 |
country | US, GB, DE or EU; aliases USA, GBR, UK, DEU | US |
domain | www.xometry.com, www.xometry.co.uk, www.xometry.de or www.xometry.eu | www.xometry.com |
crawlChildren | Include additional child capability rows | false |
maxDepth | Child-page depth limit where supported, 0–5 | 2 |
enrichDetails | Request additional details where supported | true |
usePrismic | Keep enabled for standard collection | true |
proxyCountry | Optional two-letter request-country hint | US |
Use matching country and domain values for regional requests. They do not guarantee regional content. Some modes include detailed fields regardless of enrichDetails.
Automatic selection:
{"mode":"auto","capabilitySlug":"cnc-machining-service","maxResults":3}
Capabilities:
{"mode":"capabilities","maxResults":3}
One capability:
{"mode":"capability","capabilitySlug":"cnc-machining-service","maxResults":3}
Materials:
{"mode":"materials","maxResults":3}
One material:
{"mode":"material","materialSlug":"material-cnc-machining-metal","maxResults":1}
Finishes:
{"mode":"finishes","maxResults":3}
Case studies:
{"mode":"case_studies","maxResults":3}
One case study:
{"mode":"case_study","caseStudyUid":"sentrilock","maxResults":1}
Page URLs:
{"mode":"start_urls","startUrls":["https://www.xometry.com/contact-us/"],"maxResults":1}
Catalog:
{"mode":"discover","maxResults":5}
Industries:
{"mode":"industries","maxResults":3}
Resources:
{"mode":"resources","maxResults":3}
Sitemap:
{"mode":"enumerate","maxResults":3}
maxItemsandlimitare aliases formaxResults.- Close field-name misspellings are corrected; other unknown fields are ignored with a note.
- Invalid targets stop collection with
INVALID_INPUT: <field> — <how to fix>, before any row is charged. The start fee can still apply. INPUT_REPORTin the default key-value store records filled, corrected and ignored fields.INPUT_ECHOshows the accepted settings;RUN_SUMMARYrecords completed runs or quota limits, andERROR_SUMMARYrecords failures.
Output example
Illustrative capability row; field availability depends on the source page:
{"rowType": "capability","recordType": "capability","id": "cnc-machining-service","uid": "cnc-machining-service","title": "CNC Machining Services","url": "https://www.xometry.com/capabilities/cnc-machining-service/","domain": "www.xometry.com","country": "US","contentDepth": "api_full","children": ["cnc-turning-service"],"faq": [],"images": [],"phones": [],"emails": [],"address": null,"scrapedAt": "2026-10-24T08:00:00+00:00"}
Export the dataset as JSON, CSV, Excel, XML, RSS or an HTML table. JSON preserves nested arrays and objects.
Why use this Xometry scraper?
- Pay for delivered rows. Page attempts are not separate result charges.
- Several URLs per run. Combine supported targets in
startUrls; duplicate rows are removed. - Missing data stays empty. Contact absence reasons help distinguish missing information from available details.
- Reviewable input. Saved input and error records help explain unexpected results.
- No proxy setup. You do not need to set up proxies.
Rows already written remain in the dataset after a stop. Do not assume that every page collected before an interruption has already been delivered.
How much does it cost to scrape Xometry?
The Actor uses pay-per-event pricing. The start event costs $0.005 per GB of Actor memory, with at least one event charged. At the default 512 MB, the start fee is $0.005. Platform usage is included in these prices.
| Apify plan | Start fee at 512 MB | Price per row | Price per 1,000 rows |
|---|---|---|---|
| Free | $0.005 | $0.003 | $3.00 |
| Starter | $0.005 | $0.003 | $3.00 |
| Scale | $0.005 | $0.0026 | $2.60 |
| Business | $0.005 | $0.0022 | $2.20 |
maxResultsapplies to each input, not the whole run. The default is 70; larger requests are collected in smaller parts as more rows are available.- Free Apify plan users are limited to 10 runs of this Actor and 200 rows per run.
- Maximum cost per run (
maxTotalChargeUsdin the API) limits the whole run's spending. - Hub, catalog and child-page rows count toward the same limits and result price.
Example: three distinct inputs delivering five rows each produce 15 billed rows. On the Free plan at 512 MB, the cost is 15 × $0.003 + $0.005 = $0.050. Fewer delivered rows mean a smaller result charge; the start fee remains.
What happens when the run timeout is too short
Some Xometry collections, such as several startUrls with crawlChildren: true and enrichDetails: true or a large maxResults, can take longer than the run timeout you chose. In that case the run does not fail. It ends early with the status message "Queued on the collection backend; this run will resume automatically when results are ready (about N s)." and shows as ABORTED for a while.
When the results are ready, the same run starts again by itself, reports "Resumed: delivering N rows.", writes the rows to the same dataset and finishes as SUCCEEDED. Rows that were already delivered are skipped, so no row is delivered or charged twice. You do not need to start another run.
- This can happen at most 3 times per run. To avoid it, keep the default timeout of 3600 seconds.
- The synchronous API endpoints (
run-sync,run-sync-get-dataset-items) wait at most 300 seconds and can return an empty dataset while the run is paused. For larger jobs, start the run asynchronously and read the dataset after the run reaches SUCCEEDED, or use a webhook on the "succeeded" event.
Use with AI agents and the API
Apify MCP server
Add this remote server in a compatible Claude, ChatGPT, Cursor or VS Code client:
https://mcp.apify.com?tools=lentic_clockss/xometry-scraper
Sign in with Apify using OAuth when prompted, or send Authorization: Bearer <YOUR_APIFY_TOKEN>. The tool starts a run and returns run and dataset IDs; read rows with get-dataset-items. Clients without remote support can use npx @apify/actors-mcp-server --tools lentic_clockss/xometry-scraper with APIFY_TOKEN.
Example prompt: "Get up to three Xometry capability rows and return their titles and URLs."
Apify API
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("lentic_clockss/xometry-scraper").call(run_input={"mode": "capabilities", "maxResults": 3})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('lentic_clockss/xometry-scraper').call({mode: 'capabilities', maxResults: 3,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Over HTTP, send input JSON to POST https://api.apify.com/v2/acts/lentic_clockss~xometry-scraper/runs with Authorization: Bearer <YOUR_APIFY_TOKEN>. After completion, use GET https://api.apify.com/v2/datasets/<datasetId>/items?format=json.
Integrations
Use the Integrations tab for Google Sheets, Make, Zapier, n8n, Slack, Airtable or webhooks. Apify Schedules can run recurring catalog checks.
FAQ
Is it legal to scrape Xometry?
This Actor targets public data. You are responsible for complying with Xometry's terms and applicable data protection laws. Processing personal data requires a lawful basis; public availability alone does not grant unrestricted reuse rights.
Why did my run end as ABORTED?
An aborted run was stopped before normal completion. Check its status message and log for the actual reason, including any manual stop. Do not assume it will restart automatically. Inspect the dataset before starting another run.
How many results can I get?
Request 1–5,000 rows per input. Availability, duplicate removal, your cost limit and Free-plan caps can reduce delivery. Hub and index rows occupy places in that total.
Why are some fields empty?
Not every page publishes FAQs, images or contact details. Different page types provide different fields. leadAbsences explains missing contact information where available.
Does it return supplier-network contacts?
No. Contact fields describe Xometry's published headquarters or company contacts, not private manufacturing partners. Repeated contact values across pages are not separate suppliers.
Does it support Instant Quote?
No. Part prices, CAD uploads, design-for-manufacturing checks and private quote or order data are outside scope. A restricted-page marker is not a successful quote extraction.
Do regional domains guarantee regional data?
No. The main content coverage is the US website. Regional requests can return US content or fail to provide the requested pages. Check actual URLs and titles rather than relying on country alone.
Does turning off enrichment remove all detail fields?
No. Some modes already provide FAQ, images and published contact data independently of enrichDetails. The setting is not a universal field-removal switch.
Limitations
- Marketing content only, not a supplier directory or transactional API.
- No guarantee of complete regional coverage or a full catalog in a limited run.
- Attribute arrays are capped at 50 entries; large rows can be shortened and marked
rowTruncated. - Child-page depth behavior varies by mode;
maxDepthis not a universal traversal guarantee. - Sitemap rows describe paths, not page contents. Summary counts can exceed the number of detail rows delivered.
- Source changes or unavailable pages can produce fewer rows or a failed run.
Related scrapers
More B2B supplier and wholesale marketplace scrapers from the same publisher:
- GlobalSources Scraper
- Kompass Scraper
- Thomasnet Scraper
- iPROS Scraper
- Europages Scraper
- IndiaMART Scraper
- MonotaRO Scraper
Browse all of our scrapers at apify.com/lentic_clockss.
Support
Report problems or request a field through the Issues tab of this Actor's page. Include the run ID and the input you used.