{"openapi":"3.1.0","info":{"title":"IPQuality","version":"1.0.0"},"paths":{"/health":{"get":{"tags":["Service"],"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/public/config":{"get":{"tags":["Public"],"summary":"Public Config","operationId":"public_config_api_public_config_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/public/lookup":{"post":{"tags":["Public"],"summary":"Public Lookup","operationId":"public_lookup_api_public_lookup_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LookupRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/checks":{"post":{"tags":["Checks"],"summary":"Submit Check","operationId":"submit_check_api_v1_checks_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckRequest"}}},"required":true},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"BearerAuth":[]}]}},"/api/v1/checks/{ident}":{"get":{"tags":["Checks"],"summary":"Read Check","operationId":"read_check_api_v1_checks__ident__get","parameters":[{"name":"ident","in":"path","required":true,"schema":{"type":"string","title":"Ident"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"BearerAuth":[]}]}}},"components":{"schemas":{"CheckRequest":{"properties":{"mode":{"type":"string","enum":["lookup","proxy"],"title":"Mode"},"ip":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Ip"},"proxy":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Proxy"}},"additionalProperties":false,"type":"object","required":["mode"],"title":"CheckRequest"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"LookupRequest":{"properties":{"ip":{"type":"string","maxLength":64,"minLength":1,"title":"Ip"}},"additionalProperties":false,"type":"object","required":["ip"],"title":"LookupRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}}}}