---
canonical_url: "https://docs.composio.dev/toolkits/eden_ai"
markdown_url: "https://docs.composio.dev/toolkits/eden_ai.md"
product: "platform"
version: null
last_updated: null
---

# Eden AI

Eden AI provides one API for accessing and orchestrating AI models across multiple providers for text, image, audio, document, and multimodal workloads.

- **Category:** artificial intelligence
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 10
- **Triggers:** 0
- **Slug:** `EDEN_AI`
- **Version:** 00000000_00

## Tools

### Count Anthropic Tokens

**Slug:** `EDEN_AI_COUNT_ANTHROPIC_TOKENS`

Count input tokens for an Anthropic-format message request before generation, including system content and tool definitions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `model` | string | Yes | Anthropic-compatible model ID whose tokenizer should be used. |
| `tools` | array | No | Anthropic tool definitions included in the measured request. |
| `system` | string | No | System text or text content blocks included in the token count. |
| `messages` | array | Yes | Ordered, non-empty Anthropic-format messages to measure. |
| `tool_choice` | object | No | Tool-selection configuration included in the measured request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Anthropic Message

**Slug:** `EDEN_AI_CREATE_ANTHROPIC_MESSAGE`

Generate a non-streaming Anthropic-compatible message with content blocks, stop reason, token usage, provider metadata, and Eden AI cost. Each call runs a paid model and consumes Eden AI credits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `model` | string | Yes | Anthropic-compatible model ID in 'provider/model' form. |
| `top_p` | number | No | Nucleus sampling probability from 0 through 1. |
| `system` | string | No | System prompt as text or an ordered list of Anthropic content blocks. |
| `messages` | array | Yes | Ordered, non-empty Anthropic-format user and assistant conversation messages. |
| `fallbacks` | array | No | Up to three fallback model IDs to try in order if the primary model fails. |
| `max_tokens` | integer | No | Maximum number of tokens to generate; must be at least 1. |
| `temperature` | number | No | Sampling temperature from 0 through 2. |
| `stop_sequences` | array | No | Text sequences that stop generation when encountered. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Chat Completion

**Slug:** `EDEN_AI_CREATE_CHAT_COMPLETION`

Generate a non-streaming OpenAI-compatible chat completion with a current Eden AI model and return its choices, token usage, provider, and cost. Each call runs a paid model and consumes Eden AI credits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `model` | string | Yes | Current model ID in 'provider/model' form from DISCOVER_CAPABILITIES, or '@edenai' for dynamic routing. |
| `messages` | array | Yes | Ordered, non-empty text conversation sent to the model. |
| `fallbacks` | array | No | Up to three model IDs to try in order if the primary model fails. |
| `max_tokens` | integer | No | Maximum number of tokens to generate; must be at least 1. |
| `temperature` | number | No | Sampling temperature from 0 through 2. |
| `response_format` | object | No | Provider-compatible response format configuration, including optional JSON Schema output. |
| `reasoning_effort` | string ("minimal" | "low" | "medium" | "high" | "max" | "xhigh" | "disable" | "none") | No | Reasoning effort for models that support configurable reasoning. |
| `router_candidates` | array | No | Candidate model IDs considered for dynamic routing; valid only when model is '@edenai'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Embeddings

**Slug:** `EDEN_AI_CREATE_EMBEDDINGS`

