I Found That Claude Fable 5 Can Now Be Called via Bedrock Mantle, So I Tried It Out

I Found That Claude Fable 5 Can Now Be Called via Bedrock Mantle, So I Tried It Out

Claude Fable 5 is now available on Amazon Bedrock Mantle. Calls require setting Data Retention Mode to provider_data_share on the Mantle side. I checked curl and Python SDK usage and OpenAI-compatible path support.
2026.07.05

This page has been translated by machine translation. View original

Introduction

In the previous article (7/1), I checked whether Claude Fable 5 could be called from Amazon Bedrock Mantle. At that time, a 404 was returned in every region I checked, and the model did not exist.

https://dev.classmethod.jp/articles/bedrock-claude-fable-5-resumed/

When I checked again on 7/5, model information could be retrieved from Mantle. By setting Data Retention Mode, the invocation also succeeded. The differences from the previous check are as follows.

Item Previous (7/1) This time (7/5)
Model existence in Mantle 404: model does not exist Retrievable via GET /v1/models/{id}
/anthropic/v1/messages Could not be tried (no model) Succeeded after Data Retention was set
OpenAI-compatible paths Could not be tried (no model) Not supported (400)

Verification

In the following verification, I used a token obtained with aws-bedrock-token-generator as the Mantle API key.

pip install aws-bedrock-token-generator
export BEDROCK_API_KEY=$(python -c "from aws_bedrock_token_generator import provide_token; print(provide_token(region='us-east-1'))")

Checking whether the model is available

I checked the model information with GET /v1/models/anthropic.claude-fable-5.

curl https://bedrock-mantle.us-east-1.api.aws/v1/models/anthropic.claude-fable-5 \
  -H "x-api-key: $BEDROCK_API_KEY"
{
  "id": "anthropic.claude-fable-5",
  "object": "model",
  "created": 1780272000,
  "owned_by": "system",
  "status": "unavailable",
  "data_retention": {
    "allowed_modes": ["provider_data_share"],
    "mode": "inherit",
    "source": "account"
  }
}

status is unavailable, and data_retention.allowed_modes contains only ["provider_data_share"]. If it stays at inherit, the condition is not met and the model cannot be used.

Setting Data Retention Mode

# Check the current setting on the Mantle side
curl https://bedrock-mantle.us-east-1.api.aws/v1/data_retention \
  -H "x-api-key: $BEDROCK_API_KEY"
{"mode":"inherit"}

With inherit left as is, the invocation of Fable 5 failed. I will change it to provider_data_share.

# Change the Mantle side to provider_data_share
curl -X PUT https://bedrock-mantle.us-east-1.api.aws/v1/data_retention \
  -H "x-api-key: $BEDROCK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"mode": "provider_data_share"}'
{"mode":"provider_data_share","updated_at":1783233083}

As a reference, checking the Data Retention on the Control Plane side with the AWS CLI gives the following.

aws bedrock get-account-data-retention --region us-east-1
{"mode": "provider_data_share", "updatedAt": "2026-06-09T23:46:41.595000+00:00"}

The Control Plane side had already been set on 6/10, but the Mantle side was still inherit. The two are managed separately.

Calling with the Anthropic Messages API

After setting Data Retention, I was able to call Fable 5 via /anthropic/v1/messages.

curl -X POST https://bedrock-mantle.us-east-1.api.aws/anthropic/v1/messages \
  -H "x-api-key: $BEDROCK_API_KEY" \
  -H "content-type: application/json" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "anthropic.claude-fable-5",
    "max_tokens": 200,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'
{
  "model": "claude-fable-5",
  "id": "msg_bdrk_5b574rbpxs5stk37sqg44r2ecpro4dx4e5zzk65dvap4njpl6xsq",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "Hello! I'm Claude, an AI assistant made by Anthropic, here to help you with questions, writing, analysis, and much more."
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 23,
    "output_tokens": 30
  }
}

Calling with the Anthropic Python SDK

The Anthropic SDK internally appends the /v1/messages path. If you specify base_url up to Mantle's /anthropic, it calls the same path as in the curl example.

from anthropic import Anthropic
from aws_bedrock_token_generator import provide_token

token = provide_token(region="us-east-1")

client = Anthropic(
    api_key=token,
    base_url="https://bedrock-mantle.us-east-1.api.aws/anthropic",
)

message = client.messages.create(
    model="anthropic.claude-fable-5",
    max_tokens=200,
    messages=[{"role": "user", "content": "Hello!"}],
)
print(message.content[0].text)

OpenAI-compatible paths are not supported

Fable 5 does not support Mantle's OpenAI-compatible endpoints.

Path Result
/openai/v1/responses 400: does not support the '/openai/v1/responses' API
/v1/chat/completions 400: does not support the '/v1/chat/completions' API
/openai/v1/chat/completions 400: does not support the '/openai/v1/chat/completions' API

All of them return HTTP 400, an error indicating that the model does not support the API path in question (not a 404 for a nonexistent path).

Summary

Claude Fable 5, which did not exist in Mantle as of July 1, could be confirmed via GET /v1/models/anthropic.claude-fable-5 as of July 5.

In this verification environment, changing the Data Retention Mode on the Mantle side to provider_data_share allowed me to call it from /anthropic/v1/messages. Because it is managed separately from the Control Plane's Data Retention setting, you need to check the Mantle-side setting even if you can already use the model through the Converse API.

References


Claudeならクラスメソッドにお任せください

クラスメソッドは、Anthropic社とリセラー契約を締結しています。各種製品ガイドから、業種別の活用法、フェーズごとのお悩み解決などサービス支援ページにまとめております。まずはご覧いただき、お気軽にご相談ください。

サービス詳細を見る

Share this article

AWSのお困り事はクラスメソッドへ