Beispiel #1
0
        // Ref: https://api.cloudflare.com/#dns-records-for-a-zone-update-dns-record
        public DnsUpdateResponse UpdateDns(string zoneIdentifier, string dnsRecordIdentifier, string dnsRecordName, string content)
        {
            var dnsUpdateRequest = new DnsUpdateRequest()
            {
                type = "A", name = dnsRecordName, content = content
            };

            HttpResponseMessage response = null;

            HttpRequestMessage req = GetRequestMessage(HttpMethod.Put, $"zones/{zoneIdentifier}/dns_records/{dnsRecordIdentifier}");

            req.Content = new StringContent(JsonConvert.SerializeObject(dnsUpdateRequest), Encoding.UTF8, "application/json");

            response = Client.SendAsync(req).Result;
            response.EnsureSuccessStatusCode();             // throws if response.IsSuccessStatusCode == false

            var result = response.Content.ReadAsStringAsync().Result;
            var ret    = JsonConvert.DeserializeObject <DnsUpdateResponse>(result);

            return(ret);
        }
Beispiel #2
0
        // Ref: https://api.cloudflare.com/#dns-records-for-a-zone-update-dns-record
        public DnsUpdateResponse UpdateDns(IpSupport protocol, string zoneIdentifier, string dnsRecordIdentifier, string dnsRecordType, string dnsRecordName, string content, int ttl, bool proxied)
        {
            var dnsUpdateRequest = new DnsUpdateRequest()
            {
                type = dnsRecordType, name = dnsRecordName, content = content, ttl = ttl, proxied = proxied
            };

            HttpResponseMessage response;

            HttpRequestMessage req = GetRequestMessage(HttpMethod.Put, $"zones/{zoneIdentifier}/dns_records/{dnsRecordIdentifier}");

            req.Content = new StringContent(JsonSerializer.Serialize(dnsUpdateRequest), Encoding.UTF8, "application/json");

            response = Client.SendAsync(req).Result;
            var result = response.Content.ReadAsStringAsync().Result;

            ValidateCloudflareResult(response, result, $"update {protocol} DNS");

            var ret = JsonSerializer.Deserialize <DnsUpdateResponse>(result);

            return(ret);
        }