{"openapi":"3.1.0","info":{"title":"Construction Site Operations API","version":"1.0.0","description":"Read supplied daily reports, schedules, RFIs, instructions, and deliveries to organize site evidence and label schedule deviations without deciding entitlement. Paid with x402 exact USDC on Base. No account is required.","contact":{"email":"support@brainiac.software"},"x-guidance":"BRAINIAC.software is a pay-per-call API for software agents. No account or API key is required.\nPayment uses the x402 protocol with exact USDC on Base (chain id 8453). Each POST operation has a fixed USD price.\nHow to call an operation:\n1. POST a JSON body matching the operation's requestBody schema to the operation path. Include an Idempotency-Key header (64 hex characters, 32 random bytes).\n2. If you have not paid, the server responds 402 with payment requirements in the body. Pay the exact amount to the payTo address on Base.\n3. Retry the identical request with the same Idempotency-Key and add a payment-signature header containing the x402 payment payload. On success (200) the operation result is returned.\n4. Reuse the same Idempotency-Key only for retries of the same operation and request body; it will not be charged twice.\nAll outputs are compliance prechecks, drafts, or data lookups for human review. They are not official determinations, legal advice, identity confirmation, or certified filings. Verify time-sensitive or official data with the cited source before acting."},"servers":[{"url":"https://www.brainiac.software"}],"paths":{"/api/v1/construction-site-operations/daily-report-parse":{"post":{"operationId":"parse_construction_daily_reports","summary":"Parse construction daily reports","description":"Copy supplied daily reports into structured rows with dates, locations, authors, workforce, and referenced activities. Delay wording is flagged as recorded narrative only.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"activities":[{"id":"A-1","name":"Concrete pour"}],"reports":[{"id":"DR-1","date":"2026-11-03","location":"Grid A","author":"PM","weather":"rain","workforce":12,"text":"Concrete pour delayed by rain on Grid A","activityId":"A-1"}],"text":"The contractor is entitled to an extension.\n"}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"reports":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"date":{"type":"string"},"location":{"type":"string"},"author":{"type":"string"},"weather":{"type":"string"},"workforce":{"type":"number"},"workforceSupplied":{"type":"boolean"},"activityId":{"type":"string"},"referencedActivities":{"type":"array","items":{"type":"string"}},"delayWording":{"type":"boolean"},"text":{"type":"string"},"kind":{"type":"string"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string"},"code":{"type":"string"},"subject":{"type":"string"},"detail":{"type":"string"}},"additionalProperties":true}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"parsed","reports":[{"id":"DR-1","date":"2026-11-03","location":"Grid A","author":"PM","weather":"rain","workforce":12,"workforceSupplied":true,"activityId":"A-1","referencedActivities":["A-1"],"delayWording":true,"text":"Concrete pour delayed by rain on Grid A","kind":"recorded"}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[{"kind":"ignored","code":"unlabeled_line","subject":"","detail":"Lines without a recognized label were not read and their text was not copied."}],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.04"},"protocols":[{"x402":{}}]}}},"/api/v1/construction-site-operations/progress-analyze":{"post":{"operationId":"analyze_site_progress","summary":"Analyze site progress","description":"Compare supplied baseline and actual activity dates to identify schedule deviations. Inferred impact is labeled and is not an entitlement determination.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"asOf":"2026-11-10","activities":[{"id":"A-1","name":"Foundations","baselineStart":"2026-11-01","baselineEnd":"2026-11-05","actualStart":"2026-11-03","actualEnd":"2026-11-08","percentComplete":100,"responsible":"Sub A"},{"id":"A-2","name":"Frame","baselineStart":"2026-11-06","baselineEnd":"2026-11-12","actualStart":"2026-11-09","percentComplete":20,"responsible":"Sub B"}]}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"lateCount":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"location":{"type":"string"},"responsible":{"type":"string"},"baselineStart":{"type":"string"},"baselineEnd":{"type":"string"},"actualStart":{"type":"string"},"actualEnd":{"type":"string"},"percentComplete":{"type":"number"},"percentCompleteSupplied":{"type":"boolean"},"startDelayDays":{"type":"number"},"startDelayDaysSupplied":{"type":"boolean"},"endDelayDays":{"type":"number"},"endDelayDaysSupplied":{"type":"boolean"},"baselineEndPassedDays":{"type":"number"},"baselineEndPassedDaysSupplied":{"type":"boolean"},"status":{"type":"string"},"deviationRecorded":{"type":"boolean"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"analyzed","lateCount":2,"items":[{"id":"A-1","name":"Foundations","location":"","responsible":"Sub A","baselineStart":"2026-11-01","baselineEnd":"2026-11-05","actualStart":"2026-11-03","actualEnd":"2026-11-08","percentComplete":100,"percentCompleteSupplied":true,"startDelayDays":2,"startDelayDaysSupplied":true,"endDelayDays":3,"endDelayDaysSupplied":true,"baselineEndPassedDays":0,"baselineEndPassedDaysSupplied":false,"status":"finished_late","deviationRecorded":false,"impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false},{"id":"A-2","name":"Frame","location":"","responsible":"Sub B","baselineStart":"2026-11-06","baselineEnd":"2026-11-12","actualStart":"2026-11-09","actualEnd":"","percentComplete":20,"percentCompleteSupplied":true,"startDelayDays":3,"startDelayDaysSupplied":true,"endDelayDays":0,"endDelayDaysSupplied":false,"baselineEndPassedDays":0,"baselineEndPassedDaysSupplied":false,"status":"started_late","deviationRecorded":false,"impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"protocols":[{"x402":{}}]}}},"/api/v1/construction-site-operations/delay-event-detect":{"post":{"operationId":"detect_construction_delay_events","summary":"Detect construction delay events","description":"Collect recorded delay rows and daily-report delay wording, and separately label impacts inferred from baseline versus actual dates. Liability is not determined.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"asOf":"2026-11-10","activities":[{"id":"A-1","name":"Foundations","baselineEnd":"2026-11-05","actualEnd":"2026-11-08"}],"delays":[{"id":"D-1","date":"2026-11-03","activityId":"A-1","days":2,"reason":"rain stoppage","recorded":true}],"reports":[{"id":"DR-1","date":"2026-11-03","text":"Work delayed by rain","activityId":"A-1"}]}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"recordedCount":{"type":"number"},"inferredCount":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"date":{"type":"string"},"activityId":{"type":"string"},"reason":{"type":"string"},"days":{"type":"number"},"daysSupplied":{"type":"boolean"},"source":{"type":"string"},"eventKind":{"type":"string"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"recorded":{"type":"boolean"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string"},"code":{"type":"string"},"subject":{"type":"string"},"detail":{"type":"string"}},"additionalProperties":true}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"detected","recordedCount":2,"inferredCount":1,"items":[{"id":"D-1","date":"2026-11-03","activityId":"A-1","reason":"rain stoppage","days":2,"daysSupplied":true,"source":"delay_record","eventKind":"recorded","impactInferred":false,"entitlementDetermined":false,"liabilityDetermined":false,"recorded":true},{"id":"DR-1","date":"2026-11-03","activityId":"A-1","reason":"Work delayed by rain","days":0,"daysSupplied":false,"source":"daily_report_wording","eventKind":"recorded","impactInferred":false,"entitlementDetermined":false,"liabilityDetermined":false,"recorded":true},{"id":"INF-A-1","date":"2026-11-08","activityId":"A-1","reason":"Inferred from baseline/actual date comparison for Foundations.","days":3,"daysSupplied":true,"source":"schedule_comparison","eventKind":"inferred","impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false,"recorded":false}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[{"kind":"observation","code":"inferred_impact","subject":"","detail":"Some delay impacts were inferred from baseline versus actual dates. They are labeled inferred and are not entitlement determinations."}],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.04"},"protocols":[{"x402":{}}]}}},"/api/v1/construction-site-operations/request-for-information-track":{"post":{"operationId":"track_requests_for_information","summary":"Track requests for information","description":"Track RFI asked/due/answered dates and identify unresolved or overdue items from supplied statuses. Contractual entitlement is not decided.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"asOf":"2026-11-10","rfis":[{"id":"RFI-1","subject":"Beam detail","asked":"2026-11-01","due":"2026-11-05","status":"open","asker":"Contractor","activityId":"A-1"},{"id":"RFI-2","subject":"Door schedule","asked":"2026-11-01","due":"2026-11-04","answered":"2026-11-03","status":"closed","asker":"Contractor","responder":"Architect"}]}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"openCount":{"type":"number"},"overdueCount":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"subject":{"type":"string"},"asked":{"type":"string"},"due":{"type":"string"},"answered":{"type":"string"},"status":{"type":"string"},"asker":{"type":"string"},"responder":{"type":"string"},"activityId":{"type":"string"},"open":{"type":"boolean"},"overdueDays":{"type":"number"},"overdueDaysSupplied":{"type":"boolean"},"eventKind":{"type":"string"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string"},"code":{"type":"string"},"subject":{"type":"string"},"detail":{"type":"string"}},"additionalProperties":true}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"tracked","openCount":1,"overdueCount":1,"items":[{"id":"RFI-1","subject":"Beam detail","asked":"2026-11-01","due":"2026-11-05","answered":"","status":"open","asker":"Contractor","responder":"","activityId":"A-1","open":true,"overdueDays":5,"overdueDaysSupplied":true,"eventKind":"recorded","entitlementDetermined":false,"liabilityDetermined":false},{"id":"RFI-2","subject":"Door schedule","asked":"2026-11-01","due":"2026-11-04","answered":"2026-11-03","status":"closed","asker":"Contractor","responder":"Architect","activityId":"","open":false,"overdueDays":0,"overdueDaysSupplied":false,"eventKind":"recorded","entitlementDetermined":false,"liabilityDetermined":false}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[{"kind":"observation","code":"rfi_unresolved","subject":"RFI-1","detail":"An RFI remains unresolved after its due date in the supplied records."}],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.04"},"protocols":[{"x402":{}}]}}},"/api/v1/construction-site-operations/instruction-extract":{"post":{"operationId":"extract_site_instructions","summary":"Extract site instructions","description":"Extract dates, issuers, locations, referenced activities, and change flags from supplied site instructions.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"activities":[{"id":"A-2","name":"Frame"}],"instructions":[{"id":"SI-1","date":"2026-11-04","issuer":"Architect","location":"Level 2","activityId":"A-2","change":true,"text":"Change window opening size on Level 2 Frame"},{"id":"SI-2","date":"2026-11-05","issuer":"PM","text":"Confirm access route remains clear"}]}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"changeCount":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"date":{"type":"string"},"issuer":{"type":"string"},"location":{"type":"string"},"activityId":{"type":"string"},"referencedActivities":{"type":"array","items":{"type":"string"}},"text":{"type":"string"},"change":{"type":"boolean"},"changeSupplied":{"type":"boolean"},"eventKind":{"type":"string"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"extracted","changeCount":1,"items":[{"id":"SI-1","date":"2026-11-04","issuer":"Architect","location":"Level 2","activityId":"A-2","referencedActivities":["A-2"],"text":"Change window opening size on Level 2 Frame","change":true,"changeSupplied":true,"eventKind":"recorded","entitlementDetermined":false,"liabilityDetermined":false},{"id":"SI-2","date":"2026-11-05","issuer":"PM","location":"","activityId":"","referencedActivities":[],"text":"Confirm access route remains clear","change":false,"changeSupplied":false,"eventKind":"recorded","entitlementDetermined":false,"liabilityDetermined":false}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.04"},"protocols":[{"x402":{}}]}}},"/api/v1/construction-site-operations/material-delivery-reconcile":{"post":{"operationId":"reconcile_material_deliveries","summary":"Reconcile material deliveries","description":"Reconcile expected and delivered material records, flagging missing deliveries and short quantities from supplied dates and counts.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"asOf":"2026-11-10","deliveries":[{"id":"DEL-1","material":"Rebar","expected":"2026-11-02","delivered":"2026-11-04","quantityExpected":10,"quantityDelivered":8,"supplier":"SteelCo"},{"id":"DEL-2","material":"Formwork","expected":"2026-11-08","quantityExpected":20,"activityId":"A-1"}]}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"missingCount":{"type":"number"},"shortCount":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"material":{"type":"string"},"expected":{"type":"string"},"delivered":{"type":"string"},"quantityExpected":{"type":"number"},"quantityExpectedSupplied":{"type":"boolean"},"quantityDelivered":{"type":"number"},"quantityDeliveredSupplied":{"type":"boolean"},"activityId":{"type":"string"},"location":{"type":"string"},"supplier":{"type":"string"},"missingDelivery":{"type":"boolean"},"lateDays":{"type":"number"},"lateDaysSupplied":{"type":"boolean"},"quantityShort":{"type":"boolean"},"eventKind":{"type":"string"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string"},"code":{"type":"string"},"subject":{"type":"string"},"detail":{"type":"string"}},"additionalProperties":true}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"reconciled","missingCount":1,"shortCount":1,"items":[{"id":"DEL-1","material":"Rebar","expected":"2026-11-02","delivered":"2026-11-04","quantityExpected":10,"quantityExpectedSupplied":true,"quantityDelivered":8,"quantityDeliveredSupplied":true,"activityId":"","location":"","supplier":"SteelCo","missingDelivery":false,"lateDays":2,"lateDaysSupplied":true,"quantityShort":true,"eventKind":"recorded","impactInferred":false,"entitlementDetermined":false,"liabilityDetermined":false},{"id":"DEL-2","material":"Formwork","expected":"2026-11-08","delivered":"","quantityExpected":20,"quantityExpectedSupplied":true,"quantityDelivered":0,"quantityDeliveredSupplied":false,"activityId":"A-1","location":"","supplier":"","missingDelivery":true,"lateDays":2,"lateDaysSupplied":true,"quantityShort":false,"eventKind":"recorded_gap","impactInferred":false,"entitlementDetermined":false,"liabilityDetermined":false}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[{"kind":"observation","code":"delivery_missing","subject":"DEL-2","detail":"An expected delivery has no delivered date in the supplied records."}],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.04"},"protocols":[{"x402":{}}]}}},"/api/v1/construction-site-operations/change-impact":{"post":{"operationId":"compare_construction_change_impact","summary":"Compare construction change impact","description":"Compare change instructions with supplied scope and programme dates. Linked schedule impact is labeled inferred and is not a liability finding.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"activities":[{"id":"A-2","name":"Frame","baselineEnd":"2026-11-12","actualEnd":"2026-11-15"}],"scope":[{"id":"SC-1","activityId":"A-2","text":"Install frame and openings"}],"instructions":[{"id":"SI-1","date":"2026-11-04","issuer":"Architect","activityId":"A-2","change":true,"text":"Change opening sizes in frame package"}]}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"changeCount":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"instructionId":{"type":"string"},"date":{"type":"string"},"issuer":{"type":"string"},"activityId":{"type":"string"},"referencedActivities":{"type":"array","items":{"type":"string"}},"scopeMatchCount":{"type":"number"},"scopeIds":{"type":"array","items":{"type":"string"}},"linkedActivityCount":{"type":"number"},"inferredDelayDays":{"type":"number"},"inferredDelayDaysSupplied":{"type":"boolean"},"recordedChange":{"type":"boolean"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"note":{"type":"string"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"compared","changeCount":1,"items":[{"instructionId":"SI-1","date":"2026-11-04","issuer":"Architect","activityId":"A-2","referencedActivities":["A-2"],"scopeMatchCount":1,"scopeIds":["SC-1"],"linkedActivityCount":1,"inferredDelayDays":3,"inferredDelayDaysSupplied":true,"recordedChange":true,"impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false,"note":"Linked schedule deviations are inferred from baseline/actual dates and are not a contractual entitlement."}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"protocols":[{"x402":{}}]}}},"/api/v1/construction-site-operations/report":{"post":{"operationId":"report_site_operations","summary":"Report site operations","description":"Combine daily reports, progress deviations, recorded and inferred delays, RFIs, instructions, deliveries, and change comparisons from supplied site records.","tags":["construction-site-operations"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"text":{"type":"string","maxLength":200000},"json":{"type":"string","maxLength":200000},"csv":{"type":"string","maxLength":200000},"file":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":180},"mediaType":{"type":"string","enum":["text/plain","text/csv","application/json"]},"fileBase64":{"type":"string","minLength":1,"maxLength":12000000}},"required":["mediaType","fileBase64"],"additionalProperties":false},"reports":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"location":{"type":"string","maxLength":200},"author":{"type":"string","maxLength":120},"weather":{"type":"string","maxLength":160},"workforce":{"type":"number","minimum":0,"maximum":1000000},"text":{"type":"string","maxLength":4000},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"activities":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"name":{"type":"string","maxLength":200},"baselineStart":{"type":"string","maxLength":40},"baselineEnd":{"type":"string","maxLength":40},"actualStart":{"type":"string","maxLength":40},"actualEnd":{"type":"string","maxLength":40},"percentComplete":{"type":"number","minimum":0,"maximum":100},"location":{"type":"string","maxLength":200},"responsible":{"type":"string","maxLength":120}},"additionalProperties":false}},"delays":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"activityId":{"type":"string","maxLength":80},"reason":{"type":"string","maxLength":500},"days":{"type":"number","minimum":0,"maximum":3650},"recorded":{"type":"boolean"}},"additionalProperties":false}},"rfis":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"subject":{"type":"string","maxLength":300},"asked":{"type":"string","maxLength":40},"due":{"type":"string","maxLength":40},"answered":{"type":"string","maxLength":40},"status":{"type":"string","maxLength":80},"asker":{"type":"string","maxLength":120},"responder":{"type":"string","maxLength":120},"activityId":{"type":"string","maxLength":80}},"additionalProperties":false}},"instructions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"date":{"type":"string","maxLength":40},"issuer":{"type":"string","maxLength":120},"location":{"type":"string","maxLength":200},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":2000},"change":{"type":"boolean"}},"additionalProperties":false}},"deliveries":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"material":{"type":"string","maxLength":200},"expected":{"type":"string","maxLength":40},"delivered":{"type":"string","maxLength":40},"quantityExpected":{"type":"number","minimum":0,"maximum":1000000000},"quantityDelivered":{"type":"number","minimum":0,"maximum":1000000000},"activityId":{"type":"string","maxLength":80},"location":{"type":"string","maxLength":200},"supplier":{"type":"string","maxLength":160}},"additionalProperties":false}},"scope":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":80},"activityId":{"type":"string","maxLength":80},"text":{"type":"string","maxLength":1000}},"additionalProperties":false}},"asOf":{"type":"string","maxLength":40}},"additionalProperties":false},"example":{"asOf":"2026-11-10","activities":[{"id":"A-1","name":"Foundations","baselineStart":"2026-11-01","baselineEnd":"2026-11-05","actualStart":"2026-11-03","actualEnd":"2026-11-08","responsible":"Sub A"},{"id":"A-2","name":"Frame","baselineEnd":"2026-11-12","actualEnd":"2026-11-15"}],"reports":[{"id":"DR-1","date":"2026-11-03","location":"Grid A","author":"PM","workforce":12,"text":"Foundations delayed by rain","activityId":"A-1"}],"delays":[{"id":"D-1","date":"2026-11-03","activityId":"A-1","days":2,"reason":"rain","recorded":true}],"rfis":[{"id":"RFI-1","subject":"Beam detail","asked":"2026-11-01","due":"2026-11-05","status":"open","asker":"Contractor","activityId":"A-2"}],"instructions":[{"id":"SI-1","date":"2026-11-04","issuer":"Architect","activityId":"A-2","change":true,"text":"Change opening sizes"}],"deliveries":[{"id":"DEL-1","material":"Formwork","expected":"2026-11-08","quantityExpected":20}],"scope":[{"id":"SC-1","activityId":"A-2","text":"Install frame and openings"}]}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Fresh random 32-byte value encoded as 64 hexadecimal characters. Reuse unchanged only for retries of the same operation and request.","schema":{"type":"string","pattern":"^[0-9a-fA-F]{64}$"}}],"responses":{"200":{"description":"Illustrative endpoint-specific JSON response shape. Conditional fields depend on the result and data-source availability.","content":{"application/json":{"schema":{"type":"object","properties":{"checkedAt":{"type":"string"},"status":{"type":"string"},"asOf":{"type":"string"},"reportCount":{"type":"number"},"lateActivityCount":{"type":"number"},"recordedDelayCount":{"type":"number"},"inferredDelayCount":{"type":"number"},"openRfiCount":{"type":"number"},"missingDeliveryCount":{"type":"number"},"changeCount":{"type":"number"},"reports":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"date":{"type":"string"},"location":{"type":"string"},"author":{"type":"string"},"weather":{"type":"string"},"workforce":{"type":"number"},"workforceSupplied":{"type":"boolean"},"activityId":{"type":"string"},"referencedActivities":{"type":"array","items":{"type":"string"}},"delayWording":{"type":"boolean"},"text":{"type":"string"},"kind":{"type":"string"}},"additionalProperties":true}},"progress":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"location":{"type":"string"},"responsible":{"type":"string"},"baselineStart":{"type":"string"},"baselineEnd":{"type":"string"},"actualStart":{"type":"string"},"actualEnd":{"type":"string"},"percentComplete":{"type":"number"},"percentCompleteSupplied":{"type":"boolean"},"startDelayDays":{"type":"number"},"startDelayDaysSupplied":{"type":"boolean"},"endDelayDays":{"type":"number"},"endDelayDaysSupplied":{"type":"boolean"},"baselineEndPassedDays":{"type":"number"},"baselineEndPassedDaysSupplied":{"type":"boolean"},"status":{"type":"string"},"deviationRecorded":{"type":"boolean"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"delays":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"date":{"type":"string"},"activityId":{"type":"string"},"reason":{"type":"string"},"days":{"type":"number"},"daysSupplied":{"type":"boolean"},"source":{"type":"string"},"eventKind":{"type":"string"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"recorded":{"type":"boolean"}},"additionalProperties":true}},"rfis":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"subject":{"type":"string"},"asked":{"type":"string"},"due":{"type":"string"},"answered":{"type":"string"},"status":{"type":"string"},"asker":{"type":"string"},"responder":{"type":"string"},"activityId":{"type":"string"},"open":{"type":"boolean"},"overdueDays":{"type":"number"},"overdueDaysSupplied":{"type":"boolean"},"eventKind":{"type":"string"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"instructions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"date":{"type":"string"},"issuer":{"type":"string"},"location":{"type":"string"},"activityId":{"type":"string"},"referencedActivities":{"type":"array","items":{"type":"string"}},"text":{"type":"string"},"change":{"type":"boolean"},"changeSupplied":{"type":"boolean"},"eventKind":{"type":"string"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"deliveries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"material":{"type":"string"},"expected":{"type":"string"},"delivered":{"type":"string"},"quantityExpected":{"type":"number"},"quantityExpectedSupplied":{"type":"boolean"},"quantityDelivered":{"type":"number"},"quantityDeliveredSupplied":{"type":"boolean"},"activityId":{"type":"string"},"location":{"type":"string"},"supplier":{"type":"string"},"missingDelivery":{"type":"boolean"},"lateDays":{"type":"number"},"lateDaysSupplied":{"type":"boolean"},"quantityShort":{"type":"boolean"},"eventKind":{"type":"string"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"}},"additionalProperties":true}},"changes":{"type":"array","items":{"type":"object","properties":{"instructionId":{"type":"string"},"date":{"type":"string"},"issuer":{"type":"string"},"activityId":{"type":"string"},"referencedActivities":{"type":"array","items":{"type":"string"}},"scopeMatchCount":{"type":"number"},"scopeIds":{"type":"array","items":{"type":"string"}},"linkedActivityCount":{"type":"number"},"inferredDelayDays":{"type":"number"},"inferredDelayDaysSupplied":{"type":"boolean"},"recordedChange":{"type":"boolean"},"impactInferred":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"note":{"type":"string"}},"additionalProperties":true}},"delayInvented":{"type":"boolean"},"entitlementDetermined":{"type":"boolean"},"liabilityDetermined":{"type":"boolean"},"findings":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string"},"code":{"type":"string"},"subject":{"type":"string"},"detail":{"type":"string"}},"additionalProperties":true}},"limitations":{"type":"array","items":{"type":"string"}}},"additionalProperties":true},"example":{"checkedAt":"2026-11-04T21:00:00.000Z","status":"reported","asOf":"2026-11-10","reportCount":1,"lateActivityCount":2,"recordedDelayCount":2,"inferredDelayCount":2,"openRfiCount":1,"missingDeliveryCount":1,"changeCount":1,"reports":[{"id":"DR-1","date":"2026-11-03","location":"Grid A","author":"PM","weather":"","workforce":12,"workforceSupplied":true,"activityId":"A-1","referencedActivities":["A-1"],"delayWording":true,"text":"Foundations delayed by rain","kind":"recorded"}],"progress":[{"id":"A-1","name":"Foundations","location":"","responsible":"Sub A","baselineStart":"2026-11-01","baselineEnd":"2026-11-05","actualStart":"2026-11-03","actualEnd":"2026-11-08","percentComplete":0,"percentCompleteSupplied":false,"startDelayDays":2,"startDelayDaysSupplied":true,"endDelayDays":3,"endDelayDaysSupplied":true,"baselineEndPassedDays":0,"baselineEndPassedDaysSupplied":false,"status":"finished_late","deviationRecorded":false,"impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false},{"id":"A-2","name":"Frame","location":"","responsible":"","baselineStart":"","baselineEnd":"2026-11-12","actualStart":"","actualEnd":"2026-11-15","percentComplete":0,"percentCompleteSupplied":false,"startDelayDays":0,"startDelayDaysSupplied":false,"endDelayDays":3,"endDelayDaysSupplied":true,"baselineEndPassedDays":0,"baselineEndPassedDaysSupplied":false,"status":"finished_late","deviationRecorded":false,"impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false}],"delays":[{"id":"D-1","date":"2026-11-03","activityId":"A-1","reason":"rain","days":2,"daysSupplied":true,"source":"delay_record","eventKind":"recorded","impactInferred":false,"entitlementDetermined":false,"liabilityDetermined":false,"recorded":true},{"id":"DR-1","date":"2026-11-03","activityId":"A-1","reason":"Foundations delayed by rain","days":0,"daysSupplied":false,"source":"daily_report_wording","eventKind":"recorded","impactInferred":false,"entitlementDetermined":false,"liabilityDetermined":false,"recorded":true},{"id":"INF-A-1","date":"2026-11-08","activityId":"A-1","reason":"Inferred from baseline/actual date comparison for Foundations.","days":3,"daysSupplied":true,"source":"schedule_comparison","eventKind":"inferred","impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false,"recorded":false},{"id":"INF-A-2","date":"2026-11-15","activityId":"A-2","reason":"Inferred from baseline/actual date comparison for Frame.","days":3,"daysSupplied":true,"source":"schedule_comparison","eventKind":"inferred","impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false,"recorded":false}],"rfis":[{"id":"RFI-1","subject":"Beam detail","asked":"2026-11-01","due":"2026-11-05","answered":"","status":"open","asker":"Contractor","responder":"","activityId":"A-2","open":true,"overdueDays":5,"overdueDaysSupplied":true,"eventKind":"recorded","entitlementDetermined":false,"liabilityDetermined":false}],"instructions":[{"id":"SI-1","date":"2026-11-04","issuer":"Architect","location":"","activityId":"A-2","referencedActivities":["A-2"],"text":"Change opening sizes","change":true,"changeSupplied":true,"eventKind":"recorded","entitlementDetermined":false,"liabilityDetermined":false}],"deliveries":[{"id":"DEL-1","material":"Formwork","expected":"2026-11-08","delivered":"","quantityExpected":20,"quantityExpectedSupplied":true,"quantityDelivered":0,"quantityDeliveredSupplied":false,"activityId":"","location":"","supplier":"","missingDelivery":true,"lateDays":2,"lateDaysSupplied":true,"quantityShort":false,"eventKind":"recorded_gap","impactInferred":false,"entitlementDetermined":false,"liabilityDetermined":false}],"changes":[{"instructionId":"SI-1","date":"2026-11-04","issuer":"Architect","activityId":"A-2","referencedActivities":["A-2"],"scopeMatchCount":1,"scopeIds":["SC-1"],"linkedActivityCount":1,"inferredDelayDays":3,"inferredDelayDaysSupplied":true,"recordedChange":true,"impactInferred":true,"entitlementDetermined":false,"liabilityDetermined":false,"note":"Linked schedule deviations are inferred from baseline/actual dates and are not a contractual entitlement."}],"delayInvented":false,"entitlementDetermined":false,"liabilityDetermined":false,"findings":[{"kind":"observation","code":"inferred_impact","subject":"","detail":"Some delay impacts were inferred from baseline versus actual dates. They are labeled inferred and are not entitlement determinations."},{"kind":"observation","code":"rfi_unresolved","subject":"RFI-1","detail":"An RFI remains unresolved after its due date in the supplied records."},{"kind":"observation","code":"delivery_missing","subject":"DEL-1","detail":"An expected delivery has no delivered date in the supplied records."}],"limitations":["Daily reports, schedules, RFIs, instructions, and deliveries are copied only from labeled fields supplied by the caller.","Schedule deviations use only supplied baseline and actual dates. Missing dates are not invented.","A recorded delay event is taken from supplied delay rows or explicit daily-report delay wording. Inferred impact is labeled separately.","Contractual entitlement and liability are never determined.","Unresolved RFIs and missing deliveries are judged only against supplied due/expected dates and statuses."]}}}},"400":{"description":"Invalid JSON or request schema."},"402":{"description":"Payment Required"},"409":{"description":"Idempotency conflict, in-progress payment, or expired result cache. Reusing the key cannot trigger a second charge."},"413":{"description":"Request body exceeds the 24 MB limit."},"500":{"description":"Operation failed. With upfront settlement this may occur after payment; reuse the same idempotency key to retrieve the stored result."},"503":{"description":"Payment or retry-safe result storage is unavailable; the operation is not run."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.12"},"protocols":[{"x402":{}}]}}}},"components":{"schemas":{"ApiError":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{}}}}}}}}