From c720f7bca192c0a7410c15d608e09029c540de3b Mon Sep 17 00:00:00 2001 From: Marvin Date: Fri, 6 Nov 2020 20:35:40 +0100 Subject: [PATCH] Fix API token permission issue with CloudFlare When querying CloudFlare for all zones via the API using a restricted API token, CloudFlare responds, that that particular token needs the "com.cloudflare.api.account.zone.list" permission, in order to successfully retrieve all zones. Adding the parameter "name" with the value of the given domain works around that limitation, as then the API token only needs access to that particular domain. --- handler/cloudflare/cloudflare_handler.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/handler/cloudflare/cloudflare_handler.go b/handler/cloudflare/cloudflare_handler.go index a57fe6f..d6063fa 100644 --- a/handler/cloudflare/cloudflare_handler.go +++ b/handler/cloudflare/cloudflare_handler.go @@ -163,7 +163,7 @@ func (handler *Handler) getZone(domain string) string { var z ZoneResponse - req, client := handler.newRequest("GET", "/zones", nil) + req, client := handler.newRequest("GET", fmt.Sprintf("/zones?name=%s", domain), nil) resp, err := client.Do(req) if err != nil { log.Println("Request error:", err.Error())