/// <summary>
        /// Update zone Detail asynchronously
        /// </summary>
        /// <param name="uuid">The uuid of the zone</param>
        /// <param name="zone">the zone data </param>
        /// <returns>an error code and the json response</returns>
        public async Task <ZoneUpdateResponse> UpdateDetailAsync(string uuid, ZoneDto zone)
        {
            ApiResponse resp = await _client.UpdateDetailAsync(uuid, zone);

            ZoneUpdateResponse retour = new ZoneUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Delete zone Detail asynchronously
        /// </summary>
        /// <param name="uuid">The uuid of the zone</param>
        /// <returns>an error code and the json response</returns>
        public async Task <ZoneUpdateResponse> DeleteAsync(string uuid)
        {
            ApiResponse resp = await _client.DeleteAsync(uuid);

            ZoneUpdateResponse retour = new ZoneUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Create zone Snapshot asynchronously
        /// </summary>
        /// <param name="uuid">The uuid of the zone</param>
        /// <param name="content">Http request body content</param>
        /// <returns>an error code and the json response</returns>
        public async Task <ZoneUpdateResponse> CreateSnapshotAsync(string uuid)
        {
            ApiResponse resp = await _client.CreateSnapshotAsync(uuid);

            ZoneUpdateResponse retour = new ZoneUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Delete Named zone Records asynchronously
        /// </summary>
        /// <param name="uuid">The uuid of the zone</param>
        /// <param name="name">Name of Records</param>
        /// <returns>an error code and the json response</returns>
        public async Task <ZoneUpdateResponse> DeleteNamedRecordsAsync(string uuid, string name)
        {
            ApiResponse resp = await _client.DeleteNamedRecordsAsync(uuid, name);

            ZoneUpdateResponse retour = new ZoneUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Update one zone Records in parameter asynchronously
        /// </summary>
        /// <param name="uuid">The uuid of the zone</param>
        /// <param name="name">Name of Records</param>
        /// <param name="type">Type of Records</param>
        /// <param name="record">records data</param>
        /// <returns>an error code and the json response</returns>
        public async Task <ZoneUpdateResponse> UpdateOneRecordsAsync(string uuid, string name, string type, RecordDto record)
        {
            ApiResponse resp = await _client.UpdateOneRecordsAsync(uuid, name, type, record);

            ZoneUpdateResponse retour = new ZoneUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Update zone Records with name in parameter asynchronously
        /// </summary>
        /// <param name="uuid">The uuid of the zone</param>
        /// <param name="name">Name of Records</param>
        /// <param name="records">All records data </param>
        /// <returns>an error code and the json response</returns>
        public async Task <ZoneUpdateResponse> UpdateNamedRecordsAsync(string uuid, string name, List <RecordDto> records)
        {
            ApiResponse resp = await _client.UpdateNamedRecordsAsync(uuid, name, records);

            ZoneUpdateResponse retour = new ZoneUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Create zone Records asynchronously
        /// </summary>
        /// <param name="uuid">The uuid of the zone</param>
        /// <param name="record">the record data </param>
        /// <returns>an error code and the json response</returns>
        public async Task <ZoneUpdateResponse> CreateRecordsAsync(string uuid, RecordDto record)
        {
            ApiResponse resp = await _client.CreateRecordsAsync(uuid, record);

            ZoneUpdateResponse retour = new ZoneUpdateResponse();

            retour.Load(resp);
            return(retour);
        }