From 460715ec4c0428d98006582ecb40faf5f5ccf73f Mon Sep 17 00:00:00 2001 From: Yauhen Shulitski Date: Thu, 30 Nov 2023 14:03:57 +0100 Subject: [PATCH] Wait in coinstellix if request was rate limited --- providers/dns/constellix/internal/client.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/providers/dns/constellix/internal/client.go b/providers/dns/constellix/internal/client.go index fee0c5a3a0..f57958aa4a 100644 --- a/providers/dns/constellix/internal/client.go +++ b/providers/dns/constellix/internal/client.go @@ -60,7 +60,13 @@ func (c *Client) do(req *http.Request, result any) error { return errutils.NewHTTPDoError(req, err) } - defer func() { _ = resp.Body.Close() }() + defer resp.Body.Close() + + if resp.StatusCode == 429 { + fmt.Println("Rate limit exceeded, waiting 5 seconds...") + time.Sleep(5 * time.Second) + return c.do(req, result) + } err = checkResponse(resp) if err != nil {