package cmds import ( "fmt" "net/http" "github.com/go-resty/resty/v2" "github.com/spf13/cobra" ) type genLoginUrlPayload struct { LoginUrl string `json:"loginUrl"` } type loginPayload struct { Token string `json:"token"` } var genTokenCmd = &cobra.Command{ Use: "gen-token", Run: func(cmd *cobra.Command, args []string) { client := resty.New() var payload genLoginUrlPayload resp, err := client.R(). SetBody(`{"userId": "testuser1"}`). SetAuthToken("poop"). SetResult(&payload). Post("http://localhost:8080/auth/gen-login-url") if err != nil || resp.StatusCode() != http.StatusOK { panic(err) } fmt.Printf("url: %s\n", payload.LoginUrl) }, }