{
    "openapi":  "3.1.0",
    "info":  {
                 "title":  "AI Baby Gorilla - Public Agent Scan API",
                 "version":  "0.1.0",
                 "description":  "Publicly callable, single-page JSON-LD entity-connection diagnostic. No API token required; optional Bearer authentication supported. Limits: five agent scans per requester and twenty globally per rolling hour. Does not perform whole-site crawling or verify AI retrieval."
             },
    "servers":  [
                    {
                        "url":  "https://sydneybusinessweb.com.au"
                    }
                ],
    "paths":  {
                  "/api/ai-baby-gorilla/agent/scan":  {
                                                          "post":  {
                                                                       "operationId":  "scanPublicPageJsonLd",
                                                                       "summary":  "Analyse a single public webpage\u0027s JSON-LD entity connections",
                                                                       "description":  "Publicly callable single-page JSON-LD diagnostic. No API token is required.\nOptional Bearer authentication is supported. Invalid supplied credentials\nare rejected.\n\nRate limits: five agent scans per requester per rolling hour and twenty\nagent scans globally per rolling hour. Successful and failed scans both\nconsume quota. Existing browser-form limits are separate.",
                                                                       "security":  [
                                                                                        {

                                                                                        },
                                                                                        {
                                                                                            "AgentBearer":  [

                                                                                                            ]
                                                                                        }
                                                                                    ],
                                                                       "requestBody":  {
                                                                                           "required":  true,
                                                                                           "content":  {
                                                                                                           "application/json":  {
                                                                                                                                    "schema":  {
                                                                                                                                                   "type":  "object",
                                                                                                                                                   "properties":  {
                                                                                                                                                                      "url":  {
                                                                                                                                                                                  "type":  "string",
                                                                                                                                                                                  "format":  "uri",
                                                                                                                                                                                  "maxLength":  2048
                                                                                                                                                                              }
                                                                                                                                                                  },
                                                                                                                                                   "required":  [
                                                                                                                                                                    "url"
                                                                                                                                                                ],
                                                                                                                                                   "additionalProperties":  false
                                                                                                                                               }
                                                                                                                                }
                                                                                                       }
                                                                                       },
                                                                       "responses":  {
                                                                                         "200":  {
                                                                                                     "description":  "Single-page diagnostic result as JSON",
                                                                                                     "content":  {
                                                                                                                     "application/json":  {
                                                                                                                                              "schema":  {
                                                                                                                                                             "type":  "object",
                                                                                                                                                             "required":  [
                                                                                                                                                                              "ok",
                                                                                                                                                                              "checkedUrl",
                                                                                                                                                                              "checkedAt"
                                                                                                                                                                          ],
                                                                                                                                                             "properties":  {
                                                                                                                                                                                "ok":  {
                                                                                                                                                                                           "type":  "boolean",
                                                                                                                                                                                           "const":  true
                                                                                                                                                                                       },
                                                                                                                                                                                "checkedUrl":  {
                                                                                                                                                                                                   "type":  "string",
                                                                                                                                                                                                   "format":  "uri"
                                                                                                                                                                                               },
                                                                                                                                                                                "checkedAt":  {
                                                                                                                                                                                                  "type":  "string",
                                                                                                                                                                                                  "format":  "date-time"
                                                                                                                                                                                              },
                                                                                                                                                                                "verdict":  {
                                                                                                                                                                                                "type":  "string"
                                                                                                                                                                                            },
                                                                                                                                                                                "summary":  {
                                                                                                                                                                                                "type":  "object",
                                                                                                                                                                                                "additionalProperties":  true
                                                                                                                                                                                            }
                                                                                                                                                                            },
                                                                                                                                                             "additionalProperties":  true
                                                                                                                                                         }
                                                                                                                                          }
                                                                                                                 }
                                                                                                 },
                                                                                         "400":  {
                                                                                                     "description":  "Invalid request or URL",
                                                                                                     "content":  {
                                                                                                                     "application/json":  {
                                                                                                                                              "schema":  {
                                                                                                                                                             "type":  "object",
                                                                                                                                                             "required":  [
                                                                                                                                                                              "ok",
                                                                                                                                                                              "error"
                                                                                                                                                                          ],
                                                                                                                                                             "properties":  {
                                                                                                                                                                                "ok":  {
                                                                                                                                                                                           "type":  "boolean",
                                                                                                                                                                                           "const":  false
                                                                                                                                                                                       },
                                                                                                                                                                                "code":  {
                                                                                                                                                                                             "type":  "string"
                                                                                                                                                                                         },
                                                                                                                                                                                "error":  {
                                                                                                                                                                                              "type":  "string"
                                                                                                                                                                                          }
                                                                                                                                                                            },
                                                                                                                                                             "additionalProperties":  false
                                                                                                                                                         }
                                                                                                                                          }
                                                                                                                 }
                                                                                                 },
                                                                                         "401":  {
                                                                                                     "description":  "Missing or invalid Bearer token",
                                                                                                     "content":  {
                                                                                                                     "application/json":  {
                                                                                                                                              "schema":  {
                                                                                                                                                             "type":  "object",
                                                                                                                                                             "required":  [
                                                                                                                                                                              "ok",
                                                                                                                                                                              "error"
                                                                                                                                                                          ],
                                                                                                                                                             "properties":  {
                                                                                                                                                                                "ok":  {
                                                                                                                                                                                           "type":  "boolean",
                                                                                                                                                                                           "const":  false
                                                                                                                                                                                       },
                                                                                                                                                                                "code":  {
                                                                                                                                                                                             "type":  "string"
                                                                                                                                                                                         },
                                                                                                                                                                                "error":  {
                                                                                                                                                                                              "type":  "string"
                                                                                                                                                                                          }
                                                                                                                                                                            },
                                                                                                                                                             "additionalProperties":  false
                                                                                                                                                         }
                                                                                                                                          }
                                                                                                                 }
                                                                                                 },
                                                                                         "413":  {
                                                                                                     "description":  "Request or fetched page too large",
                                                                                                     "content":  {
                                                                                                                     "application/json":  {
                                                                                                                                              "schema":  {
                                                                                                                                                             "type":  "object",
                                                                                                                                                             "required":  [
                                                                                                                                                                              "ok",
                                                                                                                                                                              "error"
                                                                                                                                                                          ],
                                                                                                                                                             "properties":  {
                                                                                                                                                                                "ok":  {
                                                                                                                                                                                           "type":  "boolean",
                                                                                                                                                                                           "const":  false
                                                                                                                                                                                       },
                                                                                                                                                                                "code":  {
                                                                                                                                                                                             "type":  "string"
                                                                                                                                                                                         },
                                                                                                                                                                                "error":  {
                                                                                                                                                                                              "type":  "string"
                                                                                                                                                                                          }
                                                                                                                                                                            },
                                                                                                                                                             "additionalProperties":  false
                                                                                                                                                         }
                                                                                                                                          }
                                                                                                                 }
                                                                                                 },
                                                                                         "422":  {
                                                                                                     "description":  "Target page cannot be processed",
                                                                                                     "content":  {
                                                                                                                     "application/json":  {
                                                                                                                                              "schema":  {
                                                                                                                                                             "type":  "object",
                                                                                                                                                             "required":  [
                                                                                                                                                                              "ok",
                                                                                                                                                                              "error"
                                                                                                                                                                          ],
                                                                                                                                                             "properties":  {
                                                                                                                                                                                "ok":  {
                                                                                                                                                                                           "type":  "boolean",
                                                                                                                                                                                           "const":  false
                                                                                                                                                                                       },
                                                                                                                                                                                "code":  {
                                                                                                                                                                                             "type":  "string"
                                                                                                                                                                                         },
                                                                                                                                                                                "error":  {
                                                                                                                                                                                              "type":  "string"
                                                                                                                                                                                          }
                                                                                                                                                                            },
                                                                                                                                                             "additionalProperties":  false
                                                                                                                                                         }
                                                                                                                                          }
                                                                                                                 }
                                                                                                 },
                                                                                         "429":  {
                                                                                                     "description":  "Hourly scan quota reached",
                                                                                                     "content":  {
                                                                                                                     "application/json":  {
                                                                                                                                              "schema":  {
                                                                                                                                                             "type":  "object",
                                                                                                                                                             "required":  [
                                                                                                                                                                              "ok",
                                                                                                                                                                              "error"
                                                                                                                                                                          ],
                                                                                                                                                             "properties":  {
                                                                                                                                                                                "ok":  {
                                                                                                                                                                                           "type":  "boolean",
                                                                                                                                                                                           "const":  false
                                                                                                                                                                                       },
                                                                                                                                                                                "code":  {
                                                                                                                                                                                             "type":  "string"
                                                                                                                                                                                         },
                                                                                                                                                                                "error":  {
                                                                                                                                                                                              "type":  "string"
                                                                                                                                                                                          }
                                                                                                                                                                            },
                                                                                                                                                             "additionalProperties":  false
                                                                                                                                                         }
                                                                                                                                          }
                                                                                                                 }
                                                                                                 },
                                                                                         "503":  {
                                                                                                     "description":  "Agent API unavailable",
                                                                                                     "content":  {
                                                                                                                     "application/json":  {
                                                                                                                                              "schema":  {
                                                                                                                                                             "type":  "object",
                                                                                                                                                             "required":  [
                                                                                                                                                                              "ok",
                                                                                                                                                                              "error"
                                                                                                                                                                          ],
                                                                                                                                                             "properties":  {
                                                                                                                                                                                "ok":  {
                                                                                                                                                                                           "type":  "boolean",
                                                                                                                                                                                           "const":  false
                                                                                                                                                                                       },
                                                                                                                                                                                "code":  {
                                                                                                                                                                                             "type":  "string"
                                                                                                                                                                                         },
                                                                                                                                                                                "error":  {
                                                                                                                                                                                              "type":  "string"
                                                                                                                                                                                          }
                                                                                                                                                                            },
                                                                                                                                                             "additionalProperties":  false
                                                                                                                                                         }
                                                                                                                                          }
                                                                                                                 }
                                                                                                 }
                                                                                     }
                                                                   }
                                                      }
              },
    "components":  {
                       "securitySchemes":  {
                                               "AgentBearer":  {
                                                                   "type":  "http",
                                                                   "scheme":  "bearer",
                                                                   "description":  "Optional privately issued API token. Public scans do not require authentication."
                                                               }
                                           }
                   }
}