Skip to content

feat(storage): include custom object metadata in ObjectHighlights #5644

@metebalci

Description

@metebalci

Is your feature request related to a problem? Please describe.

ObjectHighlights returned by Storage::read_object(...).send().await?.object() omits the metadata: HashMap<String, String> field of Object.
Reading per-object custom metadata requires a follow-up StorageControl::get_object RPC — doubling the GET count on workloads that key on per-object metadata, even though the metadata is already on the wire
alongside the body:

Describe the solution you'd like

Add metadata: HashMap<String, String> to ObjectHighlights. Additive on a #[non_exhaustive] struct, no API break. Optionally also surface event_based_hold, temporary_hold, retention so the response can drive retention/hold gating without a follow-up call.

Describe alternatives you've considered

Issuing the follow-up StorageControl::get_object per download — the current workaround the doc comment recommends. Works, but doubles the request count.

Additional context

ObjectHighlights was introduced in #2626 / #2685 as a deliberately curated subset, so this is asking to expand the subset, not redesign the API. The two other major-cloud Rust SDKs already expose object metadata on their download responses:

Metadata

Metadata

Assignees

Labels

api: storageIssues related to the Cloud Storage API.priority: p3Desirable enhancement or fix. May not be included in next release.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions