Was this page helpful?
Хранилища и учетные данные — это примитивы аутентификации, которые позволяют вам зарегистрировать учетные данные для сторонних сервисов один раз и ссылаться на них по ID при создании сеанса. Это означает, что вам не нужно запускать собственное хранилище секретов, передавать токены при каждом вызове или терять отслеживание того, от имени какого конечного пользователя действовал агент.
Ссылка на хранилище — это параметр для каждого сеанса, поэтому вы можете управлять своим продуктом на уровне агента и своими пользователями на уровне сеанса.
Все запросы Managed Agents API требуют заголовка бета-версии managed-agents-2026-04-01. SDK автоматически устанавливает заголовок бета-версии.
Хранилища и учетные данные имеют область действия рабочей области, что означает, что любой, у кого есть доступ к ключу API, может использовать их для авторизации агента для выполнения задачи. Чтобы отозвать доступ, удалите хранилище или учетные данные.
Хранилище — это совокупность credentials, связанных с конечным пользователем. Дайте ему display_name и при необходимости пометьте его metadata, чтобы вы могли сопоставить его с вашими собственными записями пользователей.
vault_id=$(curl --fail-with-body -sS https://api.anthropic.com/v1/vaults \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: managed-agents-2026-04-01" \
-H "content-type: application/json" \
--data @- <<'EOF' | jq -r '.id'
{
"display_name": "Alice",
"metadata": {"external_user_id": "usr_abc123"}
}
EOF
)
echo "$vault_id" # "vlt_01ABC..."Ответ — это полная запись хранилища:
{
"type": "vault",
"id": "vlt_01ABC...",
"display_name": "Alice",
"metadata": { "external_user_id": "usr_abc123" },
"created_at": "2026-03-18T10:00:00Z",
"updated_at": "2026-03-18T10:00:00Z",
"archived_at": null
}Каждые учетные данные привязываются к одному mcp_server_url. Когда агент подключается к серверу MCP во время выполнения сеанса, API сопоставляет URL сервера с активными учетными данными в указанном хранилище и внедряет токен.
Поля секретов (token, access_token, refresh_token, client_secret) доступны только для записи. Они никогда не возвращаются в ответах API.
Учетные данные хранятся в предоставленном виде и не проверяются до выполнения сеанса. Неправильный токен проявляется как ошибка аутентификации MCP во время сеанса, которая выдается, но не блокирует продолжение сеанса.
Ограничения:
mcp_server_url на хранилище. Создание второго набора учетных данных для того же URL возвращает 409.mcp_server_url неизменяем. Чтобы указать на другой сервер, архивируйте эти учетные данные и создайте новые.Только полезная нагрузка секрета и несколько полей метаданных изменяемы. mcp_server_url, token_endpoint и client_id заблокированы после создания.
Передайте vault_ids при создании сеанса:
Поведение во время выполнения:
include_archived=true, чтобы включить их).POST /v1/vaults/{id}/archive. Каскадирует на все учетные данные. Секреты удаляются; записи сохраняются для аудита. Будущие сеансы, ссылающиеся на это хранилище, не удаются; работающие сеансы продолжаются.POST /v1/vaults/{id}/credentials/{cred_id}/archive. Удаляет полезную нагрузку секрета; mcp_server_url остается видимым. Освобождает mcp_server_url для замены учетных данных.curl --fail-with-body -sS \
"https://api.anthropic.com/v1/vaults/$vault_id/credentials/$credential_id" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: managed-agents-2026-04-01" \
-H "content-type: application/json" \
--data @- <<'EOF' > /dev/null
{
"auth": {
"type": "mcp_oauth",
"access_token": "xoxp-new-...",
"expires_at": "2026-05-15T00:00:00Z",
"refresh": {"refresh_token": "xoxe-1-new-..."}
}
}
EOFsession_id=$(curl --fail-with-body -sS https://api.anthropic.com/v1/sessions \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: managed-agents-2026-04-01" \
-H "content-type: application/json" \
--data @- <<EOF | jq -r '.id'
{
"agent": "$agent_id",
"environment_id": "$environment_id",
"vault_ids": ["$vault_id"],
"title": "Alice's Slack digest"
}
EOF
)