diff --git a/providers/cloudflare/cloudflareProvider.go b/providers/cloudflare/cloudflareProvider.go index 3e90e4e1d..b5c598ea4 100644 --- a/providers/cloudflare/cloudflareProvider.go +++ b/providers/cloudflare/cloudflareProvider.go @@ -496,11 +496,16 @@ func newCloudflare(m map[string]string, metadata json.RawMessage) (providers.DNS return nil, fmt.Errorf("if cloudflare apitoken is set, apikey and apiuser should not be provided") } + optRP := cloudflare.UsingRetryPolicy(20, 1, 120) + // UsingRetryPolicy is documented here: + // https://pkg.go.dev/github.com/cloudflare/cloudflare-go#UsingRetryPolicy + // The defaults are UsingRetryPolicy(3, 1, 30) + var err error if m["apitoken"] != "" { - api.cfClient, err = cloudflare.NewWithAPIToken(m["apitoken"]) + api.cfClient, err = cloudflare.NewWithAPIToken(m["apitoken"], optRP) } else { - api.cfClient, err = cloudflare.New(m["apikey"], m["apiuser"]) + api.cfClient, err = cloudflare.New(m["apikey"], m["apiuser"], optRP) } if err != nil {