Azure / Azure/azure-rest-api-specs

[BUG] `BlobContentTypeParameter` missing from `Blob : op download`

Open
#40,801 0 comments 0 reactions 0 assignees View on GitHub
bug customer-reported question
Dominant language
TypeSpec
Stars
3.1k
Forks
5.9k
Avg merge
2d 22h
Merged PRs (30d)
444

Description

### API Spec link

https://github.com/Azure/azure-rest-api-specs/blob/main/specification/storage/Microsoft.BlobStorage/routes.tsp

### API Spec version

2026-02-26

### Describe the bug

See bug report here https://github.com/Azure/azure-sdk-for-rust/issues/3817

Because the `BlobContentTypeParameter` is missing from the response to `op download` defined here:
https://github.com/Azure/azure-rest-api-specs/blob/05d1c25a769ec0cbf9ea44dac56b9e795eea92d7/specification/storage/Microsoft.BlobStorage/routes.tsp#L705-L838

There is no accessor for this property in the generated `BlobClientDownloadResultHeaders` trait.

This also appears to be the case for `op getProperties`:
https://github.com/Azure/azure-rest-api-specs/blob/05d1c25a769ec0cbf9ea44dac56b9e795eea92d7/specification/storage/Microsoft.BlobStorage/routes.tsp#L843-L931

### Expected behavior

The "blob content type" that was set with `op upload` and/or `op setProperties` can be read from the response of `op download` and/or `op getProperties`.

### Actual behavior

The generated code does not allow accessing the "blob content type"

### Reproduction Steps

```rs
ManagedIdentityCredential::new(None)?;

let blob_client = BlobClient::new(
"https://.blob.core.windows.net/",
"test",
"test",
Some(credential),
None,
)?;

blob_client
.upload(
RequestContent::from("test".to_vec()),
true,
4,
Some(BlockBlobClientUploadOptions {
blob_content_type: Some(String::from("text/plain"),
..Default::default()
}),
)
.await?;

let response = blob_client
.download(None)
.await?;

let content_type = response.content_type().unwrap();
// ^^^^^^^^^^^^^^ This method does not exist
```

### Environment

_No response_

Contributor guide

Open the contributing guide

Research direction

Start in specification/storage/Microsoft.BlobStorage/routes.tsp, inspecting the response definitions for `op download` at lines 705-838 and `op getProperties` at lines 843-931. Compare how the blob content type is represented for `op upload` or `op setProperties`. Done means both responses include `BlobContentTypeParameter` so generated Rust code exposes a content-type accessor.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, rust
Domain
api, cloud
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.