Skip to content

Commit 466ed67

Browse files
rgarciaclaude
andcommitted
fix: use map[string]string for curl request headers
The API expects single-value headers (map[string]string), not multi-value (map[string][]string). The previous type would serialize as {"Content-Type": ["application/json"]} causing a runtime unmarshal error on the server. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 54ba9dd commit 466ed67

1 file changed

Lines changed: 9 additions & 11 deletions

File tree

cmd/browsers.go

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3301,12 +3301,12 @@ type BrowsersCurlInput struct {
33013301

33023302
// browserCurlRequest is the JSON body for POST /browsers/{id}/curl.
33033303
type browserCurlRequest struct {
3304-
URL string `json:"url"`
3305-
Method string `json:"method,omitempty"`
3306-
Headers map[string][]string `json:"headers,omitempty"`
3307-
Body string `json:"body,omitempty"`
3308-
TimeoutMs int `json:"timeout_ms,omitempty"`
3309-
ResponseEncoding string `json:"response_encoding,omitempty"`
3304+
URL string `json:"url"`
3305+
Method string `json:"method,omitempty"`
3306+
Headers map[string]string `json:"headers,omitempty"`
3307+
Body string `json:"body,omitempty"`
3308+
TimeoutMs int `json:"timeout_ms,omitempty"`
3309+
ResponseEncoding string `json:"response_encoding,omitempty"`
33103310
}
33113311

33123312
// browserCurlResponse is the JSON response from POST /browsers/{id}/curl.
@@ -3317,19 +3317,17 @@ type browserCurlResponse struct {
33173317
DurationMs float64 `json:"duration_ms"`
33183318
}
33193319

3320-
func parseCurlHeaders(raw []string) map[string][]string {
3320+
func parseCurlHeaders(raw []string) map[string]string {
33213321
if len(raw) == 0 {
33223322
return nil
33233323
}
3324-
headers := make(map[string][]string)
3324+
headers := make(map[string]string)
33253325
for _, h := range raw {
33263326
k, v, ok := strings.Cut(h, ":")
33273327
if !ok {
33283328
continue
33293329
}
3330-
key := strings.TrimSpace(k)
3331-
val := strings.TrimSpace(v)
3332-
headers[key] = append(headers[key], val)
3330+
headers[strings.TrimSpace(k)] = strings.TrimSpace(v)
33333331
}
33343332
return headers
33353333
}

0 commit comments

Comments
 (0)