package bpjs import ( "bridging-rssa/docs" "bridging-rssa/models/jadwal_dokter" "encoding/json" "fmt" "io" "log" "net/http" ) func BPJSGetResponse(url string, secretKey string, cons_id string, User_keys string, tstamp string, X_signature string, kdPoly string, tanggal string, headers map[string]string) (string, error) { param := "/jadwaldokter/kodepoli/" + kdPoly + "/tanggal/" + tanggal url += param log.Println("URL", url) req, err := http.NewRequest("GET", url, nil) if err != nil { log.Fatalf("Error creating request: %v", err) } for key, value := range headers { req.Header.Set(key, value) } log.Println("REQ", req.Header) client := http.Client{} response, err := client.Do(req) if err != nil { log.Fatalf("Error making external API request: %v", err) } log.Println("RESPONSE: ", response) key := cons_id + secretKey + tstamp res, err := io.ReadAll(response.Body) if err != nil { fmt.Println(err) } var jadwalDokter jadwal_dokter.JadwalDokter err = json.Unmarshal([]byte(res), &jadwalDokter) if err != nil { log.Fatalf("Error Unmarshaling: %v", err) } log.Println("RESPONSE DATA", jadwalDokter.Response) dataResp, err := docs.ResponseVclaim(jadwalDokter.Response, key) if err != nil { log.Fatalf("Error Unmarshaling: %v", err) } log.Println("res: ", dataResp) return string(res), nil }