---
title: "Update Session Resource"
method: POST
path: "/v1/sessions/{session_id}/resources/{resource_id}?beta=true"
---

# Update Session Resource

`POST /v1/sessions/{session_id}/resources/{resource_id}?beta=true`

## Request

- Base URL: `https://api.anthropic.com`
- URL: `https://api.anthropic.com/v1/sessions/{session_id}/resources/{resource_id}?beta=true`
- Auth: none declared
- TypeScript: <https://skmtc.dev/anthropics/apis/anthropic-api/docs/v1/sessions/:session_id/resources/:resource_id%3Fbeta=true/post.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `session_id` string, required
- `resource_id` string, required

## Headers

- `anthropic-version` string: The version of the Claude API you want to use. Read more about versioning and our version history [here](https://platform.claude.com/docs/en/api/versioning).
- `anthropic-beta` AnthropicBeta[]: This endpoint is in beta: requests must send `managed-agents-2026-04-01` in this header.
  - union: Beta names you can send in the `anthropic-beta` header. See [Beta headers](https://platform.claude.com/docs/en/api/beta-headers) for how to send them and where to find the name a feature needs.
    - string
    - 'message-batches-2024-09-24' | 'prompt-caching-2024-07-31' | 'computer-use-2024-10-22' | 'computer-use-2025-01-24' | 'pdfs-2024-09-25' | 'token-counting-2024-11-01' | 'token-efficient-tools-2025-02-19' | 'output-128k-2025-02-19' | 'files-api-2025-04-14' | 'mcp-client-2025-04-04' | 'mcp-client-2025-11-20' | 'dev-full-thinking-2025-05-14' | 'interleaved-thinking-2025-05-14' | 'code-execution-2025-05-22' | 'extended-cache-ttl-2025-04-11' | 'context-1m-2025-08-07' | 'context-management-2025-06-27' | 'model-context-window-exceeded-2025-08-26' | 'skills-2025-10-02' | 'fast-mode-2026-02-01' | 'output-300k-2026-03-24' | 'user-profiles-2026-03-24' | 'user-profiles-2026-08-18' | 'user-profiles-2026-09-04' | 'advisor-tool-2026-03-01' | 'managed-agents-2026-04-01' | 'cache-diagnosis-2026-04-07' | 'dreaming-2026-04-21' | 'thinking-token-count-2026-05-13' | 'server-side-fallback-2026-06-01' | 'server-side-fallback-2026-07-01' | 'fallback-credit-2026-06-01' | 'fallback-credit-2026-07-01' | 'agent-memory-2026-07-22' | 'mid-conversation-tool-changes-2026-07-01' | 'compact-2026-01-12' | 'computer-use-2025-11-24' | 'mcp-tunnels-2026-06-22' | 'structured-outputs-2025-11-13' | 'task-budgets-2026-03-13' | 'thinking-display-updates-2026-08-18' | 'ce-user-management-2026-07-13' | 'mid-conversation-output-config-2026-07-01' | 'thinking-binding-controls-2026-08-01' | 'mid-conversation-system-clear-at-2026-08-21' | 'compact-2026-09-04' | 'inline-tools-2026-09-15' | 'mcp-client-2026-09-15' | 'ce-plugins-2026-09-01' | 'spend-limit-reads-2026-09-26' | 'telemetry-destinations-2026-08-11' | 'webhooks-2026-10-07' | 'admin-user-sign-out-2026-10-08' | 'message-threads-2026-08-12' | 'analytics-usage-cost-2026-08-24' | 'experimental-claude-tag-2026-10-21'
- `anthropic-workspace-id` string

## Request body

- BetaManagedAgentsUpdateSessionResourceParams: Request parameters for updating a session resource.
  - `authorization_token` string, required: New authorization token for the resource. Currently only `github_repository` resources support token rotation.

## Response `200`

Successful response (OK)

- union: The updated session resource.
  - object
    - `type` 'github_repository', required
    - `id` string, required
    - `url` string, required
    - `mount_path` string, required
    - `checkout` union
      - object
        - `type` 'branch', required
        - `name` string, required: Branch name to check out.
      - object
        - `type` 'commit', required
        - `sha` string, required: Full commit SHA to check out.
    - `created_at` string, date-time, required: A timestamp in RFC 3339 format
    - `updated_at` string, date-time, required: A timestamp in RFC 3339 format
  - object
    - `type` 'file', required
    - `id` string, required
    - `file_id` string, required
    - `mount_path` string, required
    - `created_at` string, date-time, required: A timestamp in RFC 3339 format
    - `updated_at` string, date-time, required: A timestamp in RFC 3339 format
  - object: A memory store attached to an agent session.
    - `type` 'memory_store', required
    - `memory_store_id` string, required: The memory store ID (memstore_...). Must belong to the caller's organization and workspace.
    - `access` 'read_write' | 'read_only': Access mode for an attached memory store.
    - `name` string, nullable: Display name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
    - `description` string: Description of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
    - `instructions` string, nullable: Per-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
    - `mount_path` string, nullable: Filesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.

## Other responses

- `400`: Invalid argument - The client specified an invalid argument
- `401`: Unauthenticated - The request does not have valid authentication credentials
- `403`: Permission denied - The caller does not have permission to execute the specified operation
- `404`: Not found - Some requested entity was not found
- `408`: Deadline exceeded - The deadline expired before the operation could complete
- `409`: Aborted - The operation was aborted due to concurrency issue
- `412`: Failed precondition - Operation was rejected because the system is not in required state
- `413`: Out of range - Operation was attempted past the valid range
- `429`: Resource exhausted - Some resource has been exhausted (rate limiting)
- `431`: Request header fields too large - Request metadata was too large
- `499`: Cancelled - The operation was cancelled by the client
- `500`: Internal - Internal server error
- `501`: Unimplemented - The operation is not implemented or supported
- `503`: Unavailable - The service is currently unavailable
- `504`: Deadline exceeded - Upstream service did not respond in time

## Changes

- **2026-11-05** `037a593978dc`: 1 info
  - added the enum value `admin-user-sign-out-2026-10-08` to the property `items/anyOf[subschema #2]/` of the `header` request parameter `anthropic-beta`
- **2026-11-02** `9578ce4001dd`: 2 info
  - the `oneOf[#/components/schemas/BetaManagedAgentsGitHubRepositoryResource]/checkout/anyOf[#/components/schemas/BetaManagedAgentsRepositoryCheckout]/oneOf[#/components/schemas/BetaManagedAgentsCommitCheckout]/sha` response's property pattern `^[0-9a-fA-F]+$` was added for the status `200`
  - the `oneOf[#/components/schemas/BetaManagedAgentsMemoryStoreResource]/memory_store_id` response's property pattern `^memstore_[a-zA-Z0-9_]+$` was added for the status `200`
- **2026-10-23** `f538a797852c`: 1 info
  - added the enum value `experimental-claude-tag-2026-10-21` to the property `items/anyOf[subschema #2]/` of the `header` request parameter `anthropic-beta`
- **2026-10-23** `8071e43a8476`: 1 info
  - added the enum value `analytics-usage-cost-2026-08-24` to the property `items/anyOf[subschema #2]/` of the `header` request parameter `anthropic-beta`
- **2026-10-22** `376dea998624`: 1 info
  - added the enum value `message-threads-2026-08-12` to the property `items/anyOf[subschema #2]/` of the `header` request parameter `anthropic-beta`

[Operation history](https://skmtc.dev/anthropics/apis/anthropic-api/changes/v1/sessions/:session_id/resources/:resource_id%3Fbeta=true/post.md)

---

[API](https://skmtc.dev/anthropics/apis/anthropic-api.md) - [All operations](https://skmtc.dev/anthropics/apis/anthropic-api/llms.txt) - [OpenAPI document](https://skmtc.dev/anthropics/apis/anthropic-api/revisions/690622377a5e?raw)
