{
  "openapi": "3.1.0",
  "info": {
    "title": "Novicite Sovereign GEO & AEO API",
    "version": "2.0.0",
    "description": "Official programmatic interface for the Novicite Autonomous Generative Engine Optimization (GEO) & Answer Engine Optimization (AEO) platform. Provides multi-model telemetry, cryptographic verification, RFC-9457 protocols, and edge RAG indexing.",
    "contact": {
      "name": "Novicite Support",
      "url": "https://novicite.com",
      "email": "support@novicite.com"
    },
    "license": {
      "name": "Proprietary / Commercial API",
      "url": "https://novicite.com/terms"
    }
  },
  "servers": [
    {
      "url": "https://novicite.com",
      "description": "Production Sovereign Gateway"
    }
  ],
  "paths": {
    "/api/ai-workers": {
      "get": {
        "summary": "Get Continuous AI Worker Swarm Status",
        "description": "Fetches status, active probe workers, execution telemetry, and knowledge base inoculation records for a domain.",
        "operationId": "getAiWorkers",
        "parameters": [
          {
            "name": "domain",
            "in": "query",
            "required": false,
            "description": "Monitored brand domain",
            "schema": {
              "type": "string",
              "example": "novicite.com"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "AI Worker Swarm status and telemetry",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "swarmHealth": {
                      "type": "string"
                    },
                    "stats": {
                      "type": "object"
                    },
                    "bots": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "summary": "Execute or Configure AI Worker Bot",
        "description": "Assigns a new continuous AI worker, toggles pause/active status, or triggers an immediate multi-engine probe cycle.",
        "operationId": "modifyAiWorker",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "action": {
                    "type": "string",
                    "enum": [
                      "execute_cycle",
                      "create_bot",
                      "toggle_bot",
                      "delete_bot"
                    ]
                  },
                  "botId": {
                    "type": "string"
                  },
                  "domain": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Worker action executed successfully"
          }
        }
      }
    },
    "/api/verify/{domain}": {
      "get": {
        "summary": "Get Domain Verification Certificate",
        "description": "Fetches sovereign RFC-9457 trust certificate, SHA-256 signature, and citation status across 7 frontier AI engines for any domain.",
        "operationId": "getDomainVerification",
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "required": true,
            "description": "The apex or sub-domain to verify (e.g., novicite.com)",
            "schema": {
              "type": "string",
              "example": "novicite.com"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Active cryptographic verification certificate",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "domain": {
                      "type": "string"
                    },
                    "brandName": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string",
                      "example": "ACTIVE_VERIFIED"
                    },
                    "geoTrustScore": {
                      "type": "number",
                      "example": 98
                    },
                    "certificateId": {
                      "type": "string"
                    },
                    "authorityTier": {
                      "type": "string"
                    },
                    "rfcCompliance": {
                      "type": "string",
                      "example": "RFC-9457"
                    },
                    "sha256Signature": {
                      "type": "string"
                    },
                    "frontierModelCitations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "engine": {
                            "type": "string"
                          },
                          "cited": {
                            "type": "boolean"
                          },
                          "frequency": {
                            "type": "string"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/badge/{brand}": {
      "get": {
        "summary": "Generate Live Dynamic SVG Trust Badge",
        "description": "Returns an optimized vector SVG badge reflecting live GEO audit scores and verified trust seals.",
        "operationId": "getBadge",
        "parameters": [
          {
            "name": "brand",
            "in": "path",
            "required": true,
            "description": "Brand name or domain",
            "schema": {
              "type": "string",
              "example": "novicite.com"
            }
          },
          {
            "name": "score",
            "in": "query",
            "required": false,
            "description": "Score value (0-100)",
            "schema": {
              "type": "integer",
              "example": 98
            }
          },
          {
            "name": "style",
            "in": "query",
            "required": false,
            "description": "Badge design variant (obsidian, pill, minimal)",
            "schema": {
              "type": "string",
              "example": "obsidian"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Dynamic SVG verification badge",
            "content": {
              "image/svg+xml": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/indexnow": {
      "post": {
        "summary": "Broadcast URLs to IndexNow Protocol",
        "description": "Instantly submits canonical URLs directly to Microsoft Bing, Copilot, Yandex, and Seznam search engines.",
        "operationId": "submitIndexNow",
        "responses": {
          "200": {
            "description": "URLs broadcast successfully to IndexNow API",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "indexNowStatus": {
                      "type": "integer",
                      "example": 202
                    },
                    "urlsSubmitted": {
                      "type": "integer",
                      "example": 17
                    },
                    "timestamp": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/query-fan-out": {
      "get": {
        "summary": "Simulate Conversational Query Fan-Out",
        "description": "Decomposes high-intent seed queries into 5-branch recursive search intent trees used by frontier LLMs during search synthesis.",
        "operationId": "getQueryFanOut",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "required": true,
            "description": "Primary search topic or commercial seed",
            "schema": {
              "type": "string",
              "example": "Generative Engine Optimization"
            }
          },
          {
            "name": "domain",
            "in": "query",
            "required": false,
            "description": "Domain to audit for fan-out coverage",
            "schema": {
              "type": "string",
              "example": "novicite.com"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "5-branch query fan-out cluster",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "seed": {
                      "type": "string"
                    },
                    "branches": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "intent": {
                            "type": "string"
                          },
                          "subQuestions": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          },
                          "recommendedMicroAnswerLength": {
                            "type": "integer"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/passage-indexing": {
      "get": {
        "summary": "Audit Content for INDEXABLE_PRIME Standards",
        "description": "Evaluates atomic text passages for information gain entropy, zero-pronoun anaphora autonomy, and RAG chunk boundary suitability.",
        "operationId": "getPassageIndexing",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": true,
            "description": "Target URL to analyze for RAG chunk readiness",
            "schema": {
              "type": "string",
              "example": "https://novicite.com/what-is-geo"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "RAG passage indexing and autonomy diagnostics",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string"
                    },
                    "informationGainScore": {
                      "type": "number",
                      "example": 88
                    },
                    "passageAutonomyScore": {
                      "type": "number",
                      "example": 95
                    },
                    "recommendedChunkSize": {
                      "type": "integer",
                      "example": 450
                    },
                    "isIndexablePrime": {
                      "type": "boolean",
                      "example": true
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}