package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://reporter.sandbox.lerian.net/v1/data-sources"
payload := strings.NewReader("{\n \"configName\": \"midaz_onboarding\",\n \"databaseName\": \"onboarding\",\n \"host\": \"db.internal\",\n \"password\": \"-\",\n \"port\": 5432,\n \"type\": \"postgresql\",\n \"username\": \"reporter_ro\",\n \"metadata\": {},\n \"options\": \"authSource=admin\",\n \"schemas\": [\n \"public\"\n ],\n \"sslCaBase64\": \"\",\n \"sslMode\": \"require\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}