Create embeddings for one text or a batch of texts and return vectors with model, usage, provider, and cost metadata. Each call runs a paid model and consumes Eden AI credits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user` | string | No | Stable end-user identifier for provider abuse monitoring. |
| `input` | string | Yes | One non-empty text or a non-empty batch of up to 2048 texts to embed. |
| `model` | string | Yes | Embedding model ID in 'provider/model' form from Discover AI Capabilities. |
| `dimensions` | integer | No | Positive reduced vector size for models that support configurable dimensions. |
| `encoding_format` | string ("float" | "base64") | No | Return each embedding as float values or a base64-encoded string. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Response

**Slug:** `EDEN_AI_CREATE_RESPONSE`

Create or continue a synchronous OpenAI Responses-compatible text response, stored by default for later retrieval, and return its ID, structured output, text, usage, provider, and cost.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `input` | string | No | Text input for a new turn; may be omitted only when previous_response_id supplies conversation state. |
| `model` | string | Yes | Current model ID in 'provider/model' form from DISCOVER_CAPABILITIES. |
| `store` | boolean | No | Store the response so GET_RESPONSE can retrieve it later. |
| `fallbacks` | array | No | Up to three fallback model IDs tried in order. |
| `temperature` | number | No | Sampling temperature from 0 through 2. |
| `instructions` | string | No | System or developer instructions for this response; not inherited from the previous response. |
| `max_output_tokens` | integer | No | Requested maximum output tokens; Eden AI or the provider may enforce a higher minimum. |
| `previous_response_id` | string | No | Stored response ID to continue a server-managed conversation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Discover AI Capabilities

**Slug:** `EDEN_AI_DISCOVER_CAPABILITIES`

Find current Eden AI models or inspect Universal AI feature schemas, providers, pricing, and regions before an execution call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | No | Case-insensitive text matched against model IDs, model names, alias_of, feature names, and subfeature names. |
| `region` | string | No | Keep records available in this region code, such as 'eu'. |
| `feature` | string | No | Universal AI feature such as 'text'; omit to list all feature groups. |
| `provider` | string | No | Keep model or Universal AI provider records matching this provider name. |
| `model_type` | string ("all" | "embeddings" | "moderation") | No | Model catalog to search when discovery_type is 'models'. |
| `subfeature` | string | No | Universal AI subfeature such as 'moderation'; requires feature and returns its simplified runtime schema. |
| `max_results` | integer | No | Maximum matching records to return after local filtering (1-100). |
| `discovery_type` | string ("models" | "universal_ai") | No | Choose 'models' for executable model records or 'universal_ai' for feature and input-schema discovery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Cost Overview

**Slug:** `EDEN_AI_GET_COST_OVERVIEW`

Return current account credits and, when a date range is supplied, aggregated consumption filtered by provider or subfeature.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end_date` | string | No | Last UTC calendar date to include (YYYY-MM-DD); requires start_date. |
| `provider` | string | No | Limit consumption data to one provider; requires a date range. |
| `start_date` | string | No | First UTC calendar date to include (YYYY-MM-DD); requires end_date. |
| `subfeature` | string | No | Limit consumption data to one Eden AI subfeature; requires a date range. |
| `aggregation` | string ("daily" | "weekly" | "monthly" | "yearly") | No | Time bucket for consumption data when a date range is supplied. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Response

**Slug:** `EDEN_AI_GET_RESPONSE`

Retrieve a previously stored Responses API object by ID, including its status, text output, structured output, usage, and canonical model.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `response_id` | string | Yes | Response ID returned by CREATE_RESPONSE. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Moderate Text

**Slug:** `EDEN_AI_MODERATE_TEXT`

Classify one text or a batch of texts for safety categories and return flags, category scores, applied input types, provider, and cost. Each call runs a paid model and consumes Eden AI credits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `input` | string | Yes | One text or a non-empty batch of texts to classify for safety. |
| `model` | string | No | Moderation model ID in 'provider/model' form. Discover current alternatives before overriding this default. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Run Universal AI

**Slug:** `EDEN_AI_RUN_UNIVERSAL_AI`

Run one synchronous Eden AI Universal AI feature using a current model and feature-specific input. Call DISCOVER_CAPABILITIES first for the exact model ID and runtime input schema. Returns normalized output, provider, and cost, with the raw provider response only when requested. Each call runs a paid model and consumes Eden AI credits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `input` | object | Yes | Non-empty feature-specific input object. Copy the exact field names and value shapes returned by DISCOVER_CAPABILITIES for the selected feature and subfeature; Eden AI validates this object dynamically at runtime. |
| `model` | string | Yes | Full model ID in 'feature/subfeature/provider[/model]' form. Call DISCOVER_CAPABILITIES immediately before this tool to obtain a current model ID and its exact input schema. |
| `fallbacks` | array | No | Up to three fallback provider names, provider/model identifiers, or full Universal AI model IDs, tried in order. |
| `provider_params` | object | No | Provider-specific parameters documented in the discovered feature schema. Omit this object unless the selected provider requires or supports them. |
| `show_original_response` | boolean | No | Include the raw provider response in addition to Eden AI's normalized output. Leave false for a smaller, provider-independent result. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
