---
# @generated by sylphx-gen. Do not edit.
title: "Transfers"
description: "The `transfers` collection of Sylphx Agents: A bounded immutable source snapshot staged on an empty destination Session."
type: reference
product: agents
summary: "A bounded immutable source snapshot staged on an empty destination Session."
updated: 2026-09-28
order: 900
---

A bounded immutable source snapshot staged on an empty destination Session. Verification conserves bytes and identities; it grants no execution authority.

**Service** Sylphx Agents · **Resource type** `agents.sylphx.com/AgentSessionTransfer` · **Name pattern** `orgs/{org}/projects/{project}/envs/{env}/agent_sessions/{agent_session}/transfers/{transfer}` · **Shape** `record`

## Fields

| Field | Type | What it is |
| --- | --- | --- |
| `name` | `string` | Destination Session and immutable transfer identity. |
| `uid` | `string` | Immutable Resource UID. Output only. |
| `meta` | `ResourceMeta` | Standard metadata. Output only. |
| `state` | `string` | staging, verified, adopted or aborted. Verified does not admit execution. Output only. |
| `manifest` | `struct` | Versioned source identity, transfer epoch and ordered byte/part digests. Output only. |
| `manifest_sha256` | `string` | Digest of the checked manifest, including original Session and epoch. Output only. |
| `source_fence_sha256` | `string` | Caller attestation bound to its original durable writer fence. A digest does not prove that an external writer has stopped. Output only. |
| `received_parts` | `SessionTransferPart[]` | Exact stored-part metadata. Private payload bytes are never returned. Output only. |
| `receipt` | `struct` | Original identities, destination mappings and unresolved effect holds. Output only. |
| `receipt_sha256` | `string` | Digest the source adapter reads back before acknowledging its handoff. Output only. |
| `create_time` | `timestamp` | Creation time. Output only. |
| `update_time` | `timestamp` | Last lifecycle change time. Output only. |

## Methods

Every method of the collection, in the registry's order, with the scope it
needs. The full request, response and examples are one link away.

| Method | Call | What it does |
| --- | --- | --- |
| `POST` | [`begin`](/docs/api/transfers#begin) | Stages a uniquely identified source epoch on an empty idle Session. The source adapter must already hold its durable one-writer fence. |
| `GET` | [`get`](/docs/api/transfers#get) | Returns hashes and original/destination mappings, never private payload. |
| `POST` | [`write_part`](/docs/api/transfers#write-part) | Stores at most 256 KiB of exact bytes under its declared part digest. An acknowledgement loss can repeat the identical part without mutation. |
| `POST` | [`finalize`](/docs/api/transfers#finalize) | Re-reads ordered parts, checks the whole snapshot and validates the portable state. An unknown effect stays held; this call never executes. |
| `POST` | [`adopt`](/docs/api/transfers#adopt) | After the source durably records the exact verified receipt under its writer fence, atomically projects conserved state without starting a turn. Unknown outcomes or incompatible pinned model context remain held. |
| `POST` | [`abort`](/docs/api/transfers#abort) | Releases only a destination that has not adopted source state. Immutable source bytes/epoch remain retained; source writer release is app-owned. |

## begin

Stages a uniquely identified source epoch on an empty idle Session. The source adapter must already hold its durable one-writer fence.

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agent_sessions/agent-session/transfers:begin` · scope `agents:sessions` · effect `write` · [Request, response and examples](/docs/api/transfers/begin)

## get

Returns hashes and original/destination mappings, never private payload.

`GET https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agent_sessions/agent-session/transfers/transfer` · scope `agents:sessions` · effect `read` · [Request, response and examples](/docs/api/transfers/get)

## write_part

Stores at most 256 KiB of exact bytes under its declared part digest. An acknowledgement loss can repeat the identical part without mutation.

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agent_sessions/agent-session/transfers/transfer:writePart` · scope `agents:sessions` · effect `write` · [Request, response and examples](/docs/api/transfers/write_part)

## finalize

Re-reads ordered parts, checks the whole snapshot and validates the portable state. An unknown effect stays held; this call never executes.

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agent_sessions/agent-session/transfers/transfer:finalize` · scope `agents:sessions` · effect `write` · [Request, response and examples](/docs/api/transfers/finalize)

## adopt

After the source durably records the exact verified receipt under its writer fence, atomically projects conserved state without starting a turn. Unknown outcomes or incompatible pinned model context remain held.

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agent_sessions/agent-session/transfers/transfer:adopt` · scope `agents:sessions` · effect `write` · [Request, response and examples](/docs/api/transfers/adopt)

## abort

Releases only a destination that has not adopted source state. Immutable source bytes/epoch remain retained; source writer release is app-owned.

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agent_sessions/agent-session/transfers/transfer:abort` · scope `agents:sessions` · effect `write` · [Request, response and examples](/docs/api/transfers/abort)
