{
  "openapi": "3.1.0",
  "info": {
    "title": "Dongwang Market public discovery",
    "version": "dw28.agent-discovery.v1",
    "description": "Read-only website discovery. No authentication or API key is needed for these GETs. A separate public homepage MCP is available at https://dw28.market/api/v1/public/homepage/mcp/ for read-only public website facts. It does not read stock or internal records or support inquiry submission, quoting, ordering, dispatch or payment. A unified MCP for specialist business agents, A2A and third-party server-to-server chat remain unavailable. Public AI consultation and visitor-confirmed inquiry submission are separate website browser features. Chat POST, form submission and protected internal Agent operation are excluded from the GET API documented here."
  },
  "x-public-homepage-mcp": {
    "url": "https://dw28.market/api/v1/public/homepage/mcp/",
    "scope": "public_homepage_read_only",
    "read_only": true,
    "description": {
      "zh": "只读公开官网事实；不读取库存或内部记录，不支持提交询单、报价、下单、发货或付款。专业业务 Agent 的统一 MCP、A2A 与第三方服务端聊天接口尚未开放。",
      "en": "Read-only public website facts. No stock or internal-record access, inquiry submission, quoting, ordering, dispatch or payment. A unified MCP for specialist business agents, A2A and third-party server-to-server chat remain unavailable."
    }
  },
  "servers": [
    {
      "url": "https://dw28.market"
    }
  ],
  "security": [],
  "paths": {
    "/homepage-content.v1.json": {
      "get": {
        "operationId": "getPublicHomepageContent",
        "summary": "Read versioned public homepage copy, FAQs, categories and source citations; no stock lookup",
        "responses": {
          "200": {
            "description": "Public information. Inspect the response; static documentation is not an availability guarantee.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "schema_version",
                    "version",
                    "updated_at",
                    "content_hash",
                    "public_only",
                    "content"
                  ],
                  "properties": {
                    "schema_version": {
                      "const": "dw28.homepage-content.v1"
                    },
                    "public_only": {
                      "const": true
                    },
                    "content_hash": {
                      "type": "string",
                      "pattern": "^sha256:[a-f0-9]{64}$"
                    },
                    "content": {
                      "type": "object"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          }
        }
      }
    },
    "/agent-discovery.json": {
      "get": {
        "operationId": "getDiscovery",
        "summary": "Read supported scope, limitations and human entrypoints",
        "responses": {
          "200": {
            "description": "Public information. Inspect the response; static documentation is not an availability guarantee.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "schema_version",
                    "capabilities",
                    "access"
                  ],
                  "properties": {
                    "schema_version": {
                      "const": "dw28.agent-discovery.v1"
                    },
                    "capabilities": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    },
                    "access": {
                      "type": "object"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          }
        }
      }
    },
    "/site-context.json": {
      "get": {
        "operationId": "getSiteContext",
        "summary": "Read identity, public evidence sources and scope",
        "responses": {
          "200": {
            "description": "Public information. Inspect the response; static documentation is not an availability guarantee.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "name",
                    "authorityPolicy"
                  ],
                  "additionalProperties": true
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/website-agent/v1/status": {
      "get": {
        "operationId": "getAgentStatus",
        "summary": "Read configuration status; this does not grant visitor access or prove business fulfillment",
        "responses": {
          "200": {
            "description": "Public information. Inspect the response; static documentation is not an availability guarantee.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "contract_version",
                    "configured",
                    "capabilities"
                  ],
                  "properties": {
                    "contract_version": {
                      "type": "string"
                    },
                    "configured": {
                      "type": "boolean"
                    },
                    "provider": {
                      "type": "string"
                    },
                    "capabilities": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          }
        },
        "description": "Configuration and capability status is read-only. Errors or missing fields mean availability is unknown. This endpoint is not intended for search indexing."
      }
    },
    "/api/v1/website-agent/v1/consultation/status": {
      "get": {
        "operationId": "getConsultationStatus",
        "summary": "Read public AI business consultation configuration; this does not guarantee a provider response",
        "responses": {
          "200": {
            "description": "Public information. Inspect the response; static documentation is not an availability guarantee.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "contract",
                    "configured",
                    "release_sha",
                    "session_ttl_seconds"
                  ],
                  "properties": {
                    "contract": {
                      "const": "dw28.consultation.v1"
                    },
                    "configured": {
                      "type": "boolean"
                    },
                    "release_sha": {
                      "type": "string"
                    },
                    "session_ttl_seconds": {
                      "type": "integer",
                      "minimum": 1
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          }
        },
        "description": "Read-only public consultation status. AI replies do not invoke business tools or automatically submit inquiries. Visitor-confirmed browser form submission is separate. No chat or form POST is documented by this read-only API."
      }
    }
  }
}
