What is factory.json?
factory.json is an open schema that makes manufacturing facilities machine-readable. It describes a factory's capabilities, certifications, production constraints, and interaction endpoints in a single, standardized JSON file.
By hosting a factory.json file, factories become discoverable by AI agents, procurement platforms, and automated sourcing tools — without needing custom integrations for each platform.
The schema is intentionally flexible: only a factory's name, location, and processes are required. Everything else — materials, equipment, certifications, lead times, quality processes — can be added incrementally as needed.
Quick Start
The smallest valid factory.json needs just four fields:
{
"$schema": "https://argo.trade/factory.schema.json",
"name": "My Factory",
"location": "Shenzhen, CN",
"capabilities": ["CNC milling", "CNC turning"]
}Serve this file at /.well-known/factory.json on your domain to make your factory discoverable.
Field Reference
Root Fields
$schema string (const) requiredMust be "https://argo.trade/factory.schema.json".
version "1.0" Schema version.
name string requiredTrade name of the factory.
legal_name string Registered legal entity name.
description string Short free-text description of the factory.
vertical string Primary industry vertical (free-form, e.g. "machining", "pcb", "textiles").
location string | object requiredFactory location. A simple string ("City, Country") or a structured object with city, country (ISO 3166-1 alpha-2), region, postal_code, and coordinates.
founded_year integer Year the factory was established.
employees { min, max } Employee count range.
languages string[] Languages spoken (ISO 639-1 codes).
website URI Factory website URL.
capabilities string[] | object requiredWhat the factory can produce. Shorthand: array of process strings. Full: object with processes, materials, finishes, and equipment.
certifications object[] Industry certifications. Each entry has type (required), body, id, issued, expires, url.
constraints object Production constraints: moq, lead_time, capacity, max_dimensions, tolerances, min_order_value.
quality object Quality capabilities: testing methods and QC process description.
endpoints object Machine-readable endpoints: rfq, api, mcp, website, email.
media object Visual assets: logo, cover, gallery URIs.
custom object Vertical-specific escape hatch. Any additional key-value pairs for domain-specific data.
capabilities (object form)
When capabilities is an object instead of a simple string array:
processes string[] requiredManufacturing processes offered (free-form strings).
materials string[] Materials the factory can work with.
finishes string[] Surface finishes and post-processing available.
equipment object[] Major equipment. Each: name (required), type, count, specs (free-form object), year_acquired.
constraints
Production constraints and limits. Additional fields are permitted for vertical-specific needs.
moq number | objectMinimum order quantity. Plain number or { min, max, unit }.
lead_time object{ min_days (required), max_days, sample_days }
capacity object{ value (required), unit (required), period }
max_dimensions object{ length, width, height, unit }
tolerances stringGeneral tolerance capability (e.g. "±0.005 mm").
min_order_value object{ amount, currency }
endpoints
Machine-readable interaction endpoints for AI agents and platforms.
rfq URIRFQ submission endpoint.
api URIREST API base URL.
mcp URIMCP (Model Context Protocol) server URI.
website URIFactory website.
email stringContact email address.
certifications[]
Each certification object:
type string requiredCertification name (e.g. "ISO 9001", "GOTS", "UL Listed").
body stringIssuing or certifying body.
id stringCertificate ID or number.
issued / expires date (YYYY-MM-DD)Issuance and expiry dates.
url URILink to certificate or verification page.
quality, media, custom
quality.testing string[]Testing methods and equipment (e.g. "CMM inspection", "AOI").
quality.qc_process stringFree-text description of the QC workflow.
media { logo, cover, gallery }URIs to logo, cover image, and gallery images.
custom objectOpen-ended object for vertical-specific fields (e.g. max_layers for PCB, gsm_range for textiles). Any key-value pairs are allowed.
Examples
Real-world factory profiles across different manufacturing verticals.
{
"$schema": "https://argo.trade/factory.schema.json",
"version": "1.0",
"name": "Precision Works Manufacturing Co.",
"vertical": "machining",
"location": {
"city": "Shenzhen",
"region": "Guangdong",
"country": "CN"
},
"capabilities": {
"processes": ["5-axis CNC milling", "CNC turning", "wire EDM"],
"materials": ["aluminum 6061", "titanium Ti-6Al-4V", "stainless steel 316L", "PEEK"],
"equipment": [
{ "name": "DMG Mori DMU 50", "type": "5-axis CNC mill", "count": 4 },
{ "name": "Mazak QTN-200", "type": "CNC lathe", "count": 6 }
]
},
"certifications": [
{ "type": "ISO 9001:2015", "body": "TÜV SÜD", "expires": "2026-06-14" },
{ "type": "AS9100D", "body": "BSI" },
{ "type": "ITAR Registered", "body": "U.S. DDTC" }
],
"constraints": {
"moq": { "min": 1, "max": 10000, "unit": "pieces" },
"lead_time": { "min_days": 10, "max_days": 35, "sample_days": 5 },
"tolerances": "±0.005 mm standard, ±0.002 mm on request"
},
"quality": {
"testing": ["CMM inspection", "first article inspection (FAI)"]
},
"endpoints": {
"rfq": "https://precisionworks.argo.trade/rfq",
"mcp": "https://precisionworks.argo.trade/.well-known/mcp"
}
}Hosting Your factory.json
1. Create the file
Start from the minimal example above, then add fields as needed. Validate against the schema to ensure correctness.
2. Serve at a well-known path
This follows the RFC 8615 well-known URI convention, making your factory discoverable without any prior knowledge of your site structure.
3. Set the correct Content-Type
Serve the file with Content-Type: application/json. Most web servers do this by default for .json files.
4. Keep it updated
Update your factory.json when capabilities, certifications, or constraints change. AI agents and platforms will periodically re-crawl the file to keep their data fresh.
Want Argo to host it for you?
Register on Argo INFRA and we'll generate and host your factory.json automatically — complete with a verified badge, RFQ endpoint, and MCP server.
Get Early Access