/// <summary> /// Creates a new zone record. /// </summary> /// <param name="accountId">The account Id</param> /// <param name="zoneId">The zone name</param> /// <param name="record">The zone record input</param> /// <returns>The newly created <c>ZoneRecord</c> wrapped inside a /// <c>ZoneRecordResponse</c></returns> /// <exception cref="DnSimpleException">If Bad Request</exception> /// <exception cref="DnSimpleValidationException">If the validation fails</exception> /// <see cref="ZoneRecord"/> /// <see>https://developer.dnsimple.com/v2/zones/records/#createZoneRecord</see> public SimpleDnsimpleResponse <ZoneRecordData> CreateRecord(long accountId, string zoneId, ZoneRecord record) { var requestBuilder = Client.Http.RequestBuilder(ZoneRecordsPath(accountId, zoneId)); requestBuilder.Method(Method.POST); requestBuilder.AddJsonPayload(PrepareRecord(record)); return(new SimpleDnsimpleResponse <ZoneRecordData>( Client.Http.Execute(requestBuilder.Request))); }
internal ZoneRecordToSend(ZoneRecord record) { Name = record.Name; Type = record.Type.ToString(); Content = record.Content; Ttl = record.Ttl; Priority = record.Priority; if (record.Regions.Count > 0) { Regions = record.Regions.Select(region => region.ToString()).ToList(); } }
private static ZoneRecordToSend PrepareRecord(ZoneRecord record) { var newRecord = new ZoneRecordToSend(record); return(newRecord); }
/// <summary> /// Updates the zone record details. /// </summary> /// <param name="accountId">The account ID</param> /// <param name="zoneId">The zone name</param> /// <param name="recordId">The record id</param> /// <param name="record">The zone record input</param> /// <returns>The newly updated <c>ZoneRecord</c> wrapped inside a /// <c>ZoneRecordResponse</c></returns> /// <see cref="ZoneRecord"/> /// <see>https://developer.dnsimple.com/v2/zones/records/#updateZoneRecord</see> public SimpleResponse <ZoneRecord> UpdateZoneRecord(long accountId, string zoneId, long recordId, ZoneRecord record) { var builder = BuildRequestForPath(ZoneRecordPath(accountId, zoneId, recordId)); builder.Method(Method.PATCH); builder.AddJsonPayload(record); return(new SimpleResponse <ZoneRecord>(Execute(builder.Request))); }
/// <summary> /// Creates a new zone record. /// </summary> /// <param name="accountId">The account ID</param> /// <param name="zoneId">The zone name</param> /// <param name="input">The zone record input</param> /// <returns>The newly created <c>ZoneRecord</c> wrapped inside a /// <c>ZoneRecordResponse</c></returns> /// <see cref="ZoneRecord"/> /// <see>https://developer.dnsimple.com/v2/zones/records/#createZoneRecord</see> public SimpleResponse <ZoneRecord> CreateZoneRecord(long accountId, string zoneId, ZoneRecord input) { var builder = BuildRequestForPath(ZoneRecordsPath(accountId, zoneId)); builder.Method(Method.POST); builder.AddJsonPayload(PrepareRecord(input)); return(new SimpleResponse <ZoneRecord>(Execute(builder.Request))); }
/// <summary> /// Updates an existing zone record. /// </summary> /// <param name="accountId">The account Id</param> /// <param name="zoneId">The record name</param> /// <param name="recordId">The record id</param> /// <param name="record">The zone record input</param> /// <returns>The newly updated <c>ZoneRecord</c> wrapped inside a /// <c>ZoneRecordResponse</c></returns> /// <exception cref="DnSimpleException">If bad request</exception> /// <exception cref="DnSimpleValidationException">If the validation fails</exception> /// <see cref="ZoneRecordResponse"/> /// <see cref="ZoneRecord"/> /// <see>https://developer.dnsimple.com/v2/zones/records/#updateZoneRecord</see> public ZoneRecordResponse UpdateRecord(long accountId, string zoneId, long recordId, ZoneRecord record) { var requestBuilder = Client.Http.RequestBuilder(ZoneRecordPath(accountId, zoneId, recordId)); requestBuilder.Method(Method.PATCH); requestBuilder.AddJsonPayload(recordId); return(new ZoneRecordResponse( Client.Http.Execute(requestBuilder.Request))); }