{"openapi":"3.1.0","info":{"title":"OpenAPI Contract Guard API","version":"1.0.0","description":"Inspect, lint, summarize, diff, and apply explicit policy to bounded OpenAPI 3.0 and 3.1 JSON or YAML descriptions. Processing is stateless and deterministic. The API never fetches a URL, resolves a remote reference, invokes a described operation, generates or executes code, or stores payloads. Diff results use documented bounded rules and are not a complete compatibility, security, authorization, or deployability guarantee."},"paths":{"/marketplace/rapid/openapi/v1/inspect":{"post":{"tags":["OpenAPI Contract Inspect"],"summary":"Inspect OpenAPI contract","description":"Parse bounded OpenAPI 3.0 or 3.1 JSON/YAML and return deterministic structure, hashes, references, findings, and processing boundaries.","operationId":"inspectOpenAPIContract","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPIInspectRequest"},"examples":{"example":{"summary":"Inspect OpenAPI contract","value":{"document":{"openapi":"3.1.0","info":{"title":"Invoice Status API","version":"1.0.0"},"servers":[{"url":"https://api.example.com"}],"paths":{"/invoices/{invoice_id}":{"get":{"operationId":"getInvoice","parameters":[{"name":"invoice_id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Invoice","content":{"application/json":{"schema":{"type":"object"}}}}}}}}}}}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPIInspectResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/marketplace/rapid/openapi/v1/lint":{"post":{"tags":["OpenAPI Contract Lint"],"summary":"Lint OpenAPI contract","description":"Apply fixed structural, operation, parameter, response, security-reference, server, and reference rules without resolving the network.","operationId":"lintOpenAPIContract","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPILintRequest"},"examples":{"example":{"summary":"Lint OpenAPI contract","value":{"document":{"openapi":"3.1.0","info":{"title":"Invoice Status API","version":"1.0.0"},"servers":[{"url":"https://api.example.com"}],"paths":{"/invoices/{invoice_id}":{"get":{"operationId":"getInvoice","parameters":[{"name":"invoice_id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Invoice","content":{"application/json":{"schema":{"type":"object"}}}}}}}}},"require_operation_ids":true,"require_success_responses":true}}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPILintResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/marketplace/rapid/openapi/v1/summarize":{"post":{"tags":["OpenAPI Contract Summarize"],"summary":"Summarize OpenAPI contract","description":"Create a bounded agent-readable operation inventory with parameters, content types, responses, tags, deprecation, and effective security evidence.","operationId":"summarizeOpenAPIContract","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPISummarizeRequest"},"examples":{"example":{"summary":"Summarize OpenAPI contract","value":{"document":{"openapi":"3.1.0","info":{"title":"Invoice Status API","version":"1.0.0"},"servers":[{"url":"https://api.example.com"}],"paths":{"/invoices/{invoice_id}":{"get":{"operationId":"getInvoice","parameters":[{"name":"invoice_id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Invoice","content":{"application/json":{"schema":{"type":"object"}}}}}}}}},"max_operations":100}}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPISummarizeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/marketplace/rapid/openapi/v1/diff":{"post":{"tags":["OpenAPI Contract Diff"],"summary":"Diff OpenAPI contracts","description":"Detect bounded operation, parameter, request-body, response, security, and top-level request-schema compatibility changes.","operationId":"diffOpenAPIContracts","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPIDiffRequest"},"examples":{"example":{"summary":"Diff OpenAPI contracts","value":{"previous_document":{"openapi":"3.1.0","info":{"title":"Invoice Status API","version":"1.0.0"},"servers":[{"url":"https://api.example.com"}],"paths":{"/invoices/{invoice_id}":{"get":{"operationId":"getInvoice","parameters":[{"name":"invoice_id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Invoice","content":{"application/json":{"schema":{"type":"object"}}}}}}}}},"candidate_document":{"openapi":"3.1.0","info":{"title":"Invoice Status API","version":"2.0.0"},"servers":[{"url":"https://api.example.com"}],"paths":{"/invoices/{invoice_id}":{"get":{"operationId":"getInvoice","parameters":[{"name":"invoice_id","in":"path","required":true,"schema":{"type":"string"}},{"name":"region","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Invoice","content":{"application/json":{"schema":{"type":"object"}}}}}}}}}}}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPIDiffResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/marketplace/rapid/openapi/v1/policy-check":{"post":{"tags":["OpenAPI Contract Policy"],"summary":"Check OpenAPI contract policy","description":"Enforce explicit version, operation-count, operationId, success-response, HTTPS, security, method, host, and remote-reference policy.","operationId":"checkOpenAPIContractPolicy","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPIPolicyRequest"},"examples":{"example":{"summary":"Check OpenAPI contract policy","value":{"document":{"openapi":"3.1.0","info":{"title":"Invoice Status API","version":"1.0.0"},"servers":[{"url":"https://api.example.com"}],"paths":{"/invoices/{invoice_id}":{"get":{"operationId":"getInvoice","parameters":[{"name":"invoice_id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Invoice","content":{"application/json":{"schema":{"type":"object"}}}}}}}}},"allowed_specifications":["OPENAPI_3_1"],"max_operations":100,"require_operation_ids":true,"require_success_responses":true,"require_https_servers":true,"require_operation_security":false,"allow_remote_references":false}}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPIPolicyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"ContractChange":{"properties":{"code":{"type":"string","title":"Code"},"severity":{"type":"string","enum":["LOW","MEDIUM","HIGH"],"title":"Severity"},"breaking":{"type":"boolean","title":"Breaking"},"location":{"type":"string","title":"Location"},"message":{"type":"string","title":"Message"},"before":{"title":"Before"},"after":{"title":"After"},"next_action":{"type":"string","title":"Next Action"}},"additionalProperties":false,"type":"object","required":["code","severity","breaking","location","message","next_action"],"title":"ContractChange"},"ContractFinding":{"properties":{"code":{"type":"string","title":"Code"},"severity":{"type":"string","enum":["LOW","MEDIUM","HIGH"],"title":"Severity"},"message":{"type":"string","title":"Message"},"location":{"type":"string","title":"Location"},"evidence":{"additionalProperties":true,"type":"object","title":"Evidence"},"next_action":{"type":"string","title":"Next Action"}},"additionalProperties":false,"type":"object","required":["code","severity","message","location","next_action"],"title":"ContractFinding"},"ContractMetadata":{"properties":{"format":{"type":"string","enum":["JSON","YAML","OBJECT"],"title":"Format"},"specification":{"type":"string","enum":["OPENAPI_3_0","OPENAPI_3_1","UNSUPPORTED"],"title":"Specification"},"openapi_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Openapi Version"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"api_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Version"},"canonical_sha256":{"type":"string","title":"Canonical Sha256"},"path_count":{"type":"integer","title":"Path Count"},"operation_count":{"type":"integer","title":"Operation Count"},"schema_count":{"type":"integer","title":"Schema Count"},"server_count":{"type":"integer","title":"Server Count"},"security_scheme_count":{"type":"integer","title":"Security Scheme Count"},"local_reference_count":{"type":"integer","title":"Local Reference Count"},"remote_reference_count":{"type":"integer","title":"Remote Reference Count"}},"additionalProperties":false,"type":"object","required":["format","specification","openapi_version","title","api_version","canonical_sha256","path_count","operation_count","schema_count","server_count","security_scheme_count","local_reference_count","remote_reference_count"],"title":"ContractMetadata"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"OpenAPIDiffRequest":{"properties":{"previous_document":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"string"}],"title":"Previous Document"},"candidate_document":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"string"}],"title":"Candidate Document"}},"additionalProperties":false,"type":"object","required":["previous_document","candidate_document"],"title":"OpenAPIDiffRequest"},"OpenAPIDiffResponse":{"properties":{"status":{"type":"string","const":"COMPLETED","title":"Status","default":"COMPLETED"},"decision":{"type":"string","enum":["CLEAR","REVIEW_REQUIRED","BLOCKED"],"title":"Decision"},"compatible_under_bounded_rules":{"type":"boolean","title":"Compatible Under Bounded Rules"},"previous":{"$ref":"#/components/schemas/ContractMetadata"},"candidate":{"$ref":"#/components/schemas/ContractMetadata"},"breaking_change_count":{"type":"integer","title":"Breaking Change Count"},"non_breaking_change_count":{"type":"integer","title":"Non Breaking Change Count"},"changes":{"items":{"$ref":"#/components/schemas/ContractChange"},"type":"array","title":"Changes"},"ruleset_version":{"type":"string","title":"Ruleset Version","default":"2026-08-10"},"complete_compatibility_proof":{"type":"boolean","const":false,"title":"Complete Compatibility Proof","default":false},"schema_analysis_scope":{"type":"string","const":"TOP_LEVEL_REQUIRED_TYPE_ENUM","title":"Schema Analysis Scope","default":"TOP_LEVEL_REQUIRED_TYPE_ENUM"},"remote_references_resolved":{"type":"boolean","const":false,"title":"Remote References Resolved","default":false},"network_access_performed":{"type":"boolean","const":false,"title":"Network Access Performed","default":false},"payload_stored":{"type":"boolean","const":false,"title":"Payload Stored","default":false},"next_action":{"type":"string","title":"Next Action"}},"additionalProperties":false,"type":"object","required":["decision","compatible_under_bounded_rules","previous","candidate","breaking_change_count","non_breaking_change_count","changes","next_action"],"title":"OpenAPIDiffResponse"},"OpenAPIInspectRequest":{"properties":{"document":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"string"}],"title":"Document"}},"additionalProperties":false,"type":"object","required":["document"],"title":"OpenAPIInspectRequest"},"OpenAPIInspectResponse":{"properties":{"status":{"type":"string","const":"COMPLETED","title":"Status","default":"COMPLETED"},"decision":{"type":"string","enum":["CLEAR","REVIEW_REQUIRED","BLOCKED"],"title":"Decision"},"valid_openapi_shape":{"type":"boolean","title":"Valid Openapi Shape"},"metadata":{"$ref":"#/components/schemas/ContractMetadata"},"findings":{"items":{"$ref":"#/components/schemas/ContractFinding"},"type":"array","title":"Findings"},"ruleset_version":{"type":"string","title":"Ruleset Version","default":"2026-08-10"},"static_analysis_only":{"type":"boolean","const":true,"title":"Static Analysis Only","default":true},"remote_references_resolved":{"type":"boolean","const":false,"title":"Remote References Resolved","default":false},"network_access_performed":{"type":"boolean","const":false,"title":"Network Access Performed","default":false},"payload_stored":{"type":"boolean","const":false,"title":"Payload Stored","default":false},"complete_security_review":{"type":"boolean","const":false,"title":"Complete Security Review","default":false},"next_action":{"type":"string","title":"Next Action"}},"additionalProperties":false,"type":"object","required":["decision","valid_openapi_shape","metadata","findings","next_action"],"title":"OpenAPIInspectResponse"},"OpenAPILintRequest":{"properties":{"document":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"string"}],"title":"Document"},"require_operation_ids":{"type":"boolean","title":"Require Operation Ids","default":true},"require_success_responses":{"type":"boolean","title":"Require Success Responses","default":true}},"additionalProperties":false,"type":"object","required":["document"],"title":"OpenAPILintRequest"},"OpenAPILintResponse":{"properties":{"status":{"type":"string","const":"COMPLETED","title":"Status","default":"COMPLETED"},"decision":{"type":"string","enum":["CLEAR","REVIEW_REQUIRED","BLOCKED"],"title":"Decision"},"valid_openapi_shape":{"type":"boolean","title":"Valid Openapi Shape"},"metadata":{"$ref":"#/components/schemas/ContractMetadata"},"findings":{"items":{"$ref":"#/components/schemas/ContractFinding"},"type":"array","title":"Findings"},"ruleset_version":{"type":"string","title":"Ruleset Version","default":"2026-08-10"},"static_analysis_only":{"type":"boolean","const":true,"title":"Static Analysis Only","default":true},"remote_references_resolved":{"type":"boolean","const":false,"title":"Remote References Resolved","default":false},"network_access_performed":{"type":"boolean","const":false,"title":"Network Access Performed","default":false},"payload_stored":{"type":"boolean","const":false,"title":"Payload Stored","default":false},"complete_security_review":{"type":"boolean","const":false,"title":"Complete Security Review","default":false},"next_action":{"type":"string","title":"Next Action"},"rule_counts":{"additionalProperties":{"type":"integer"},"type":"object","title":"Rule Counts"}},"additionalProperties":false,"type":"object","required":["decision","valid_openapi_shape","metadata","findings","next_action","rule_counts"],"title":"OpenAPILintResponse"},"OpenAPIPolicyRequest":{"properties":{"document":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"string"}],"title":"Document"},"allowed_specifications":{"items":{"type":"string","enum":["OPENAPI_3_0","OPENAPI_3_1"]},"type":"array","maxItems":2,"minItems":1,"title":"Allowed Specifications"},"max_operations":{"type":"integer","maximum":2000.0,"minimum":1.0,"title":"Max Operations","default":500},"require_operation_ids":{"type":"boolean","title":"Require Operation Ids","default":true},"require_success_responses":{"type":"boolean","title":"Require Success Responses","default":true},"require_https_servers":{"type":"boolean","title":"Require Https Servers","default":true},"require_operation_security":{"type":"boolean","title":"Require Operation Security","default":false},"allow_remote_references":{"type":"boolean","title":"Allow Remote References","default":false},"allowed_methods":{"items":{"type":"string","enum":["GET","PUT","POST","DELETE","OPTIONS","HEAD","PATCH","TRACE"]},"type":"array","maxItems":8,"minItems":1,"title":"Allowed Methods"},"allowed_server_hosts":{"items":{"type":"string"},"type":"array","maxItems":500,"title":"Allowed Server Hosts"},"denied_server_hosts":{"items":{"type":"string"},"type":"array","maxItems":500,"title":"Denied Server Hosts"}},"additionalProperties":false,"type":"object","required":["document"],"title":"OpenAPIPolicyRequest"},"OpenAPIPolicyResponse":{"properties":{"status":{"type":"string","const":"COMPLETED","title":"Status","default":"COMPLETED"},"decision":{"type":"string","enum":["CLEAR","BLOCKED"],"title":"Decision"},"permitted":{"type":"boolean","title":"Permitted"},"metadata":{"$ref":"#/components/schemas/ContractMetadata"},"findings":{"items":{"$ref":"#/components/schemas/ContractFinding"},"type":"array","title":"Findings"},"ruleset_version":{"type":"string","title":"Ruleset Version","default":"2026-08-10"},"static_analysis_only":{"type":"boolean","const":true,"title":"Static Analysis Only","default":true},"deployability_verified":{"type":"boolean","const":false,"title":"Deployability Verified","default":false},"complete_security_review":{"type":"boolean","const":false,"title":"Complete Security Review","default":false},"remote_references_resolved":{"type":"boolean","const":false,"title":"Remote References Resolved","default":false},"network_access_performed":{"type":"boolean","const":false,"title":"Network Access Performed","default":false},"payload_stored":{"type":"boolean","const":false,"title":"Payload Stored","default":false},"next_action":{"type":"string","title":"Next Action"}},"additionalProperties":false,"type":"object","required":["decision","permitted","metadata","findings","next_action"],"title":"OpenAPIPolicyResponse"},"OpenAPISummarizeRequest":{"properties":{"document":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"string"}],"title":"Document"},"max_operations":{"type":"integer","maximum":2000.0,"minimum":1.0,"title":"Max Operations","default":250}},"additionalProperties":false,"type":"object","required":["document"],"title":"OpenAPISummarizeRequest"},"OpenAPISummarizeResponse":{"properties":{"status":{"type":"string","const":"COMPLETED","title":"Status","default":"COMPLETED"},"decision":{"type":"string","enum":["CLEAR","REVIEW_REQUIRED","BLOCKED"],"title":"Decision"},"metadata":{"$ref":"#/components/schemas/ContractMetadata"},"operations":{"items":{"$ref":"#/components/schemas/OperationSummary"},"type":"array","title":"Operations"},"truncated":{"type":"boolean","title":"Truncated"},"findings":{"items":{"$ref":"#/components/schemas/ContractFinding"},"type":"array","title":"Findings"},"static_analysis_only":{"type":"boolean","const":true,"title":"Static Analysis Only","default":true},"remote_references_resolved":{"type":"boolean","const":false,"title":"Remote References Resolved","default":false},"network_access_performed":{"type":"boolean","const":false,"title":"Network Access Performed","default":false},"payload_stored":{"type":"boolean","const":false,"title":"Payload Stored","default":false},"next_action":{"type":"string","title":"Next Action"}},"additionalProperties":false,"type":"object","required":["decision","metadata","operations","truncated","findings","next_action"],"title":"OpenAPISummarizeResponse"},"OperationSummary":{"properties":{"key":{"type":"string","title":"Key"},"method":{"type":"string","title":"Method"},"path":{"type":"string","title":"Path"},"operation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Operation Id"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags"},"deprecated":{"type":"boolean","title":"Deprecated"},"security_required":{"type":"boolean","title":"Security Required"},"parameters":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Parameters"},"request_content_types":{"items":{"type":"string"},"type":"array","title":"Request Content Types"},"response_statuses":{"items":{"type":"string"},"type":"array","title":"Response Statuses"},"response_content_types":{"items":{"type":"string"},"type":"array","title":"Response Content Types"}},"additionalProperties":false,"type":"object","required":["key","method","path","operation_id","summary","tags","deprecated","security_required","parameters","request_content_types","response_statuses","response_content_types"],"title":"OperationSummary"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"tags":[{"name":"OpenAPI Contract Inspect","description":"A bounded, stateless OpenAPI contract preflight for agents, API platforms, CI pipelines, SDK workflows, gateways, and governance automation."},{"name":"OpenAPI Contract Lint","description":"A bounded, stateless OpenAPI contract preflight for agents, API platforms, CI pipelines, SDK workflows, gateways, and governance automation."},{"name":"OpenAPI Contract Summarize","description":"A bounded, stateless OpenAPI contract preflight for agents, API platforms, CI pipelines, SDK workflows, gateways, and governance automation."},{"name":"OpenAPI Contract Diff","description":"A bounded, stateless OpenAPI contract preflight for agents, API platforms, CI pipelines, SDK workflows, gateways, and governance automation."},{"name":"OpenAPI Contract Policy","description":"A bounded, stateless OpenAPI contract preflight for agents, API platforms, CI pipelines, SDK workflows, gateways, and governance automation."}],"servers":[{"url":"https://api-production-9502.up.railway.app"}]}