{"openapi":"3.1.0","info":{"title":"AI Text Processing API","description":"Summarize, analyze sentiment, and classify text using AI. Cache-backed for speed and cost savings.","version":"1.0.0"},"paths":{"/health":{"get":{"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/summarize":{"post":{"summary":"Summarize","operationId":"summarize_v1_summarize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SummarizeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sentiment":{"post":{"summary":"Sentiment","operationId":"sentiment_v1_sentiment_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SentimentRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/classify":{"post":{"summary":"Classify","operationId":"classify_v1_classify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats":{"get":{"summary":"Stats","operationId":"stats_v1_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/":{"get":{"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"ClassifyRequest":{"properties":{"text":{"type":"string","maxLength":10000,"minLength":5,"title":"Text"},"categories":{"items":{"type":"string"},"type":"array","maxItems":20,"minItems":2,"title":"Categories"}},"type":"object","required":["text","categories"],"title":"ClassifyRequest"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"SentimentRequest":{"properties":{"text":{"type":"string","maxLength":10000,"minLength":5,"title":"Text"}},"type":"object","required":["text"],"title":"SentimentRequest"},"SummarizeRequest":{"properties":{"text":{"type":"string","maxLength":50000,"minLength":10,"title":"Text"},"length":{"type":"string","pattern":"^(short|medium|long)$","title":"Length","default":"medium"},"style":{"type":"string","pattern":"^(paragraph|bullets|tldr)$","title":"Style","default":"paragraph"}},"type":"object","required":["text"],"title":"SummarizeRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"servers":[{"url":"/ai"}]}