/// <summary>
        /// update domain zone asynchronously
        /// </summary>
        /// <param name="fqdn">Domain identifiant</param>
        /// <param name="zoneUuid">Zone identifant</param>
        /// <returns>an code of Gandi call and the xml response</returns>
        public async Task <DomainUpdateResponse> UpdateZoneAsync(string fqdn, string zoneUuid)
        {
            ApiResponse resp = await _client.UpdateZoneAsync(fqdn, zoneUuid);

            DomainUpdateResponse retour = new DomainUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Delete all domain Records asynchronously
        /// </summary>
        /// <param name="fqdn">The fqdn of the domain</param>
        /// <returns>an error code and the json response</returns>
        public async Task <DomainUpdateResponse> DeleteAllRecordsAsync(string fqdn)
        {
            ApiResponse resp = await _client.DeleteAllRecordsAsync(fqdn);

            DomainUpdateResponse retour = new DomainUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Update domain Records with name in parameter asynchronously
        /// </summary>
        /// <param name="fqdn">The fqdn of the domain</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 <DomainUpdateResponse> UpdateNamedRecordsAsync(string fqdn, string name, List <RecordDto> records)
        {
            ApiResponse resp = await _client.UpdateNamedRecordsAsync(fqdn, name, records);

            DomainUpdateResponse retour = new DomainUpdateResponse();

            retour.Load(resp);
            return(retour);
        }
        /// <summary>
        /// Delete One domain Records asynchronously
        /// </summary>
        /// <param name="fqdn">The fqdn of the domain</param>
        /// <param name="name">Name of Records</param>
        /// <param name="type">Type of Records</param>
        /// <returns>an error code and the json response</returns>
        public async Task <DomainUpdateResponse> DeleteOneRecordsAsync(string fqdn, string name, string type)
        {
            ApiResponse resp = await _client.DeleteOneRecordsAsync(fqdn, name, type);

            DomainUpdateResponse retour = new DomainUpdateResponse();

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

            DomainUpdateResponse retour = new DomainUpdateResponse();

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