{"openapi":"3.1.0","info":{"title":"Sourceory API","version":"1.0.0","description":"Sourceory determines whether a project's bill of materials meets the Build America, Buy America (BABA) domestic-content standards for the funding agency, line by line: iron and steel, manufactured products at the 55 percent component-cost threshold, and construction materials. Every verdict cites the OMB or agency source behind it, and where we hold no guidance for an agency we say so rather than reporting a pass. The free calculator runs entirely in your browser, so bill-of-materials data is never transmitted. The same engine is a single-key JSON API and an MCP server, so estimating and bid software, and autonomous compliance agents, can run a determination mid-task.","contact":{"name":"Sourceory","url":"https://www.sourceory.com","email":"hello@sourceory.com"}},"servers":[{"url":"https://www.sourceory.com"}],"security":[{},{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"src_live_*"}},"schemas":{"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}},"Citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]},"BomLineItem":{"type":"object","properties":{"component":{"type":"string","description":"Component name, e.g. \"structural steel beam\"."},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"cost":{"type":"number","minimum":0,"description":"Total delivered cost, whole US dollars."},"allManufacturingInUS":{"type":"boolean","description":"iron_steel / construction_material test."},"manufacturedInUS":{"type":"boolean","description":"manufactured_product: final product made in US."},"domesticComponentCost":{"type":"number","minimum":0,"description":"manufactured_product: US-origin component cost. Must not exceed cost, since it is part of the total component cost rather than additional to it."},"countryOfOrigin":{"type":"string"}},"required":["category","cost"]},"DeterminationInput":{"type":"object","properties":{"agencySlug":{"type":"string","description":"Funding agency slug: omb, fhwa, epa-srf, usda-rd."},"lines":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","description":"Component name, e.g. \"structural steel beam\"."},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"cost":{"type":"number","minimum":0,"description":"Total delivered cost, whole US dollars."},"allManufacturingInUS":{"type":"boolean","description":"iron_steel / construction_material test."},"manufacturedInUS":{"type":"boolean","description":"manufactured_product: final product made in US."},"domesticComponentCost":{"type":"number","minimum":0,"description":"manufactured_product: US-origin component cost. Must not exceed cost, since it is part of the total component cost rather than additional to it."},"countryOfOrigin":{"type":"string"}},"required":["category","cost"]},"minItems":1,"description":"The project bill of materials. The maximum number of lines per call is your plan's batch allowance, published at /api/v1/pricing as bom_lines_per_run."},"asOfDate":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"The date the project's federal funds were (or will be) obligated. Standards phase in by obligation date, so this decides which phase governs. Strongly recommended; when omitted the ruleset's own date is used and reported back in standardsAsOf."}},"required":["agencySlug","lines"]},"LineFinding":{"type":"object","properties":{"lineIndex":{"type":"integer"},"component":{"type":"string"},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"verdict":{"type":"string","enum":["compliant","non_compliant","waiver_eligible","insufficient_data"],"description":"compliant: meets the governing standard. non_compliant: fails it on the facts supplied. waiver_eligible: fails the standard AND the project-level de minimis test was computed and passed, so a de minimis waiver may cover the line; it must still be applied for and granted and is NOT a pass. insufficient_data: the facts supplied cannot reach a verdict, also NOT a pass."},"domesticContentPct":{"type":["number","null"]},"thresholdPct":{"type":["number","null"]},"summary":{"type":"string"},"rule":{"type":"string"},"remedy":{"type":"string"},"applicableWaivers":{"type":"array","items":{"type":"string"},"description":"Waiver categories whose quantitative test this line was VERIFIED to meet. Only present when verdict is waiver_eligible."},"waiverRoutes":{"type":"array","items":{"type":"string"},"description":"Qualitative waiver categories a bidder may be able to pursue for a failing line. Their tests turn on facts this API does not hold (market availability, competing bid prices), so they have NOT been evaluated. Leads to investigate, never findings, and they do not soften the verdict. Present on non_compliant lines only."},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}},"required":["lineIndex","component","category","verdict","summary","rule","remedy"]},"DeterminationResult":{"type":"object","properties":{"input":{"type":"object","properties":{"agencySlug":{"type":"string","description":"Funding agency slug: omb, fhwa, epa-srf, usda-rd."},"lines":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","description":"Component name, e.g. \"structural steel beam\"."},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"cost":{"type":"number","minimum":0,"description":"Total delivered cost, whole US dollars."},"allManufacturingInUS":{"type":"boolean","description":"iron_steel / construction_material test."},"manufacturedInUS":{"type":"boolean","description":"manufactured_product: final product made in US."},"domesticComponentCost":{"type":"number","minimum":0,"description":"manufactured_product: US-origin component cost. Must not exceed cost, since it is part of the total component cost rather than additional to it."},"countryOfOrigin":{"type":"string"}},"required":["category","cost"]},"minItems":1,"description":"The project bill of materials. The maximum number of lines per call is your plan's batch allowance, published at /api/v1/pricing as bom_lines_per_run."},"asOfDate":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"The date the project's federal funds were (or will be) obligated. Standards phase in by obligation date, so this decides which phase governs. Strongly recommended; when omitted the ruleset's own date is used and reported back in standardsAsOf."}},"required":["agencySlug","lines"]},"agency":{"type":["object","null"],"properties":{"slug":{"type":"string"},"name":{"type":"string"},"program":{"type":"string"}}},"findings":{"type":"array","items":{"type":"object","properties":{"lineIndex":{"type":"integer"},"component":{"type":"string"},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"verdict":{"type":"string","enum":["compliant","non_compliant","waiver_eligible","insufficient_data"],"description":"compliant: meets the governing standard. non_compliant: fails it on the facts supplied. waiver_eligible: fails the standard AND the project-level de minimis test was computed and passed, so a de minimis waiver may cover the line; it must still be applied for and granted and is NOT a pass. insufficient_data: the facts supplied cannot reach a verdict, also NOT a pass."},"domesticContentPct":{"type":["number","null"]},"thresholdPct":{"type":["number","null"]},"summary":{"type":"string"},"rule":{"type":"string"},"remedy":{"type":"string"},"applicableWaivers":{"type":"array","items":{"type":"string"},"description":"Waiver categories whose quantitative test this line was VERIFIED to meet. Only present when verdict is waiver_eligible."},"waiverRoutes":{"type":"array","items":{"type":"string"},"description":"Qualitative waiver categories a bidder may be able to pursue for a failing line. Their tests turn on facts this API does not hold (market availability, competing bid prices), so they have NOT been evaluated. Leads to investigate, never findings, and they do not soften the verdict. Present on non_compliant lines only."},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}},"required":["lineIndex","component","category","verdict","summary","rule","remedy"]}},"summary":{"type":"object","properties":{"totalLines":{"type":"integer"},"compliant":{"type":"integer"},"nonCompliant":{"type":"integer"},"waiverEligible":{"type":"integer"},"insufficientData":{"type":"integer"},"totalCost":{"type":"number"},"projectDomesticContentPct":{"type":"number","description":"Cost-weighted domestic share of the whole bill of materials. This is a portfolio metric, NOT a BABA test: BABA has no project-level percentage, so a project can sit at 90 percent here and still be non-compliant because one item failed an all-or-nothing standard. Never report it as a compliance result."},"compliantOverall":{"type":"boolean"}}},"deMinimis":{"type":"object","description":"The project-level de minimis arithmetic from OMB M-24-02, always returned so the caller can check it. `applies` true is what moves failing lines to waiver_eligible.","properties":{"applies":{"type":"boolean"},"nonCompliantCost":{"type":"number"},"excludedCost":{"type":"number","description":"Non-compliant cost the agency excludes from this waiver (e.g. FHWA iron and steel)."},"applicableCost":{"type":"number"},"capUsd":{"type":"number","description":"The lesser of the percentage allowance and the absolute dollar cap."},"pctOfApplicableCost":{"type":"number"},"maxUsd":{"type":"number"},"note":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}},"standardsAsOf":{"type":"object","description":"Which day's rules this verdict was resolved under. A BABA verdict is meaningless without it.","properties":{"date":{"type":"string","format":"date"},"suppliedByCaller":{"type":"boolean","description":"False when asOfDate was omitted and the ruleset's own date was used."},"upcomingChange":{"type":["object","null"],"description":"The next scheduled standard change after `date`, when one is known.","properties":{"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"from":{"type":"string","format":"date"},"statement":{"type":"string"}}}}},"coverage":{"type":"object","properties":{"agenciesLoaded":{"type":"integer"},"waiverCategoriesLoaded":{"type":"integer"},"note":{"type":"string"}}}}},"CategoryStandard":{"type":"object","properties":{"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"test":{"type":"string","enum":["percent","all_us","assembly_us"],"description":"all_us: every manufacturing process in the US. percent: made in the US AND domestic component cost strictly greater than thresholdPct. assembly_us: made in the US with no component-cost test (FHWA's manufactured-product standard for projects obligated between 2025-10-01 and 2026-09-30)."},"thresholdPct":{"type":["number","null"]},"effectiveDate":{"type":"string","format":"date"},"statement":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]},"phases":{"type":"array","description":"When present, the standard steps through these phases by project obligation date, oldest first, and they take precedence over the fields above.","items":{"type":"object","properties":{"from":{"type":"string","format":"date"},"test":{"type":"string","enum":["percent","all_us","assembly_us"]},"thresholdPct":{"type":["number","null"]},"statement":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}}}}},"WaiverCategory":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"quantitativeTest":{"type":["string","null"]},"appliesWhen":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}}}},"paths":{"/api/v1":{"get":{"summary":"A self-describing index of the whole API surface: every endpoint with its summary and auth requirement, plus links to the OpenAPI document, the MCP server, the docs and machine-readable pricing. Start here if you are discovering this API programmatically. Free, keyless and not rate-limited.","operationId":"get_api_v1","security":[{},{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}}}}},"/api/v1/determine":{"post":{"summary":"Run a Build America, Buy America (BABA) domestic-content determination on a project bill of materials for a funding agency. Deterministic: no model, so identical input always returns an identical verdict. Each line returns one of four verdicts: compliant, non_compliant (fails the standard on the facts supplied), waiver_eligible (fails the standard AND the project-level de minimis test was computed and passed, so a de minimis waiver may cover it; it must still be applied for and granted and is NOT a pass), or insufficient_data (facts supplied cannot reach a verdict, also NOT a pass). A non_compliant line may carry waiverRoutes: qualitative waiver categories whose tests turn on facts this API does not hold, offered as leads to investigate and never as findings. Iron & steel and construction materials use an all-manufacturing-in-US test; manufactured products use the US component-cost test, which is STRICTLY GREATER THAN the threshold, so a product at exactly 55.0% fails. summary.compliantOverall is true only when every line is compliant. Send asOfDate: standards phase in by project obligation date, and the date used is reported back in standardsAsOf. An agency slug we do not hold yields agency:null and insufficient_data lines rather than a guess. Supports an `Idempotency-Key` header for keyed callers: replaying the same key with the same body returns the original result rather than a second billable call, and reusing a key with a different body returns 422 rather than another project's verdict.","operationId":"post_api_v1_determine","security":[{},{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"input":{"type":"object","properties":{"agencySlug":{"type":"string","description":"Funding agency slug: omb, fhwa, epa-srf, usda-rd."},"lines":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","description":"Component name, e.g. \"structural steel beam\"."},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"cost":{"type":"number","minimum":0,"description":"Total delivered cost, whole US dollars."},"allManufacturingInUS":{"type":"boolean","description":"iron_steel / construction_material test."},"manufacturedInUS":{"type":"boolean","description":"manufactured_product: final product made in US."},"domesticComponentCost":{"type":"number","minimum":0,"description":"manufactured_product: US-origin component cost. Must not exceed cost, since it is part of the total component cost rather than additional to it."},"countryOfOrigin":{"type":"string"}},"required":["category","cost"]},"minItems":1,"description":"The project bill of materials. The maximum number of lines per call is your plan's batch allowance, published at /api/v1/pricing as bom_lines_per_run."},"asOfDate":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"The date the project's federal funds were (or will be) obligated. Standards phase in by obligation date, so this decides which phase governs. Strongly recommended; when omitted the ruleset's own date is used and reported back in standardsAsOf."}},"required":["agencySlug","lines"]},"agency":{"type":["object","null"],"properties":{"slug":{"type":"string"},"name":{"type":"string"},"program":{"type":"string"}}},"findings":{"type":"array","items":{"type":"object","properties":{"lineIndex":{"type":"integer"},"component":{"type":"string"},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"verdict":{"type":"string","enum":["compliant","non_compliant","waiver_eligible","insufficient_data"],"description":"compliant: meets the governing standard. non_compliant: fails it on the facts supplied. waiver_eligible: fails the standard AND the project-level de minimis test was computed and passed, so a de minimis waiver may cover the line; it must still be applied for and granted and is NOT a pass. insufficient_data: the facts supplied cannot reach a verdict, also NOT a pass."},"domesticContentPct":{"type":["number","null"]},"thresholdPct":{"type":["number","null"]},"summary":{"type":"string"},"rule":{"type":"string"},"remedy":{"type":"string"},"applicableWaivers":{"type":"array","items":{"type":"string"},"description":"Waiver categories whose quantitative test this line was VERIFIED to meet. Only present when verdict is waiver_eligible."},"waiverRoutes":{"type":"array","items":{"type":"string"},"description":"Qualitative waiver categories a bidder may be able to pursue for a failing line. Their tests turn on facts this API does not hold (market availability, competing bid prices), so they have NOT been evaluated. Leads to investigate, never findings, and they do not soften the verdict. Present on non_compliant lines only."},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}},"required":["lineIndex","component","category","verdict","summary","rule","remedy"]}},"summary":{"type":"object","properties":{"totalLines":{"type":"integer"},"compliant":{"type":"integer"},"nonCompliant":{"type":"integer"},"waiverEligible":{"type":"integer"},"insufficientData":{"type":"integer"},"totalCost":{"type":"number"},"projectDomesticContentPct":{"type":"number","description":"Cost-weighted domestic share of the whole bill of materials. This is a portfolio metric, NOT a BABA test: BABA has no project-level percentage, so a project can sit at 90 percent here and still be non-compliant because one item failed an all-or-nothing standard. Never report it as a compliance result."},"compliantOverall":{"type":"boolean"}}},"deMinimis":{"type":"object","description":"The project-level de minimis arithmetic from OMB M-24-02, always returned so the caller can check it. `applies` true is what moves failing lines to waiver_eligible.","properties":{"applies":{"type":"boolean"},"nonCompliantCost":{"type":"number"},"excludedCost":{"type":"number","description":"Non-compliant cost the agency excludes from this waiver (e.g. FHWA iron and steel)."},"applicableCost":{"type":"number"},"capUsd":{"type":"number","description":"The lesser of the percentage allowance and the absolute dollar cap."},"pctOfApplicableCost":{"type":"number"},"maxUsd":{"type":"number"},"note":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}},"standardsAsOf":{"type":"object","description":"Which day's rules this verdict was resolved under. A BABA verdict is meaningless without it.","properties":{"date":{"type":"string","format":"date"},"suppliedByCaller":{"type":"boolean","description":"False when asOfDate was omitted and the ruleset's own date was used."},"upcomingChange":{"type":["object","null"],"description":"The next scheduled standard change after `date`, when one is known.","properties":{"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"from":{"type":"string","format":"date"},"statement":{"type":"string"}}}}},"coverage":{"type":"object","properties":{"agenciesLoaded":{"type":"integer"},"waiverCategoriesLoaded":{"type":"integer"},"note":{"type":"string"}}}}},"request_id":{"type":"string"},"disclaimer":{"type":"string"},"attribution":{"type":"string"}}}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"agencySlug":{"type":"string","description":"Funding agency slug: omb, fhwa, epa-srf, usda-rd."},"lines":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","description":"Component name, e.g. \"structural steel beam\"."},"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"cost":{"type":"number","minimum":0,"description":"Total delivered cost, whole US dollars."},"allManufacturingInUS":{"type":"boolean","description":"iron_steel / construction_material test."},"manufacturedInUS":{"type":"boolean","description":"manufactured_product: final product made in US."},"domesticComponentCost":{"type":"number","minimum":0,"description":"manufactured_product: US-origin component cost. Must not exceed cost, since it is part of the total component cost rather than additional to it."},"countryOfOrigin":{"type":"string"}},"required":["category","cost"]},"minItems":1,"description":"The project bill of materials. The maximum number of lines per call is your plan's batch allowance, published at /api/v1/pricing as bom_lines_per_run."},"asOfDate":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"The date the project's federal funds were (or will be) obligated. Standards phase in by obligation date, so this decides which phase governs. Strongly recommended; when omitted the ruleset's own date is used and reported back in standardsAsOf."}},"required":["agencySlug","lines"]}}}}}},"/api/v1/thresholds":{"get":{"summary":"The BABA domestic-content standards. With no query, the full cross-agency matrix (every loaded agency by material category). With ?agency=<slug>, that agency's three standards with the threshold, effective date and the OMB or agency citation behind each. An unknown slug returns a not_found error listing the agencies we hold, never a fabricated threshold.","operationId":"get_api_v1_thresholds","security":[{},{"bearerAuth":[]}],"parameters":[{"name":"agency","in":"query","required":false,"description":"Optional agency slug: omb, fhwa, epa-srf, usda-rd. Omit for the full matrix.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","description":"Either the full cross-agency matrix or one agency's standards.","properties":{"agencies":{"type":"array","items":{"type":"string"}},"thresholds":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"test":{"type":"string","enum":["percent","all_us","assembly_us"],"description":"all_us: every manufacturing process in the US. percent: made in the US AND domestic component cost strictly greater than thresholdPct. assembly_us: made in the US with no component-cost test (FHWA's manufactured-product standard for projects obligated between 2025-10-01 and 2026-09-30)."},"thresholdPct":{"type":["number","null"]},"effectiveDate":{"type":"string","format":"date"},"statement":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]},"phases":{"type":"array","description":"When present, the standard steps through these phases by project obligation date, oldest first, and they take precedence over the fields above.","items":{"type":"object","properties":{"from":{"type":"string","format":"date"},"test":{"type":"string","enum":["percent","all_us","assembly_us"]},"thresholdPct":{"type":["number","null"]},"statement":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}}}}}},"agency":{"type":"object"},"standards":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string","enum":["iron_steel","manufactured_product","construction_material"]},"test":{"type":"string","enum":["percent","all_us","assembly_us"],"description":"all_us: every manufacturing process in the US. percent: made in the US AND domestic component cost strictly greater than thresholdPct. assembly_us: made in the US with no component-cost test (FHWA's manufactured-product standard for projects obligated between 2025-10-01 and 2026-09-30)."},"thresholdPct":{"type":["number","null"]},"effectiveDate":{"type":"string","format":"date"},"statement":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]},"phases":{"type":"array","description":"When present, the standard steps through these phases by project obligation date, oldest first, and they take precedence over the fields above.","items":{"type":"object","properties":{"from":{"type":"string","format":"date"},"test":{"type":"string","enum":["percent","all_us","assembly_us"]},"thresholdPct":{"type":["number","null"]},"statement":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}}}}}}}},"request_id":{"type":"string"}}}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}}}}},"/api/v1/waivers":{"get":{"summary":"The BABA waiver categories. With no query, all five (public_interest, nonavailability, unreasonable_cost, de_minimis, small_grants), each with its objective test where one exists (de minimis 5% cap, unreasonable cost 25% differential) and its citation. With ?waiver=<slug>, that one category.","operationId":"get_api_v1_waivers","security":[{},{"bearerAuth":[]}],"parameters":[{"name":"waiver","in":"query","required":false,"description":"Optional waiver slug. Omit for the full catalogue.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"waivers":{"type":"array","items":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"quantitativeTest":{"type":["string","null"]},"appliesWhen":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}}},"waiver":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"quantitativeTest":{"type":["string","null"]},"appliesWhen":{"type":"string"},"citation":{"type":"object","description":"A single cited source behind one value. confidence \"verify\" MUST be rendered as Unverified, never as fact.","properties":{"source":{"type":"string","description":"Human label, e.g. \"OMB M-24-02\"."},"url":{"type":"string","format":"uri"},"retrievedAt":{"type":["string","null"],"format":"date"},"confidence":{"type":"string","enum":["verified","verify"]}},"required":["source","url","confidence"]}}}}},"request_id":{"type":"string"}}}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}}}}},"/api/v1/pricing":{"get":{"summary":"Machine-readable pricing: every plan id, its monthly price (read live from lib/plans.ts, never hardcoded), what it includes, the included monthly API-call allowance (a hard ceiling, not a meter), rate limits, and whether it grants the determination-record export. Lets an agent self-select a plan without a human reading the pricing page. Free, keyless, not rate-limited.","operationId":"get_api_v1_pricing","security":[{},{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object"},"request_id":{"type":"string"}}}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request","not_found","rate_limited","upgrade_required","internal"]},"message":{"type":"string"},"details":{"type":"object"}},"required":["code","message"]},"request_id":{"type":"string"}}}}}}}}}}}