func PostRequest(host string, verifyTLS bool, headers map[string]string, uri string, params []queryParam, body []byte) (int, http.Header, []byte, error) {
	url := fmt.Sprintf("%s%s", host, uri)
	req, err := http.NewRequest("POST", url, bytes.NewReader(body))
	if err != nil {
		return 0, nil, nil, err
	}
	for key, value := range headers {
		req.Header.Set(key, value)
	}
	statusCode, respHeaders, body, err := performRequest(req, verifyTLS, params)
	if err != nil {
		return statusCode, respHeaders, body, err
	}
	return statusCode, respHeaders, body, nil
}
PostRequest perform HTTP POST
package http
import (
	"bytes"
	"context"
	"crypto/tls"
	"encoding/json"
	"errors"
	"fmt"
	"io/ioutil"
	"net"
	"net/http"
	"net/url"
	"runtime"
	"strings"
	"time"
	"github.com/DopplerHQ/cli/pkg/utils"
	"github.com/DopplerHQ/cli/pkg/version"
)
type queryParam struct {
	Key   string
	Value string
}
type errorResponse struct {
	Messages []string
	Success  bool
}
var UseCustomDNSResolver = false
var DNSResolverAddress = "1.1.1.1:53"
var DNSResolverProto = "udp"
var DNSResolverTimeout = time.Duration(5) * time.Second
func GetRequest(host string, verifyTLS bool, headers map[string]string, uri string, params []queryParam) (int, http.Header, []byte, error) {
	url := fmt.Sprintf("%s%s", host, uri)
	req, err := http.NewRequest("GET", url, nil)
	if err != nil {
		return 0, nil, nil, err
	}
	for key, value := range headers {
		req.Header.Set(key, value)
	}
	statusCode, respHeaders, body, err := performRequest(req, verifyTLS, params)
	if err != nil {
		return statusCode, respHeaders, body, err
	}
	return statusCode, respHeaders, body, nil
}