parity(storage): implement SetHeader method on storage client [from supabase-js]
@Tr00d is already working on this.
Since Jul 1, 2026.
Assessment
This issue has not been assessed yet.
Description
SDK Parity: C# implementation needed
A change was made in supabase-js that needs to be implemented in this repository for SDK parity.
Reference Implementation (supabase-js)
What Changed
A new public setHeader(name, value) method was added to BaseApiClient in storage-js. This allows setting per-request HTTP headers on storage operations.
Code Reference
public setHeader(name: string, value: string): this {
this.headers = { ...this.headers, [name]: value }
return this
}
Implementation Guidance
Expected API Surface (C#)
public StorageFileApi SetHeader(string name, string value)
{
var newHeaders = new Dictionary<string, string>(Headers) { [name] = value };
Headers = newHeaders;
return this;
}
Key Behaviors to Match
- Creates a copy of headers to avoid mutating shared state
- Returns
thisfor method chaining - PascalCase naming per C# conventions
Acceptance Criteria
-
SetHeader(name, value)method implemented on storage client - Headers are copied (not mutated) when setting
- Method chaining supported
- Unit tests cover happy path and edge cases
- Documentation updated
Context
- supabase-js version: v2.95.3
- Parity tracking: This issue was auto-generated by SDK parity analysis
- Related parity issues: SDK-691 (dart), SDK-692 (py), SDK-693 (swift)
Generated with Claude Code /sync-sdk-parity
- Dominant language
- C#
- Stars
- 701
- Forks
- 106
- Avg merge
- 16h 35m
- Merged PRs (30d)
- 45
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from supabase/supabase-csharp
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
supabase/supabase-csharp#440 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
supabase/supabase-csharp#437 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
supabase/supabase-csharp#427 ·
-
supabase/supabase-csharp#409 · 1 comment · 1 assignee ·
-
area: realtime bug parity
supabase/supabase-csharp#393 · 1 assignee ·
All issues in supabase/supabase-csharp
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
-
:watch: Not Triaged 11.0 fundamentals/subsvc
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
dotnet/AspNetCore.Docs#37699 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
SubtitleEdit/subtitleedit#15108 · 1 comment ·
-
area/docs-content Bug pulumi/docs
Difficulty 1/5 1-3 hours Newbie friendliness 94/100
-
agentic-workflows untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 76/100