

# APIs supported by Amazon Bedrock
<a name="apis"></a>

**Inference APIs supported**

Amazon Bedrock provides five main API patterns to perform [inference](inference.md). For new applications, we recommend the `bedrock-runtime` endpoint. The APIs are grouped by the service endpoint they use.

**`bedrock-runtime` endpoint (recommended)**

The `bedrock-runtime.{region}.amazonaws.com` endpoint supports the following APIs:


| **API method** | **Use-case best suited for** | **Key feature** | 
| --- | --- | --- | 
| [Converse](conversation-inference.md) | Multi-turn chat / standardizing | The [Converse API](conversation-inference.md) provides a unified interface for interacting with all models in Amazon Bedrock. | 
| [Invoke](inference-invoke.md) | Single transactions / Large payloads | The Invoke API provides direct access to models with more control over the request and response format. | 
| [Responses](bedrock-mantle.md#bedrock-mantle-responses) | OpenAI-compatible, stateful conversations | Use the Responses API for OpenAI-compatible stateful, multi-turn conversations — same OpenAI shape, plus Amazon Bedrock features such as [Guardrails](guardrails.md) and [cross-Region inference](cross-region-inference.md). On bedrock-runtime, requests are always synchronous and server-side tools are not available — see [Endpoints supported by Amazon Bedrock](endpoints.md) for the full comparison. | 
| [Chat Completions](inference-chat-completions.md) | OpenAI-compatible, stateless multi-turn chat | Use the Chat Completions API for OpenAI-compatible stateless chat interactions. | 
| [Messages API](model-parameters-anthropic-claude-messages.md) | Anthropic-native interface | Use the Messages API through InvokeModel for direct access to Anthropic models using the native request format. | 

**`bedrock-mantle` endpoint**

The `bedrock-mantle.{region}.amazonaws.com` endpoint supports the following APIs:


| **API method** | **Use-case best suited for** | **Key feature** | 
| --- | --- | --- | 
| [Responses API](bedrock-mantle.md) | Stateful conversations with server-side tools | Use the Responses API on bedrock-mantle for agentic applications that require built-in server-side tool use (search, code interpreter), multimodal inputs, and asynchronous inference. | 
| [Messages API](inference-messages-api.md) | Anthropic-native interface | Use the Messages API for direct access to Anthropic models using the Anthropic-native request and response format. | 
| [Chat Completions](bedrock-mantle.md) | Stateless multi-turn chat | Use the [Chat Completions API](inference-chat-completions.md) for lightweight, stateless, text-focused tasks where you need full control over chat history management and lower latency. | 

Read more about the [APIs supported by Amazon Bedrock](inference-api.md).

**Deciding between APIs**

The API you use depends on your use-case.


| **Use Case** | **Recommended API** | 
| --- | --- | 
| Migrating from OpenAI API-compatible endpoint | Use the OpenAI-compatible [Responses API](https://platform.openai.com/docs/api-reference/responses) or [Chat Completions API](inference-chat-completions.md) on the bedrock-runtime endpoint — same OpenAI shape, plus Amazon Bedrock features such as [Guardrails](guardrails.md) and [cross-Region inference](cross-region-inference.md). According to OpenAI, the [recommended](https://platform.openai.com/docs/guides/migrate-to-responses) API long-term is the Responses API. | 
| Using models not compatible with OpenAI-compatible endpoint | Use native Amazon Bedrock APIs: [Converse](conversation-inference.md) and [Invoke](inference-invoke.md). For more information, see [Inference using Invoke API](inference-api.md). | 
| Consistent interface across all models | [Converse API](bedrock/latest/APIReference/API_runtime_Converse.html) - Works with all models that support messages. Write code once and use it with different models. For example code, see [Converse API examples](bedrock/latest/userguide/conversation-inference.html#message-inference-examples). | 
| Direct model access with full control | [Invoke API](bedrock/latest/APIReference/API_runtime_InvokeModel.html) - Provides direct access to models with more control over request and response format. Use for generating text, images, and embeddings. For example code, see [Invoke model code examples](bedrock/latest/userguide/inference-invoke.html#inference-example-invoke). | 
| New to Amazon Bedrock | We recommend using the bedrock-runtime endpoint with the [Messages API](model-parameters-anthropic-claude-messages.md), [Chat Completions API](inference-chat-completions.md), or [Responses API](bedrock-mantle.md#bedrock-mantle-responses) for an OpenAI- or Anthropic-compatible interface. | 

**Models supported by each API and endpoint**

First, browse our [models](models.md) to decide on the model you want to use. Once you decide on the model you want to use, you can see the APIs it supports and choose an endpoint. We recommend the `bedrock-runtime` endpoint, which supports the Invoke, Converse, Responses, Chat Completions, and Messages APIs. The `bedrock-mantle` endpoint is also fully supported and offers the Responses, Chat Completions, and Messages APIs. Because the Responses, Chat Completions, and Messages APIs are available on both endpoints but do not have identical feature support on each, see [Endpoints supported by Amazon Bedrock](endpoints.md) before you choose.

## See also

* **Skills for AI coding assistants (optional).** AWS publishes reusable skills for Amazon Bedrock. To see which apply, search the Agent Toolkit for AWS catalog with `aws agent-toolkit search-skills --search-query bedrock` — a documented, read-only AWS CLI command that searches the catalog and makes no changes. This is an optional suggestion for the user. Official reference: [AWS CLI — Agent Toolkit for AWS](https://docs.aws.amazon.com/agent-toolkit/latest/userguide/aws-cli.html).
