{
 "components": {
  "schemas": {
   "AlertIn": {
    "properties": {
     "term": {
      "maxLength": 80,
      "minLength": 2,
      "title": "Term",
      "type": "string"
     }
    },
    "required": [
     "term"
    ],
    "title": "AlertIn",
    "type": "object"
   },
   "AnalyzeIn": {
    "properties": {
     "depth": {
      "default": "standard",
      "title": "Depth",
      "type": "string"
     },
     "escalate": {
      "default": "never",
      "title": "Escalate",
      "type": "string"
     },
     "query": {
      "maxLength": 2000,
      "minLength": 1,
      "title": "Query",
      "type": "string"
     }
    },
    "required": [
     "query"
    ],
    "title": "AnalyzeIn",
    "type": "object"
   },
   "Checkout": {
    "properties": {
     "credits": {
      "default": 0,
      "title": "Credits",
      "type": "integer"
     },
     "plan": {
      "default": "starter",
      "title": "Plan",
      "type": "string"
     }
    },
    "title": "Checkout",
    "type": "object"
   },
   "HTTPValidationError": {
    "properties": {
     "detail": {
      "items": {
       "$ref": "#/components/schemas/ValidationError"
      },
      "title": "Detail",
      "type": "array"
     }
    },
    "title": "HTTPValidationError",
    "type": "object"
   },
   "NewAcct": {
    "properties": {
     "email": {
      "title": "Email",
      "type": "string"
     },
     "plan": {
      "default": "free",
      "title": "Plan",
      "type": "string"
     }
    },
    "required": [
     "email"
    ],
    "title": "NewAcct",
    "type": "object"
   },
   "Save": {
    "properties": {
     "finding_id": {
      "title": "Finding Id",
      "type": "integer"
     },
     "note": {
      "default": "",
      "title": "Note",
      "type": "string"
     }
    },
    "required": [
     "finding_id"
    ],
    "title": "Save",
    "type": "object"
   },
   "Signup": {
    "properties": {
     "email": {
      "maxLength": 200,
      "pattern": "^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$",
      "title": "Email",
      "type": "string"
     }
    },
    "required": [
     "email"
    ],
    "title": "Signup",
    "type": "object"
   },
   "Topup": {
    "properties": {
     "account_id": {
      "title": "Account Id",
      "type": "integer"
     },
     "credits": {
      "exclusiveMinimum": 0.0,
      "maximum": 1000000.0,
      "title": "Credits",
      "type": "integer"
     },
     "plan": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Plan"
     }
    },
    "required": [
     "account_id",
     "credits"
    ],
    "title": "Topup",
    "type": "object"
   },
   "ValidationError": {
    "properties": {
     "ctx": {
      "title": "Context",
      "type": "object"
     },
     "input": {
      "title": "Input"
     },
     "loc": {
      "items": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "integer"
        }
       ]
      },
      "title": "Location",
      "type": "array"
     },
     "msg": {
      "title": "Message",
      "type": "string"
     },
     "type": {
      "title": "Error Type",
      "type": "string"
     }
    },
    "required": [
     "loc",
     "msg",
     "type"
    ],
    "title": "ValidationError",
    "type": "object"
   },
   "WL": {
    "properties": {
     "items": {
      "items": {
       "type": "string"
      },
      "maxItems": 100,
      "title": "Items",
      "type": "array"
     },
     "name": {
      "maxLength": 80,
      "minLength": 1,
      "title": "Name",
      "type": "string"
     }
    },
    "required": [
     "name",
     "items"
    ],
    "title": "WL",
    "type": "object"
   }
  }
 },
 "info": {
  "title": "ELYRAON Intelligence Network",
  "version": "0.1.0"
 },
 "openapi": "3.1.0",
 "paths": {
  "/admin/accounts": {
   "post": {
    "operationId": "admin_acct_admin_accounts_post",
    "parameters": [
     {
      "in": "header",
      "name": "x-admin-token",
      "required": false,
      "schema": {
       "title": "X-Admin-Token",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/NewAcct"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Admin Acct"
   }
  },
  "/admin/jobs": {
   "get": {
    "operationId": "admin_jobs_admin_jobs_get",
    "parameters": [
     {
      "in": "header",
      "name": "x-admin-token",
      "required": false,
      "schema": {
       "title": "X-Admin-Token",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Admin Jobs"
   }
  },
  "/admin/research/{force}/cycle": {
   "post": {
    "operationId": "admin_cycle_admin_research__force__cycle_post",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "x-admin-token",
      "required": false,
      "schema": {
       "title": "X-Admin-Token",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Admin Cycle"
   }
  },
  "/admin/topup": {
   "post": {
    "operationId": "admin_topup_admin_topup_post",
    "parameters": [
     {
      "in": "header",
      "name": "x-admin-token",
      "required": false,
      "schema": {
       "title": "X-Admin-Token",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/Topup"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Admin Topup"
   }
  },
  "/healthz": {
   "get": {
    "operationId": "healthz_healthz_get",
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     }
    },
    "summary": "Healthz"
   }
  },
  "/intelligence": {
   "get": {
    "operationId": "landing_intelligence_get",
    "responses": {
     "200": {
      "content": {
       "text/html": {
        "schema": {
         "type": "string"
        }
       }
      },
      "description": "Successful Response"
     }
    },
    "summary": "Landing"
   }
  },
  "/intelligence/{force}": {
   "get": {
    "operationId": "dash_intelligence__force__get",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "text/html": {
        "schema": {
         "type": "string"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Dash"
   }
  },
  "/v1/billing/checkout": {
   "post": {
    "operationId": "checkout_v1_billing_checkout_post",
    "parameters": [
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/Checkout"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Checkout"
   }
  },
  "/v1/billing/webhook": {
   "post": {
    "operationId": "webhook_v1_billing_webhook_post",
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     }
    },
    "summary": "Webhook"
   }
  },
  "/v1/forces": {
   "get": {
    "operationId": "forces_v1_forces_get",
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     }
    },
    "summary": "Forces"
   }
  },
  "/v1/keys/rotate": {
   "post": {
    "description": "Revokes ALL keys on the account and returns a new one (shown once).",
    "operationId": "rotate_v1_keys_rotate_post",
    "parameters": [
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Rotate"
   }
  },
  "/v1/me": {
   "get": {
    "operationId": "me_v1_me_get",
    "parameters": [
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Me"
   }
  },
  "/v1/plans": {
   "get": {
    "operationId": "plans_v1_plans_get",
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     }
    },
    "summary": "Plans"
   }
  },
  "/v1/signup": {
   "post": {
    "description": "Self-serve FREE plan, key shown once. Closed with EIN_SIGNUP_ENABLED=0. Capped per IP/hour and globally/day;\n+tags are normalized away. NOTE: no email verification yet (public-launch blocker).",
    "operationId": "signup_v1_signup_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/Signup"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Signup"
   }
  },
  "/v1/usage": {
   "get": {
    "operationId": "usage_v1_usage_get",
    "parameters": [
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Usage"
   }
  },
  "/v1/web/{force}/ask": {
   "post": {
    "operationId": "ask_v1_web__force__ask_post",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/AnalyzeIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Ask"
   }
  },
  "/v1/{force}/alerts": {
   "get": {
    "operationId": "alert_events_v1__force__alerts_get",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Alert Events"
   },
   "post": {
    "operationId": "alert_create_v1__force__alerts_post",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/AlertIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Alert Create"
   }
  },
  "/v1/{force}/analyze": {
   "post": {
    "operationId": "analyze_v1__force__analyze_post",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/AnalyzeIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Analyze"
   }
  },
  "/v1/{force}/library": {
   "get": {
    "operationId": "lib_v1__force__library_get",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
       "default": 20,
       "title": "Limit",
       "type": "integer"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Lib"
   }
  },
  "/v1/{force}/saved": {
   "get": {
    "operationId": "saved_v1__force__saved_get",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Saved"
   },
   "post": {
    "operationId": "save_v1__force__saved_post",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/Save"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Save"
   }
  },
  "/v1/{force}/watchlists": {
   "get": {
    "operationId": "wl_list_v1__force__watchlists_get",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Wl List"
   },
   "post": {
    "operationId": "wl_create_v1__force__watchlists_post",
    "parameters": [
     {
      "in": "path",
      "name": "force",
      "required": true,
      "schema": {
       "title": "Force",
       "type": "string"
      }
     },
     {
      "in": "header",
      "name": "authorization",
      "required": false,
      "schema": {
       "title": "Authorization",
       "type": "string"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/WL"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Wl Create"
   }
  }
 }
}