openapi: 3.1.0 info: title: Eden AI API version: "2.0" description: >- Eden AI is a unified AI gateway providing access to 500+ AI models from 50+ providers through a single API. Exposes LLM (chat completions, embeddings), Universal AI (OCR, image, video, audio, text analysis), file management, and async jobs with webhooks. contact: name: Eden AI url: https://www.edenai.co servers: - url: https://api.edenai.run/v2 description: Production security: - bearerAuth: [] paths: /text/sentiment_analysis: post: summary: Sentiment analysis description: Run sentiment analysis on input text across selected providers. operationId: textSentimentAnalysis tags: [Text] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TextRequest' responses: '200': description: Aggregated provider results content: application/json: schema: type: object /text/keyword_extraction: post: summary: Keyword extraction operationId: textKeywordExtraction tags: [Text] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TextRequest' responses: '200': description: Aggregated provider results content: application/json: schema: type: object /text/named_entity_recognition: post: summary: Named entity recognition operationId: textNamedEntityRecognition tags: [Text] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TextRequest' responses: '200': description: Aggregated provider results content: application/json: schema: type: object /text/emotion_detection: post: summary: Emotion detection description: Detect emotions present in input text. operationId: textEmotionDetection tags: [Text] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TextRequest' responses: '200': description: Aggregated provider results content: application/json: schema: type: object /translation/automatic_translation: post: summary: Automatic translation operationId: automaticTranslation tags: [Translation] requestBody: required: true content: application/json: schema: type: object required: [providers, text, source_language, target_language] properties: providers: type: string text: type: string source_language: type: string target_language: type: string responses: '200': description: Translation results content: application/json: schema: type: object /image/object_detection: post: summary: Object detection operationId: imageObjectDetection tags: [Image] requestBody: required: true content: multipart/form-data: schema: type: object required: [providers, file] properties: providers: type: string file: type: string format: binary responses: '200': description: Detection results /ocr/ocr: post: summary: OCR description: Extract text from an image or PDF using selected OCR providers. operationId: ocr tags: [OCR] requestBody: required: true content: multipart/form-data: schema: type: object required: [providers, file] properties: providers: type: string file: type: string format: binary language: type: string responses: '200': description: OCR results /audio/speech_to_text_async: post: summary: Submit async speech-to-text job operationId: audioSpeechToTextAsyncCreate tags: [Audio] requestBody: required: true content: multipart/form-data: schema: type: object required: [providers, file] properties: providers: type: string file: type: string format: binary language: type: string responses: '200': description: Job submitted /audio/speech_to_text_async/{public_id}: get: summary: Get async speech-to-text job result operationId: audioSpeechToTextAsyncGet tags: [Audio] parameters: - in: path name: public_id required: true schema: type: string responses: '200': description: Job status / result components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: API key schemas: TextRequest: type: object required: [providers, text, language] properties: providers: type: string description: Comma-separated provider list (e.g. "openai,google"). text: type: string language: type: string