Revision 1 reference
Revision 1 is defined by the central Rust request registry in s3lens-protocol. The catalog below is read from its committed deterministic JSON Schema during the docs build, so it stays aligned with the wire types.
Revision 1 defines 37 requests and 2 notification method.
Session
| Method | Summary | Parameters | Result | Notification |
|---|---|---|---|---|
initialize | Negotiates the protocol revision and connection capabilities. | InitializeParams | InitializeResult | No |
server/ping | Checks that the initialized server can process a request. | PingParams | PingResult | Yes |
Providers
| Method | Summary | Parameters | Result | Notification |
|---|---|---|---|---|
provider/list | Lists Providers configured in the current Workspace. | ProviderListParams | ProviderListResult | No |
Buckets
| Method | Summary | Parameters | Result | Notification |
|---|---|---|---|---|
bucket/create | Creates one explicitly named Bucket through a Provider. | BucketCreateParams | BucketCreateResult | No |
bucket/delete | Deletes one explicitly named Bucket through a Provider. | BucketDeleteParams | BucketDeleteResult | No |
bucket/get | Gets one explicitly named Bucket from a Provider. | BucketGetParams | BucketGetResult | No |
bucket/list | Lists Buckets belonging to one Provider. | BucketListParams | BucketListResult | No |
bucket/policy/delete | Deletes the native S3 policy attached to one Bucket. | BucketPolicyDeleteParams | BucketPolicyDeleteResult | No |
bucket/policy/get | Gets the native S3 policy attached to one Bucket. | BucketPolicyGetParams | BucketPolicyGetResult | No |
bucket/policy/put | Replaces the native S3 policy attached to one Bucket. | BucketPolicyPutParams | BucketPolicyPutResult | No |
bucket/policy/status/get | Gets the policy-derived public-access status of one Bucket. | BucketPolicyStatusGetParams | BucketPolicyStatusGetResult | No |
Objects
| Method | Summary | Parameters | Result | Notification |
|---|---|---|---|---|
object/copy | Copies the current Object to a key in any Bucket of any Provider. | ObjectCopyParams | ObjectCopyResult | No |
object/delete | Deletes one exact Object key from a Provider Bucket. | ObjectDeleteParams | ObjectDeleteResult | No |
object/delete-many | Deletes up to 1,000 exact Object keys from one Provider Bucket. | ObjectDeleteManyParams | ObjectDeleteManyResult | No |
object/get | Gets one exact Object and its complete content. | ObjectGetParams | ObjectGetResult | No |
object/list | Lists Objects in one Provider Bucket. | ObjectListParams | ObjectListResult | No |
object/move | Moves the current Object to another key in the same Provider Bucket. | ObjectMoveParams | ObjectMoveResult | No |
object/prefix/delete | Deletes every current Object under one non-empty prefix. | ObjectPrefixDeleteParams | ObjectPrefixDeleteResult | No |
object/preview | Gets a bounded, inert preview of one exact Object. | ObjectPreviewParams | ObjectPreviewResult | No |
object/put | Creates or replaces one exact Object. | ObjectPutParams | ObjectPutResult | No |
object/search | Searches complete Object keys across one Provider Bucket. | ObjectSearchParams | ObjectSearchResult | No |
object/tags/delete | Deletes the complete tag set attached to one Object. | ObjectTagsDeleteParams | ObjectTagsDeleteResult | No |
object/tags/get | Gets the complete tag set attached to one Object. | ObjectTagsGetParams | ObjectTagsGetResult | No |
object/tags/put | Replaces the complete tag set attached to one Object. | ObjectTagsPutParams | ObjectTagsPutResult | No |
object/transfer/create | Creates a single-use HTTP streaming transfer ticket for one exact Object. | ObjectTransferCreateParams | ObjectTransferCreateResult | No |
object/version/delete | Deletes one exact Object version. | ObjectVersionDeleteParams | ObjectVersionDeleteResult | No |
object/version/get | Gets one exact Object version and its complete content. | ObjectVersionGetParams | ObjectVersionGetResult | No |
object/versions/list | Lists Object versions and delete markers in one Bucket. | ObjectVersionsListParams | ObjectVersionsListResult | No |
Multipart uploads
| Method | Summary | Parameters | Result | Notification |
|---|---|---|---|---|
multipart-upload/abort | Aborts one in-progress multipart upload. | MultipartUploadAbortParams | MultipartUploadAbortResult | No |
multipart-upload/list | Lists in-progress multipart uploads in one Bucket. | MultipartUploadListParams | MultipartUploadListResult | No |
multipart-upload/parts/list | Lists uploaded parts belonging to one multipart upload. | MultipartUploadPartsListParams | MultipartUploadPartsListResult | No |
Machine-readable schema
Section titled “Machine-readable schema”The complete JSON Schema includes every request, notification, success response, error envelope, parameter type, result type, and shared data type:
Download the protocol revision 1 JSON Schema
The schema uses JSON Schema Draft 2020-12 and contains an x-s3lens-protocol extension with the revision number plus direct method-to-parameter/result mappings. Source generation is deterministic:
pnpm run generate:protocolpnpm run generate:checkCompatibility
Section titled “Compatibility”A new domain or method can remain within revision 1 when it is an additive wire change. A new protocol revision is reserved for genuine compatibility breaks. Clients must send their supported revision during initialize and treat the returned revision as authoritative.