Different behaviour, when I send api request via curl and Python or Golang

I need to send the request to CF API via Golang. When I try it to do, I became the error
{"success":false,"errors":[{"code":9300,"message":"User session has expired. Please log in again"}],"messages":[],"result":null}

Golang code:
```
package main

import (
“bytes”
“encoding/json”
“log”
“net/http”
)

func main() {
msg := map[string]interface{}{
“purge_everything”: true,
}
bytesRepresentation, err := json.Marshal(msg)
if err != nil {
log.Fatalln(err)
}
req, err := http.NewRequest(“POST”, “https://dash.cloudflare.com/api/v4/zones/ZONE_ID/purge_cache/”, bytes.NewBuffer(bytesRepresentation))
if err != nil {
log.Fatalln(err)
}
req.Header.Set(“X-Auth-Email”, “MYEMAIL”)
req.Header.Set(“X-Auth-Key”, “MYAPI”)
req.Header.Set(“Content-Tye”, “application/json”)
client := &http.Client{}
response, err := client.Do(req)
if err != nil {
log.Fatalln(err)
}

var result map[string]interface{}

json.NewDecoder(response.Body).Decode(&result)

log.Println(result)

}

When I use cURL it's fine, but I need Golang.

CURL:
`curl -X POST "https://api.cloudflare.com/client/v4/zones/SAME_ZONE_ID/purge_cache" -H "X-Auth-Email: SAME_EMAIL" -H "X-Auth-Key: SAME_API_KEY" -H "Content-Type: application/json" -d @data.json`

{
  "result": {
    "id": "ZONE_ID"
  },
  "success": true,
  "errors": [],
  "messages": []
}