diff --git a/README.md b/README.md
index c6bf9d012b..075fb854a5 100644
--- a/README.md
+++ b/README.md
@@ -26,13 +26,13 @@ const cloudflare = new Cloudflare({
});
async function main() {
- const zoneCreateResponse = await cloudflare.zones.create({
+ const zone = await cloudflare.zones.create({
account: { id: '023e105f4ecef8ad9ca31a8372d0c353' },
name: 'example.com',
type: 'full',
});
- console.log(zoneCreateResponse.id);
+ console.log(zone.id);
}
main();
@@ -57,7 +57,7 @@ async function main() {
name: 'example.com',
type: 'full',
};
- const zoneCreateResponse: Cloudflare.ZoneCreateResponse = await cloudflare.zones.create(params);
+ const zone: Cloudflare.Zone = await cloudflare.zones.create(params);
}
main();
@@ -194,11 +194,11 @@ const response = await cloudflare.zones
console.log(response.headers.get('X-My-Header'));
console.log(response.statusText); // access the underlying Response object
-const { data: zoneCreateResponse, response: raw } = await cloudflare.zones
+const { data: zone, response: raw } = await cloudflare.zones
.create({ account: { id: '023e105f4ecef8ad9ca31a8372d0c353' }, name: 'example.com', type: 'full' })
.withResponse();
console.log(raw.headers.get('X-My-Header'));
-console.log(zoneCreateResponse.id);
+console.log(zone.id);
```
## Customizing the fetch client
@@ -264,7 +264,7 @@ await cloudflare.zones.delete(
);
```
-## Semantic Versioning
+## Semantic versioning
This package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions, though certain backwards-incompatible changes may be released as minor versions:
diff --git a/api.md b/api.md
index 5b097f75a1..76f5d683e6 100644
--- a/api.md
+++ b/api.md
@@ -310,19 +310,15 @@ Methods:
Types:
- Zone
-- ZoneCreateResponse
-- ZoneListResponse
- ZoneDeleteResponse
-- ZoneEditResponse
-- ZoneGetResponse
Methods:
-- client.zones.create({ ...params }) -> ZoneCreateResponse
-- client.zones.list({ ...params }) -> ZoneListResponsesV4PagePaginationArray
+- client.zones.create({ ...params }) -> Zone
+- client.zones.list({ ...params }) -> ZonesV4PagePaginationArray
- client.zones.delete({ ...params }) -> ZoneDeleteResponse | null
-- client.zones.edit({ ...params }) -> ZoneEditResponse
-- client.zones.get({ ...params }) -> ZoneGetResponse
+- client.zones.edit({ ...params }) -> Zone
+- client.zones.get({ ...params }) -> Zone
## ActivationCheck
@@ -1424,25 +1420,20 @@ Methods:
Types:
- DNSRecord
-- RecordCreateResponse
-- RecordUpdateResponse
-- RecordListResponse
- RecordDeleteResponse
-- RecordEditResponse
- RecordExportResponse
-- RecordGetResponse
- RecordImportResponse
- RecordScanResponse
Methods:
-- client.dns.records.create({ ...params }) -> RecordCreateResponse
-- client.dns.records.update(dnsRecordId, { ...params }) -> RecordUpdateResponse
-- client.dns.records.list({ ...params }) -> RecordListResponsesV4PagePaginationArray
+- client.dns.records.create({ ...params }) -> DNSRecord
+- client.dns.records.update(dnsRecordId, { ...params }) -> DNSRecord
+- client.dns.records.list({ ...params }) -> DNSRecordsV4PagePaginationArray
- client.dns.records.delete(dnsRecordId, { ...params }) -> RecordDeleteResponse
-- client.dns.records.edit(dnsRecordId, { ...params }) -> RecordEditResponse
+- client.dns.records.edit(dnsRecordId, { ...params }) -> DNSRecord
- client.dns.records.export({ ...params }) -> string
-- client.dns.records.get(dnsRecordId, { ...params }) -> RecordGetResponse
+- client.dns.records.get(dnsRecordId, { ...params }) -> DNSRecord
- client.dns.records.import({ ...params }) -> RecordImportResponse
- client.dns.records.scan({ ...params }) -> RecordScanResponse
diff --git a/src/index.ts b/src/index.ts
index 1bd9db7a11..ed3a20995d 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -429,12 +429,8 @@ export namespace Cloudflare {
export import Zones = API.Zones;
export import Zone = API.Zone;
- export import ZoneCreateResponse = API.ZoneCreateResponse;
- export import ZoneListResponse = API.ZoneListResponse;
export import ZoneDeleteResponse = API.ZoneDeleteResponse;
- export import ZoneEditResponse = API.ZoneEditResponse;
- export import ZoneGetResponse = API.ZoneGetResponse;
- export import ZoneListResponsesV4PagePaginationArray = API.ZoneListResponsesV4PagePaginationArray;
+ export import ZonesV4PagePaginationArray = API.ZonesV4PagePaginationArray;
export import ZoneCreateParams = API.ZoneCreateParams;
export import ZoneListParams = API.ZoneListParams;
export import ZoneDeleteParams = API.ZoneDeleteParams;
diff --git a/src/resources/dns/dns.ts b/src/resources/dns/dns.ts
index 425c019123..2604a86c45 100644
--- a/src/resources/dns/dns.ts
+++ b/src/resources/dns/dns.ts
@@ -14,16 +14,11 @@ export class DNS extends APIResource {
export namespace DNS {
export import Records = RecordsAPI.Records;
export import DNSRecord = RecordsAPI.DNSRecord;
- export import RecordCreateResponse = RecordsAPI.RecordCreateResponse;
- export import RecordUpdateResponse = RecordsAPI.RecordUpdateResponse;
- export import RecordListResponse = RecordsAPI.RecordListResponse;
export import RecordDeleteResponse = RecordsAPI.RecordDeleteResponse;
- export import RecordEditResponse = RecordsAPI.RecordEditResponse;
export import RecordExportResponse = RecordsAPI.RecordExportResponse;
- export import RecordGetResponse = RecordsAPI.RecordGetResponse;
export import RecordImportResponse = RecordsAPI.RecordImportResponse;
export import RecordScanResponse = RecordsAPI.RecordScanResponse;
- export import RecordListResponsesV4PagePaginationArray = RecordsAPI.RecordListResponsesV4PagePaginationArray;
+ export import DNSRecordsV4PagePaginationArray = RecordsAPI.DNSRecordsV4PagePaginationArray;
export import RecordCreateParams = RecordsAPI.RecordCreateParams;
export import RecordUpdateParams = RecordsAPI.RecordUpdateParams;
export import RecordListParams = RecordsAPI.RecordListParams;
diff --git a/src/resources/dns/index.ts b/src/resources/dns/index.ts
index c7a7dbaf9d..691e704cc3 100644
--- a/src/resources/dns/index.ts
+++ b/src/resources/dns/index.ts
@@ -15,13 +15,8 @@ export {
} from './firewall/index';
export {
DNSRecord,
- RecordCreateResponse,
- RecordUpdateResponse,
- RecordListResponse,
RecordDeleteResponse,
- RecordEditResponse,
RecordExportResponse,
- RecordGetResponse,
RecordImportResponse,
RecordScanResponse,
RecordCreateParams,
@@ -33,6 +28,6 @@ export {
RecordGetParams,
RecordImportParams,
RecordScanParams,
- RecordListResponsesV4PagePaginationArray,
+ DNSRecordsV4PagePaginationArray,
Records,
} from './records';
diff --git a/src/resources/dns/records.ts b/src/resources/dns/records.ts
index 943dba9de8..988cdf18e3 100644
--- a/src/resources/dns/records.ts
+++ b/src/resources/dns/records.ts
@@ -17,11 +17,11 @@ export class Records extends APIResource {
* - Domain names are always represented in Punycode, even if Unicode characters
* were used when creating the record.
*/
- create(params: RecordCreateParams, options?: Core.RequestOptions): Core.APIPromise {
+ create(params: RecordCreateParams, options?: Core.RequestOptions): Core.APIPromise {
const { zone_id, ...body } = params;
return (
this._client.post(`/zones/${zone_id}/dns_records`, { body, ...options }) as Core.APIPromise<{
- result: RecordCreateResponse;
+ result: DNSRecord;
}>
)._thenUnwrap((obj) => obj.result);
}
@@ -38,13 +38,13 @@ export class Records extends APIResource {
dnsRecordId: string,
params: RecordUpdateParams,
options?: Core.RequestOptions,
- ): Core.APIPromise {
+ ): Core.APIPromise {
const { zone_id, ...body } = params;
return (
this._client.put(`/zones/${zone_id}/dns_records/${dnsRecordId}`, {
body,
...options,
- }) as Core.APIPromise<{ result: RecordUpdateResponse }>
+ }) as Core.APIPromise<{ result: DNSRecord }>
)._thenUnwrap((obj) => obj.result);
}
@@ -54,13 +54,12 @@ export class Records extends APIResource {
list(
params: RecordListParams,
options?: Core.RequestOptions,
- ): Core.PagePromise {
+ ): Core.PagePromise {
const { zone_id, ...query } = params;
- return this._client.getAPIList(
- `/zones/${zone_id}/dns_records`,
- RecordListResponsesV4PagePaginationArray,
- { query, ...options },
- );
+ return this._client.getAPIList(`/zones/${zone_id}/dns_records`, DNSRecordsV4PagePaginationArray, {
+ query,
+ ...options,
+ });
}
/**
@@ -91,13 +90,13 @@ export class Records extends APIResource {
dnsRecordId: string,
params: RecordEditParams,
options?: Core.RequestOptions,
- ): Core.APIPromise {
+ ): Core.APIPromise {
const { zone_id, ...body } = params;
return (
this._client.patch(`/zones/${zone_id}/dns_records/${dnsRecordId}`, {
body,
...options,
- }) as Core.APIPromise<{ result: RecordEditResponse }>
+ }) as Core.APIPromise<{ result: DNSRecord }>
)._thenUnwrap((obj) => obj.result);
}
@@ -125,11 +124,11 @@ export class Records extends APIResource {
dnsRecordId: string,
params: RecordGetParams,
options?: Core.RequestOptions,
- ): Core.APIPromise {
+ ): Core.APIPromise {
const { zone_id } = params;
return (
this._client.get(`/zones/${zone_id}/dns_records/${dnsRecordId}`, options) as Core.APIPromise<{
- result: RecordGetResponse;
+ result: DNSRecord;
}>
)._thenUnwrap((obj) => obj.result);
}
@@ -168,7 +167,7 @@ export class Records extends APIResource {
}
}
-export class RecordListResponsesV4PagePaginationArray extends V4PagePaginationArray {}
+export class DNSRecordsV4PagePaginationArray extends V4PagePaginationArray {}
export type DNSRecord =
| DNSRecord.A
@@ -2539,11862 +2538,17 @@ export namespace DNSRecord {
}
}
-export type RecordCreateResponse =
- | RecordCreateResponse.A
- | RecordCreateResponse.AAAA
- | RecordCreateResponse.CAA
- | RecordCreateResponse.Cert
- | RecordCreateResponse.CNAME
- | RecordCreateResponse.DNSKEY
- | RecordCreateResponse.DS
- | RecordCreateResponse.HTTPS
- | RecordCreateResponse.LOC
- | RecordCreateResponse.MX
- | RecordCreateResponse.NAPTR
- | RecordCreateResponse.NS
- | RecordCreateResponse.PTR
- | RecordCreateResponse.Smimea
- | RecordCreateResponse.SRV
- | RecordCreateResponse.SSHFP
- | RecordCreateResponse.SVCB
- | RecordCreateResponse.TLSA
- | RecordCreateResponse.TXT
- | RecordCreateResponse.URI;
-
-export namespace RecordCreateResponse {
- export interface A {
- /**
- * A valid IPv4 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'A';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: A.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace A {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface AAAA {
- /**
- * A valid IPv6 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'AAAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: AAAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace AAAA {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CAA {
- /**
- * Components of a CAA record.
- */
- data: CAA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CAA content. See 'data' to set CAA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CAA.Meta;
+export interface RecordDeleteResponse {
+ /**
+ * Identifier
+ */
+ id?: string;
+}
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CAA {
- /**
- * Components of a CAA record.
- */
- export interface Data {
- /**
- * Flags for the CAA record.
- */
- flags?: number;
-
- /**
- * Name of the property controlled by this record (e.g.: issue, issuewild, iodef).
- */
- tag?: string;
-
- /**
- * Value of the record. This field's semantics depend on the chosen tag.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Cert {
- /**
- * Components of a CERT record.
- */
- data: Cert.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CERT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CERT content. See 'data' to set CERT properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Cert.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Cert {
- /**
- * Components of a CERT record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
-
- /**
- * Type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CNAME {
- /**
- * A valid hostname. Must not match the record's name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CNAME';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CNAME.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CNAME {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- data: DNSKEY.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DNSKEY';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DNSKEY content. See 'data' to set DNSKEY properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DNSKEY.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Flags.
- */
- flags?: number;
-
- /**
- * Protocol.
- */
- protocol?: number;
-
- /**
- * Public Key.
- */
- public_key?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DS {
- /**
- * Components of a DS record.
- */
- data: DS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DS content. See 'data' to set DS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DS {
- /**
- * Components of a DS record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Digest.
- */
- digest?: string;
-
- /**
- * Digest Type.
- */
- digest_type?: number;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface HTTPS {
- /**
- * Components of a HTTPS record.
- */
- data: HTTPS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'HTTPS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted HTTPS content. See 'data' to set HTTPS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: HTTPS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace HTTPS {
- /**
- * Components of a HTTPS record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface LOC {
- /**
- * Components of a LOC record.
- */
- data: LOC.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'LOC';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted LOC content. See 'data' to set LOC properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: LOC.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace LOC {
- /**
- * Components of a LOC record.
- */
- export interface Data {
- /**
- * Altitude of location in meters.
- */
- altitude?: number;
-
- /**
- * Degrees of latitude.
- */
- lat_degrees?: number;
-
- /**
- * Latitude direction.
- */
- lat_direction?: 'N' | 'S';
-
- /**
- * Minutes of latitude.
- */
- lat_minutes?: number;
-
- /**
- * Seconds of latitude.
- */
- lat_seconds?: number;
-
- /**
- * Degrees of longitude.
- */
- long_degrees?: number;
-
- /**
- * Longitude direction.
- */
- long_direction?: 'E' | 'W';
-
- /**
- * Minutes of longitude.
- */
- long_minutes?: number;
-
- /**
- * Seconds of longitude.
- */
- long_seconds?: number;
-
- /**
- * Horizontal precision of location.
- */
- precision_horz?: number;
-
- /**
- * Vertical precision of location.
- */
- precision_vert?: number;
-
- /**
- * Size of location in meters.
- */
- size?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface MX {
- /**
- * A valid mail server hostname.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'MX';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: MX.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace MX {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NAPTR {
- /**
- * Components of a NAPTR record.
- */
- data: NAPTR.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NAPTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted NAPTR content. See 'data' to set NAPTR properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NAPTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NAPTR {
- /**
- * Components of a NAPTR record.
- */
- export interface Data {
- /**
- * Flags.
- */
- flags?: string;
-
- /**
- * Order.
- */
- order?: number;
-
- /**
- * Preference.
- */
- preference?: number;
-
- /**
- * Regex.
- */
- regex?: string;
-
- /**
- * Replacement.
- */
- replacement?: string;
-
- /**
- * Service.
- */
- service?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NS {
- /**
- * A valid name server host name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NS {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface PTR {
- /**
- * Domain name pointing to the address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'PTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: PTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace PTR {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Smimea {
- /**
- * Components of a SMIMEA record.
- */
- data: Smimea.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SMIMEA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SMIMEA content. See 'data' to set SMIMEA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Smimea.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Smimea {
- /**
- * Components of a SMIMEA record.
- */
- export interface Data {
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SRV {
- /**
- * Components of a SRV record.
- */
- data: SRV.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode. For SRV records, the first
- * label is normally a service and the second a protocol name, each starting with
- * an underscore.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SRV';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Priority, weight, port, and SRV target. See 'data' for setting the individual
- * component values.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SRV.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SRV {
- /**
- * Components of a SRV record.
- */
- export interface Data {
- /**
- * @deprecated: A valid hostname. Deprecated in favor of the regular 'name' outside
- * the data map. This data map field represents the remainder of the full 'name'
- * after the service and protocol.
- */
- name?: string;
-
- /**
- * The port of the service.
- */
- port?: number;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority?: number;
-
- /**
- * @deprecated: A valid protocol, prefixed with an underscore. Deprecated in favor
- * of the regular 'name' outside the data map. This data map field normally
- * represents the second label of that 'name'.
- */
- proto?: string;
-
- /**
- * @deprecated: A service type, prefixed with an underscore. Deprecated in favor of
- * the regular 'name' outside the data map. This data map field normally represents
- * the first label of that 'name'.
- */
- service?: string;
-
- /**
- * A valid hostname.
- */
- target?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SSHFP {
- /**
- * Components of a SSHFP record.
- */
- data: SSHFP.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SSHFP';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SSHFP content. See 'data' to set SSHFP properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SSHFP.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SSHFP {
- /**
- * Components of a SSHFP record.
- */
- export interface Data {
- /**
- * algorithm.
- */
- algorithm?: number;
-
- /**
- * fingerprint.
- */
- fingerprint?: string;
-
- /**
- * type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SVCB {
- /**
- * Components of a SVCB record.
- */
- data: SVCB.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SVCB';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SVCB content. See 'data' to set SVCB properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SVCB.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SVCB {
- /**
- * Components of a SVCB record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TLSA {
- /**
- * Components of a TLSA record.
- */
- data: TLSA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TLSA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted TLSA content. See 'data' to set TLSA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TLSA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TLSA {
- /**
- * Components of a TLSA record.
- */
- export interface Data {
- /**
- * certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TXT {
- /**
- * Text content for the record.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TXT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TXT.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TXT {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface URI {
- /**
- * Components of a URI record.
- */
- data: URI.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'URI';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted URI content. See 'data' to set URI properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: URI.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace URI {
- /**
- * Components of a URI record.
- */
- export interface Data {
- /**
- * The record content.
- */
- content?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-}
-
-export type RecordUpdateResponse =
- | RecordUpdateResponse.A
- | RecordUpdateResponse.AAAA
- | RecordUpdateResponse.CAA
- | RecordUpdateResponse.Cert
- | RecordUpdateResponse.CNAME
- | RecordUpdateResponse.DNSKEY
- | RecordUpdateResponse.DS
- | RecordUpdateResponse.HTTPS
- | RecordUpdateResponse.LOC
- | RecordUpdateResponse.MX
- | RecordUpdateResponse.NAPTR
- | RecordUpdateResponse.NS
- | RecordUpdateResponse.PTR
- | RecordUpdateResponse.Smimea
- | RecordUpdateResponse.SRV
- | RecordUpdateResponse.SSHFP
- | RecordUpdateResponse.SVCB
- | RecordUpdateResponse.TLSA
- | RecordUpdateResponse.TXT
- | RecordUpdateResponse.URI;
-
-export namespace RecordUpdateResponse {
- export interface A {
- /**
- * A valid IPv4 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'A';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: A.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace A {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface AAAA {
- /**
- * A valid IPv6 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'AAAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: AAAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace AAAA {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CAA {
- /**
- * Components of a CAA record.
- */
- data: CAA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CAA content. See 'data' to set CAA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CAA {
- /**
- * Components of a CAA record.
- */
- export interface Data {
- /**
- * Flags for the CAA record.
- */
- flags?: number;
-
- /**
- * Name of the property controlled by this record (e.g.: issue, issuewild, iodef).
- */
- tag?: string;
-
- /**
- * Value of the record. This field's semantics depend on the chosen tag.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Cert {
- /**
- * Components of a CERT record.
- */
- data: Cert.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CERT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CERT content. See 'data' to set CERT properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Cert.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Cert {
- /**
- * Components of a CERT record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
-
- /**
- * Type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CNAME {
- /**
- * A valid hostname. Must not match the record's name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CNAME';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CNAME.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CNAME {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- data: DNSKEY.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DNSKEY';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DNSKEY content. See 'data' to set DNSKEY properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DNSKEY.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Flags.
- */
- flags?: number;
-
- /**
- * Protocol.
- */
- protocol?: number;
-
- /**
- * Public Key.
- */
- public_key?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DS {
- /**
- * Components of a DS record.
- */
- data: DS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DS content. See 'data' to set DS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DS {
- /**
- * Components of a DS record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Digest.
- */
- digest?: string;
-
- /**
- * Digest Type.
- */
- digest_type?: number;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface HTTPS {
- /**
- * Components of a HTTPS record.
- */
- data: HTTPS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'HTTPS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted HTTPS content. See 'data' to set HTTPS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: HTTPS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace HTTPS {
- /**
- * Components of a HTTPS record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface LOC {
- /**
- * Components of a LOC record.
- */
- data: LOC.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'LOC';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted LOC content. See 'data' to set LOC properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: LOC.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace LOC {
- /**
- * Components of a LOC record.
- */
- export interface Data {
- /**
- * Altitude of location in meters.
- */
- altitude?: number;
-
- /**
- * Degrees of latitude.
- */
- lat_degrees?: number;
-
- /**
- * Latitude direction.
- */
- lat_direction?: 'N' | 'S';
-
- /**
- * Minutes of latitude.
- */
- lat_minutes?: number;
-
- /**
- * Seconds of latitude.
- */
- lat_seconds?: number;
-
- /**
- * Degrees of longitude.
- */
- long_degrees?: number;
-
- /**
- * Longitude direction.
- */
- long_direction?: 'E' | 'W';
-
- /**
- * Minutes of longitude.
- */
- long_minutes?: number;
-
- /**
- * Seconds of longitude.
- */
- long_seconds?: number;
-
- /**
- * Horizontal precision of location.
- */
- precision_horz?: number;
-
- /**
- * Vertical precision of location.
- */
- precision_vert?: number;
-
- /**
- * Size of location in meters.
- */
- size?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface MX {
- /**
- * A valid mail server hostname.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'MX';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: MX.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace MX {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NAPTR {
- /**
- * Components of a NAPTR record.
- */
- data: NAPTR.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NAPTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted NAPTR content. See 'data' to set NAPTR properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NAPTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NAPTR {
- /**
- * Components of a NAPTR record.
- */
- export interface Data {
- /**
- * Flags.
- */
- flags?: string;
-
- /**
- * Order.
- */
- order?: number;
-
- /**
- * Preference.
- */
- preference?: number;
-
- /**
- * Regex.
- */
- regex?: string;
-
- /**
- * Replacement.
- */
- replacement?: string;
-
- /**
- * Service.
- */
- service?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NS {
- /**
- * A valid name server host name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NS {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface PTR {
- /**
- * Domain name pointing to the address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'PTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: PTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace PTR {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Smimea {
- /**
- * Components of a SMIMEA record.
- */
- data: Smimea.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SMIMEA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SMIMEA content. See 'data' to set SMIMEA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Smimea.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Smimea {
- /**
- * Components of a SMIMEA record.
- */
- export interface Data {
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SRV {
- /**
- * Components of a SRV record.
- */
- data: SRV.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode. For SRV records, the first
- * label is normally a service and the second a protocol name, each starting with
- * an underscore.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SRV';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Priority, weight, port, and SRV target. See 'data' for setting the individual
- * component values.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SRV.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SRV {
- /**
- * Components of a SRV record.
- */
- export interface Data {
- /**
- * @deprecated: A valid hostname. Deprecated in favor of the regular 'name' outside
- * the data map. This data map field represents the remainder of the full 'name'
- * after the service and protocol.
- */
- name?: string;
-
- /**
- * The port of the service.
- */
- port?: number;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority?: number;
-
- /**
- * @deprecated: A valid protocol, prefixed with an underscore. Deprecated in favor
- * of the regular 'name' outside the data map. This data map field normally
- * represents the second label of that 'name'.
- */
- proto?: string;
-
- /**
- * @deprecated: A service type, prefixed with an underscore. Deprecated in favor of
- * the regular 'name' outside the data map. This data map field normally represents
- * the first label of that 'name'.
- */
- service?: string;
-
- /**
- * A valid hostname.
- */
- target?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SSHFP {
- /**
- * Components of a SSHFP record.
- */
- data: SSHFP.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SSHFP';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SSHFP content. See 'data' to set SSHFP properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SSHFP.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SSHFP {
- /**
- * Components of a SSHFP record.
- */
- export interface Data {
- /**
- * algorithm.
- */
- algorithm?: number;
-
- /**
- * fingerprint.
- */
- fingerprint?: string;
-
- /**
- * type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SVCB {
- /**
- * Components of a SVCB record.
- */
- data: SVCB.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SVCB';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SVCB content. See 'data' to set SVCB properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SVCB.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SVCB {
- /**
- * Components of a SVCB record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TLSA {
- /**
- * Components of a TLSA record.
- */
- data: TLSA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TLSA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted TLSA content. See 'data' to set TLSA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TLSA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TLSA {
- /**
- * Components of a TLSA record.
- */
- export interface Data {
- /**
- * certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TXT {
- /**
- * Text content for the record.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TXT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TXT.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TXT {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface URI {
- /**
- * Components of a URI record.
- */
- data: URI.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'URI';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted URI content. See 'data' to set URI properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: URI.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace URI {
- /**
- * Components of a URI record.
- */
- export interface Data {
- /**
- * The record content.
- */
- content?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-}
-
-export type RecordListResponse =
- | RecordListResponse.A
- | RecordListResponse.AAAA
- | RecordListResponse.CAA
- | RecordListResponse.Cert
- | RecordListResponse.CNAME
- | RecordListResponse.DNSKEY
- | RecordListResponse.DS
- | RecordListResponse.HTTPS
- | RecordListResponse.LOC
- | RecordListResponse.MX
- | RecordListResponse.NAPTR
- | RecordListResponse.NS
- | RecordListResponse.PTR
- | RecordListResponse.Smimea
- | RecordListResponse.SRV
- | RecordListResponse.SSHFP
- | RecordListResponse.SVCB
- | RecordListResponse.TLSA
- | RecordListResponse.TXT
- | RecordListResponse.URI;
-
-export namespace RecordListResponse {
- export interface A {
- /**
- * A valid IPv4 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'A';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: A.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace A {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface AAAA {
- /**
- * A valid IPv6 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'AAAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: AAAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace AAAA {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CAA {
- /**
- * Components of a CAA record.
- */
- data: CAA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CAA content. See 'data' to set CAA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CAA {
- /**
- * Components of a CAA record.
- */
- export interface Data {
- /**
- * Flags for the CAA record.
- */
- flags?: number;
-
- /**
- * Name of the property controlled by this record (e.g.: issue, issuewild, iodef).
- */
- tag?: string;
-
- /**
- * Value of the record. This field's semantics depend on the chosen tag.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Cert {
- /**
- * Components of a CERT record.
- */
- data: Cert.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CERT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CERT content. See 'data' to set CERT properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Cert.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Cert {
- /**
- * Components of a CERT record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
-
- /**
- * Type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CNAME {
- /**
- * A valid hostname. Must not match the record's name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CNAME';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CNAME.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CNAME {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- data: DNSKEY.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DNSKEY';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DNSKEY content. See 'data' to set DNSKEY properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DNSKEY.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Flags.
- */
- flags?: number;
-
- /**
- * Protocol.
- */
- protocol?: number;
-
- /**
- * Public Key.
- */
- public_key?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DS {
- /**
- * Components of a DS record.
- */
- data: DS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DS content. See 'data' to set DS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DS {
- /**
- * Components of a DS record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Digest.
- */
- digest?: string;
-
- /**
- * Digest Type.
- */
- digest_type?: number;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface HTTPS {
- /**
- * Components of a HTTPS record.
- */
- data: HTTPS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'HTTPS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted HTTPS content. See 'data' to set HTTPS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: HTTPS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace HTTPS {
- /**
- * Components of a HTTPS record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface LOC {
- /**
- * Components of a LOC record.
- */
- data: LOC.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'LOC';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted LOC content. See 'data' to set LOC properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: LOC.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace LOC {
- /**
- * Components of a LOC record.
- */
- export interface Data {
- /**
- * Altitude of location in meters.
- */
- altitude?: number;
-
- /**
- * Degrees of latitude.
- */
- lat_degrees?: number;
-
- /**
- * Latitude direction.
- */
- lat_direction?: 'N' | 'S';
-
- /**
- * Minutes of latitude.
- */
- lat_minutes?: number;
-
- /**
- * Seconds of latitude.
- */
- lat_seconds?: number;
-
- /**
- * Degrees of longitude.
- */
- long_degrees?: number;
-
- /**
- * Longitude direction.
- */
- long_direction?: 'E' | 'W';
-
- /**
- * Minutes of longitude.
- */
- long_minutes?: number;
-
- /**
- * Seconds of longitude.
- */
- long_seconds?: number;
-
- /**
- * Horizontal precision of location.
- */
- precision_horz?: number;
-
- /**
- * Vertical precision of location.
- */
- precision_vert?: number;
-
- /**
- * Size of location in meters.
- */
- size?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface MX {
- /**
- * A valid mail server hostname.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'MX';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: MX.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace MX {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NAPTR {
- /**
- * Components of a NAPTR record.
- */
- data: NAPTR.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NAPTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted NAPTR content. See 'data' to set NAPTR properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NAPTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NAPTR {
- /**
- * Components of a NAPTR record.
- */
- export interface Data {
- /**
- * Flags.
- */
- flags?: string;
-
- /**
- * Order.
- */
- order?: number;
-
- /**
- * Preference.
- */
- preference?: number;
-
- /**
- * Regex.
- */
- regex?: string;
-
- /**
- * Replacement.
- */
- replacement?: string;
-
- /**
- * Service.
- */
- service?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NS {
- /**
- * A valid name server host name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NS {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface PTR {
- /**
- * Domain name pointing to the address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'PTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: PTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace PTR {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Smimea {
- /**
- * Components of a SMIMEA record.
- */
- data: Smimea.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SMIMEA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SMIMEA content. See 'data' to set SMIMEA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Smimea.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Smimea {
- /**
- * Components of a SMIMEA record.
- */
- export interface Data {
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SRV {
- /**
- * Components of a SRV record.
- */
- data: SRV.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode. For SRV records, the first
- * label is normally a service and the second a protocol name, each starting with
- * an underscore.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SRV';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Priority, weight, port, and SRV target. See 'data' for setting the individual
- * component values.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SRV.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SRV {
- /**
- * Components of a SRV record.
- */
- export interface Data {
- /**
- * @deprecated: A valid hostname. Deprecated in favor of the regular 'name' outside
- * the data map. This data map field represents the remainder of the full 'name'
- * after the service and protocol.
- */
- name?: string;
-
- /**
- * The port of the service.
- */
- port?: number;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority?: number;
-
- /**
- * @deprecated: A valid protocol, prefixed with an underscore. Deprecated in favor
- * of the regular 'name' outside the data map. This data map field normally
- * represents the second label of that 'name'.
- */
- proto?: string;
-
- /**
- * @deprecated: A service type, prefixed with an underscore. Deprecated in favor of
- * the regular 'name' outside the data map. This data map field normally represents
- * the first label of that 'name'.
- */
- service?: string;
-
- /**
- * A valid hostname.
- */
- target?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SSHFP {
- /**
- * Components of a SSHFP record.
- */
- data: SSHFP.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SSHFP';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SSHFP content. See 'data' to set SSHFP properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SSHFP.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SSHFP {
- /**
- * Components of a SSHFP record.
- */
- export interface Data {
- /**
- * algorithm.
- */
- algorithm?: number;
-
- /**
- * fingerprint.
- */
- fingerprint?: string;
-
- /**
- * type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SVCB {
- /**
- * Components of a SVCB record.
- */
- data: SVCB.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SVCB';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SVCB content. See 'data' to set SVCB properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SVCB.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SVCB {
- /**
- * Components of a SVCB record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TLSA {
- /**
- * Components of a TLSA record.
- */
- data: TLSA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TLSA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted TLSA content. See 'data' to set TLSA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TLSA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TLSA {
- /**
- * Components of a TLSA record.
- */
- export interface Data {
- /**
- * certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TXT {
- /**
- * Text content for the record.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TXT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TXT.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TXT {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface URI {
- /**
- * Components of a URI record.
- */
- data: URI.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'URI';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted URI content. See 'data' to set URI properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: URI.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace URI {
- /**
- * Components of a URI record.
- */
- export interface Data {
- /**
- * The record content.
- */
- content?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-}
-
-export interface RecordDeleteResponse {
- /**
- * Identifier
- */
- id?: string;
-}
-
-export type RecordEditResponse =
- | RecordEditResponse.A
- | RecordEditResponse.AAAA
- | RecordEditResponse.CAA
- | RecordEditResponse.Cert
- | RecordEditResponse.CNAME
- | RecordEditResponse.DNSKEY
- | RecordEditResponse.DS
- | RecordEditResponse.HTTPS
- | RecordEditResponse.LOC
- | RecordEditResponse.MX
- | RecordEditResponse.NAPTR
- | RecordEditResponse.NS
- | RecordEditResponse.PTR
- | RecordEditResponse.Smimea
- | RecordEditResponse.SRV
- | RecordEditResponse.SSHFP
- | RecordEditResponse.SVCB
- | RecordEditResponse.TLSA
- | RecordEditResponse.TXT
- | RecordEditResponse.URI;
-
-export namespace RecordEditResponse {
- export interface A {
- /**
- * A valid IPv4 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'A';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: A.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace A {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface AAAA {
- /**
- * A valid IPv6 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'AAAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: AAAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace AAAA {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CAA {
- /**
- * Components of a CAA record.
- */
- data: CAA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CAA content. See 'data' to set CAA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CAA {
- /**
- * Components of a CAA record.
- */
- export interface Data {
- /**
- * Flags for the CAA record.
- */
- flags?: number;
-
- /**
- * Name of the property controlled by this record (e.g.: issue, issuewild, iodef).
- */
- tag?: string;
-
- /**
- * Value of the record. This field's semantics depend on the chosen tag.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Cert {
- /**
- * Components of a CERT record.
- */
- data: Cert.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CERT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CERT content. See 'data' to set CERT properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Cert.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Cert {
- /**
- * Components of a CERT record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
-
- /**
- * Type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CNAME {
- /**
- * A valid hostname. Must not match the record's name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CNAME';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CNAME.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CNAME {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- data: DNSKEY.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DNSKEY';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DNSKEY content. See 'data' to set DNSKEY properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DNSKEY.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Flags.
- */
- flags?: number;
-
- /**
- * Protocol.
- */
- protocol?: number;
-
- /**
- * Public Key.
- */
- public_key?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DS {
- /**
- * Components of a DS record.
- */
- data: DS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DS content. See 'data' to set DS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DS {
- /**
- * Components of a DS record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Digest.
- */
- digest?: string;
-
- /**
- * Digest Type.
- */
- digest_type?: number;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface HTTPS {
- /**
- * Components of a HTTPS record.
- */
- data: HTTPS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'HTTPS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted HTTPS content. See 'data' to set HTTPS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: HTTPS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace HTTPS {
- /**
- * Components of a HTTPS record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface LOC {
- /**
- * Components of a LOC record.
- */
- data: LOC.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'LOC';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted LOC content. See 'data' to set LOC properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: LOC.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace LOC {
- /**
- * Components of a LOC record.
- */
- export interface Data {
- /**
- * Altitude of location in meters.
- */
- altitude?: number;
-
- /**
- * Degrees of latitude.
- */
- lat_degrees?: number;
-
- /**
- * Latitude direction.
- */
- lat_direction?: 'N' | 'S';
-
- /**
- * Minutes of latitude.
- */
- lat_minutes?: number;
-
- /**
- * Seconds of latitude.
- */
- lat_seconds?: number;
-
- /**
- * Degrees of longitude.
- */
- long_degrees?: number;
-
- /**
- * Longitude direction.
- */
- long_direction?: 'E' | 'W';
-
- /**
- * Minutes of longitude.
- */
- long_minutes?: number;
-
- /**
- * Seconds of longitude.
- */
- long_seconds?: number;
-
- /**
- * Horizontal precision of location.
- */
- precision_horz?: number;
-
- /**
- * Vertical precision of location.
- */
- precision_vert?: number;
-
- /**
- * Size of location in meters.
- */
- size?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface MX {
- /**
- * A valid mail server hostname.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'MX';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: MX.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace MX {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NAPTR {
- /**
- * Components of a NAPTR record.
- */
- data: NAPTR.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NAPTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted NAPTR content. See 'data' to set NAPTR properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NAPTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NAPTR {
- /**
- * Components of a NAPTR record.
- */
- export interface Data {
- /**
- * Flags.
- */
- flags?: string;
-
- /**
- * Order.
- */
- order?: number;
-
- /**
- * Preference.
- */
- preference?: number;
-
- /**
- * Regex.
- */
- regex?: string;
-
- /**
- * Replacement.
- */
- replacement?: string;
-
- /**
- * Service.
- */
- service?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NS {
- /**
- * A valid name server host name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NS {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface PTR {
- /**
- * Domain name pointing to the address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'PTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: PTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace PTR {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Smimea {
- /**
- * Components of a SMIMEA record.
- */
- data: Smimea.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SMIMEA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SMIMEA content. See 'data' to set SMIMEA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Smimea.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Smimea {
- /**
- * Components of a SMIMEA record.
- */
- export interface Data {
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SRV {
- /**
- * Components of a SRV record.
- */
- data: SRV.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode. For SRV records, the first
- * label is normally a service and the second a protocol name, each starting with
- * an underscore.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SRV';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Priority, weight, port, and SRV target. See 'data' for setting the individual
- * component values.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SRV.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SRV {
- /**
- * Components of a SRV record.
- */
- export interface Data {
- /**
- * @deprecated: A valid hostname. Deprecated in favor of the regular 'name' outside
- * the data map. This data map field represents the remainder of the full 'name'
- * after the service and protocol.
- */
- name?: string;
-
- /**
- * The port of the service.
- */
- port?: number;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority?: number;
-
- /**
- * @deprecated: A valid protocol, prefixed with an underscore. Deprecated in favor
- * of the regular 'name' outside the data map. This data map field normally
- * represents the second label of that 'name'.
- */
- proto?: string;
-
- /**
- * @deprecated: A service type, prefixed with an underscore. Deprecated in favor of
- * the regular 'name' outside the data map. This data map field normally represents
- * the first label of that 'name'.
- */
- service?: string;
-
- /**
- * A valid hostname.
- */
- target?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SSHFP {
- /**
- * Components of a SSHFP record.
- */
- data: SSHFP.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SSHFP';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SSHFP content. See 'data' to set SSHFP properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SSHFP.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SSHFP {
- /**
- * Components of a SSHFP record.
- */
- export interface Data {
- /**
- * algorithm.
- */
- algorithm?: number;
-
- /**
- * fingerprint.
- */
- fingerprint?: string;
-
- /**
- * type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SVCB {
- /**
- * Components of a SVCB record.
- */
- data: SVCB.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SVCB';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SVCB content. See 'data' to set SVCB properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SVCB.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SVCB {
- /**
- * Components of a SVCB record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TLSA {
- /**
- * Components of a TLSA record.
- */
- data: TLSA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TLSA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted TLSA content. See 'data' to set TLSA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TLSA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TLSA {
- /**
- * Components of a TLSA record.
- */
- export interface Data {
- /**
- * certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TXT {
- /**
- * Text content for the record.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TXT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TXT.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TXT {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface URI {
- /**
- * Components of a URI record.
- */
- data: URI.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'URI';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted URI content. See 'data' to set URI properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: URI.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace URI {
- /**
- * Components of a URI record.
- */
- export interface Data {
- /**
- * The record content.
- */
- content?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-}
-
-/**
- * Exported BIND zone file.
- */
-export type RecordExportResponse = string;
-
-export type RecordGetResponse =
- | RecordGetResponse.A
- | RecordGetResponse.AAAA
- | RecordGetResponse.CAA
- | RecordGetResponse.Cert
- | RecordGetResponse.CNAME
- | RecordGetResponse.DNSKEY
- | RecordGetResponse.DS
- | RecordGetResponse.HTTPS
- | RecordGetResponse.LOC
- | RecordGetResponse.MX
- | RecordGetResponse.NAPTR
- | RecordGetResponse.NS
- | RecordGetResponse.PTR
- | RecordGetResponse.Smimea
- | RecordGetResponse.SRV
- | RecordGetResponse.SSHFP
- | RecordGetResponse.SVCB
- | RecordGetResponse.TLSA
- | RecordGetResponse.TXT
- | RecordGetResponse.URI;
-
-export namespace RecordGetResponse {
- export interface A {
- /**
- * A valid IPv4 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'A';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: A.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace A {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface AAAA {
- /**
- * A valid IPv6 address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'AAAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: AAAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace AAAA {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CAA {
- /**
- * Components of a CAA record.
- */
- data: CAA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CAA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CAA content. See 'data' to set CAA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CAA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CAA {
- /**
- * Components of a CAA record.
- */
- export interface Data {
- /**
- * Flags for the CAA record.
- */
- flags?: number;
-
- /**
- * Name of the property controlled by this record (e.g.: issue, issuewild, iodef).
- */
- tag?: string;
-
- /**
- * Value of the record. This field's semantics depend on the chosen tag.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Cert {
- /**
- * Components of a CERT record.
- */
- data: Cert.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CERT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted CERT content. See 'data' to set CERT properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Cert.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Cert {
- /**
- * Components of a CERT record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
-
- /**
- * Type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface CNAME {
- /**
- * A valid hostname. Must not match the record's name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'CNAME';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: CNAME.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Whether the record is receiving the performance and security benefits of
- * Cloudflare.
- */
- proxied?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace CNAME {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- data: DNSKEY.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DNSKEY';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DNSKEY content. See 'data' to set DNSKEY properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DNSKEY.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DNSKEY {
- /**
- * Components of a DNSKEY record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Flags.
- */
- flags?: number;
-
- /**
- * Protocol.
- */
- protocol?: number;
-
- /**
- * Public Key.
- */
- public_key?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface DS {
- /**
- * Components of a DS record.
- */
- data: DS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'DS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted DS content. See 'data' to set DS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: DS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace DS {
- /**
- * Components of a DS record.
- */
- export interface Data {
- /**
- * Algorithm.
- */
- algorithm?: number;
-
- /**
- * Digest.
- */
- digest?: string;
-
- /**
- * Digest Type.
- */
- digest_type?: number;
-
- /**
- * Key Tag.
- */
- key_tag?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface HTTPS {
- /**
- * Components of a HTTPS record.
- */
- data: HTTPS.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'HTTPS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted HTTPS content. See 'data' to set HTTPS properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: HTTPS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace HTTPS {
- /**
- * Components of a HTTPS record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface LOC {
- /**
- * Components of a LOC record.
- */
- data: LOC.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'LOC';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted LOC content. See 'data' to set LOC properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: LOC.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace LOC {
- /**
- * Components of a LOC record.
- */
- export interface Data {
- /**
- * Altitude of location in meters.
- */
- altitude?: number;
-
- /**
- * Degrees of latitude.
- */
- lat_degrees?: number;
-
- /**
- * Latitude direction.
- */
- lat_direction?: 'N' | 'S';
-
- /**
- * Minutes of latitude.
- */
- lat_minutes?: number;
-
- /**
- * Seconds of latitude.
- */
- lat_seconds?: number;
-
- /**
- * Degrees of longitude.
- */
- long_degrees?: number;
-
- /**
- * Longitude direction.
- */
- long_direction?: 'E' | 'W';
-
- /**
- * Minutes of longitude.
- */
- long_minutes?: number;
-
- /**
- * Seconds of longitude.
- */
- long_seconds?: number;
-
- /**
- * Horizontal precision of location.
- */
- precision_horz?: number;
-
- /**
- * Vertical precision of location.
- */
- precision_vert?: number;
-
- /**
- * Size of location in meters.
- */
- size?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface MX {
- /**
- * A valid mail server hostname.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'MX';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: MX.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace MX {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NAPTR {
- /**
- * Components of a NAPTR record.
- */
- data: NAPTR.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NAPTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted NAPTR content. See 'data' to set NAPTR properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NAPTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NAPTR {
- /**
- * Components of a NAPTR record.
- */
- export interface Data {
- /**
- * Flags.
- */
- flags?: string;
-
- /**
- * Order.
- */
- order?: number;
-
- /**
- * Preference.
- */
- preference?: number;
-
- /**
- * Regex.
- */
- regex?: string;
-
- /**
- * Replacement.
- */
- replacement?: string;
-
- /**
- * Service.
- */
- service?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface NS {
- /**
- * A valid name server host name.
- */
- content: unknown;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'NS';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: NS.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace NS {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface PTR {
- /**
- * Domain name pointing to the address.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'PTR';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: PTR.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace PTR {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface Smimea {
- /**
- * Components of a SMIMEA record.
- */
- data: Smimea.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SMIMEA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SMIMEA content. See 'data' to set SMIMEA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: Smimea.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace Smimea {
- /**
- * Components of a SMIMEA record.
- */
- export interface Data {
- /**
- * Certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SRV {
- /**
- * Components of a SRV record.
- */
- data: SRV.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode. For SRV records, the first
- * label is normally a service and the second a protocol name, each starting with
- * an underscore.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SRV';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Priority, weight, port, and SRV target. See 'data' for setting the individual
- * component values.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SRV.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SRV {
- /**
- * Components of a SRV record.
- */
- export interface Data {
- /**
- * @deprecated: A valid hostname. Deprecated in favor of the regular 'name' outside
- * the data map. This data map field represents the remainder of the full 'name'
- * after the service and protocol.
- */
- name?: string;
-
- /**
- * The port of the service.
- */
- port?: number;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority?: number;
-
- /**
- * @deprecated: A valid protocol, prefixed with an underscore. Deprecated in favor
- * of the regular 'name' outside the data map. This data map field normally
- * represents the second label of that 'name'.
- */
- proto?: string;
-
- /**
- * @deprecated: A service type, prefixed with an underscore. Deprecated in favor of
- * the regular 'name' outside the data map. This data map field normally represents
- * the first label of that 'name'.
- */
- service?: string;
-
- /**
- * A valid hostname.
- */
- target?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SSHFP {
- /**
- * Components of a SSHFP record.
- */
- data: SSHFP.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SSHFP';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SSHFP content. See 'data' to set SSHFP properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SSHFP.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SSHFP {
- /**
- * Components of a SSHFP record.
- */
- export interface Data {
- /**
- * algorithm.
- */
- algorithm?: number;
-
- /**
- * fingerprint.
- */
- fingerprint?: string;
-
- /**
- * type.
- */
- type?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface SVCB {
- /**
- * Components of a SVCB record.
- */
- data: SVCB.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'SVCB';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted SVCB content. See 'data' to set SVCB properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: SVCB.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace SVCB {
- /**
- * Components of a SVCB record.
- */
- export interface Data {
- /**
- * priority.
- */
- priority?: number;
-
- /**
- * target.
- */
- target?: string;
-
- /**
- * value.
- */
- value?: string;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TLSA {
- /**
- * Components of a TLSA record.
- */
- data: TLSA.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TLSA';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted TLSA content. See 'data' to set TLSA properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TLSA.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TLSA {
- /**
- * Components of a TLSA record.
- */
- export interface Data {
- /**
- * certificate.
- */
- certificate?: string;
-
- /**
- * Matching Type.
- */
- matching_type?: number;
-
- /**
- * Selector.
- */
- selector?: number;
-
- /**
- * Usage.
- */
- usage?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface TXT {
- /**
- * Text content for the record.
- */
- content: string;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Record type.
- */
- type: 'TXT';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: TXT.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace TXT {
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-
- export interface URI {
- /**
- * Components of a URI record.
- */
- data: URI.Data;
-
- /**
- * DNS record name (or @ for the zone apex) in Punycode.
- */
- name: string;
-
- /**
- * Required for MX, SRV and URI records; unused by other record types. Records with
- * lower priorities are preferred.
- */
- priority: number;
-
- /**
- * Record type.
- */
- type: 'URI';
-
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Comments or notes about the DNS record. This field has no effect on DNS
- * responses.
- */
- comment?: string;
-
- /**
- * Formatted URI content. See 'data' to set URI properties.
- */
- content?: string;
-
- /**
- * When the record was created.
- */
- created_on?: string;
-
- /**
- * Whether this record can be modified/deleted (true means it's managed by
- * Cloudflare).
- */
- locked?: boolean;
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- meta?: URI.Meta;
-
- /**
- * When the record was last modified.
- */
- modified_on?: string;
-
- /**
- * Whether the record can be proxied by Cloudflare or not.
- */
- proxiable?: boolean;
-
- /**
- * Custom tags for the DNS record. This field has no effect on DNS responses.
- */
- tags?: Array;
-
- /**
- * Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'.
- * Value must be between 60 and 86400, with the minimum reduced to 30 for
- * Enterprise zones.
- */
- ttl?: number | 1;
-
- /**
- * Identifier
- */
- zone_id?: string;
-
- /**
- * The domain of the record.
- */
- zone_name?: string;
- }
-
- export namespace URI {
- /**
- * Components of a URI record.
- */
- export interface Data {
- /**
- * The record content.
- */
- content?: string;
-
- /**
- * The record weight.
- */
- weight?: number;
- }
-
- /**
- * Extra Cloudflare-specific information about the record.
- */
- export interface Meta {
- /**
- * Will exist if Cloudflare automatically added this DNS record during initial
- * setup.
- */
- auto_added?: boolean;
-
- /**
- * Where the record originated from.
- */
- source?: string;
- }
- }
-}
+/**
+ * Exported BIND zone file.
+ */
+export type RecordExportResponse = string;
export interface RecordImportResponse {
/**
@@ -15546,16 +3700,11 @@ export interface RecordScanParams {
export namespace Records {
export import DNSRecord = RecordsAPI.DNSRecord;
- export import RecordCreateResponse = RecordsAPI.RecordCreateResponse;
- export import RecordUpdateResponse = RecordsAPI.RecordUpdateResponse;
- export import RecordListResponse = RecordsAPI.RecordListResponse;
export import RecordDeleteResponse = RecordsAPI.RecordDeleteResponse;
- export import RecordEditResponse = RecordsAPI.RecordEditResponse;
export import RecordExportResponse = RecordsAPI.RecordExportResponse;
- export import RecordGetResponse = RecordsAPI.RecordGetResponse;
export import RecordImportResponse = RecordsAPI.RecordImportResponse;
export import RecordScanResponse = RecordsAPI.RecordScanResponse;
- export import RecordListResponsesV4PagePaginationArray = RecordsAPI.RecordListResponsesV4PagePaginationArray;
+ export import DNSRecordsV4PagePaginationArray = RecordsAPI.DNSRecordsV4PagePaginationArray;
export import RecordCreateParams = RecordsAPI.RecordCreateParams;
export import RecordUpdateParams = RecordsAPI.RecordUpdateParams;
export import RecordListParams = RecordsAPI.RecordListParams;
diff --git a/src/resources/index.ts b/src/resources/index.ts
index c50e8b6762..4f3978a0e7 100644
--- a/src/resources/index.ts
+++ b/src/resources/index.ts
@@ -369,17 +369,13 @@ export {
export { ZeroTrust } from './zero-trust/zero-trust';
export {
Zone,
- ZoneCreateResponse,
- ZoneListResponse,
ZoneDeleteResponse,
- ZoneEditResponse,
- ZoneGetResponse,
ZoneCreateParams,
ZoneListParams,
ZoneDeleteParams,
ZoneEditParams,
ZoneGetParams,
- ZoneListResponsesV4PagePaginationArray,
+ ZonesV4PagePaginationArray,
Zones,
} from './zones/zones';
export {
diff --git a/src/resources/zero-trust/dlp/profiles/custom.ts b/src/resources/zero-trust/dlp/profiles/custom.ts
index 067151799a..7c50e906a9 100644
--- a/src/resources/zero-trust/dlp/profiles/custom.ts
+++ b/src/resources/zero-trust/dlp/profiles/custom.ts
@@ -102,6 +102,11 @@ export interface DLPCustomProfile {
*/
name?: string;
+ /**
+ * If true, scan images via OCR to determine if any text present matches filters.
+ */
+ ocr_enabled?: boolean;
+
/**
* The type of the profile.
*/
@@ -236,6 +241,11 @@ export namespace CustomCreateParams {
* The name of the profile.
*/
name?: string;
+
+ /**
+ * If true, scan images via OCR to determine if any text present matches filters.
+ */
+ ocr_enabled?: boolean;
}
export namespace Profile {
@@ -343,6 +353,12 @@ export interface CustomUpdateParams {
*/
name?: string;
+ /**
+ * Body param: If true, scan images via OCR to determine if any text present
+ * matches filters.
+ */
+ ocr_enabled?: boolean;
+
/**
* Body param: Entries from other profiles (e.g. pre-defined Cloudflare profiles,
* or your Microsoft Information Protection profiles).
diff --git a/src/resources/zero-trust/dlp/profiles/predefined.ts b/src/resources/zero-trust/dlp/profiles/predefined.ts
index f9a7c9f13b..31050ac3a6 100644
--- a/src/resources/zero-trust/dlp/profiles/predefined.ts
+++ b/src/resources/zero-trust/dlp/profiles/predefined.ts
@@ -65,6 +65,11 @@ export interface DLPPredefinedProfile {
*/
name?: string;
+ /**
+ * If true, scan images via OCR to determine if any text present matches filters.
+ */
+ ocr_enabled?: boolean;
+
/**
* The type of the profile.
*/
@@ -149,6 +154,12 @@ export interface PredefinedUpdateParams {
* Body param: The entries for this profile.
*/
entries?: Array;
+
+ /**
+ * Body param: If true, scan images via OCR to determine if any text present
+ * matches filters.
+ */
+ ocr_enabled?: boolean;
}
export namespace PredefinedUpdateParams {
diff --git a/src/resources/zones/index.ts b/src/resources/zones/index.ts
index a98a9b049b..7fde16c88b 100644
--- a/src/resources/zones/index.ts
+++ b/src/resources/zones/index.ts
@@ -38,16 +38,12 @@ export {
export { Workers } from './workers/index';
export {
Zone,
- ZoneCreateResponse,
- ZoneListResponse,
ZoneDeleteResponse,
- ZoneEditResponse,
- ZoneGetResponse,
ZoneCreateParams,
ZoneListParams,
ZoneDeleteParams,
ZoneEditParams,
ZoneGetParams,
- ZoneListResponsesV4PagePaginationArray,
+ ZonesV4PagePaginationArray,
Zones,
} from './zones';
diff --git a/src/resources/zones/zones.ts b/src/resources/zones/zones.ts
index 1fd4bda9ac..4018329a57 100644
--- a/src/resources/zones/zones.ts
+++ b/src/resources/zones/zones.ts
@@ -25,9 +25,9 @@ export class Zones extends APIResource {
/**
* Create Zone
*/
- create(body: ZoneCreateParams, options?: Core.RequestOptions): Core.APIPromise {
+ create(body: ZoneCreateParams, options?: Core.RequestOptions): Core.APIPromise {
return (
- this._client.post('/zones', { body, ...options }) as Core.APIPromise<{ result: ZoneCreateResponse }>
+ this._client.post('/zones', { body, ...options }) as Core.APIPromise<{ result: Zone }>
)._thenUnwrap((obj) => obj.result);
}
@@ -37,18 +37,16 @@ export class Zones extends APIResource {
list(
query?: ZoneListParams,
options?: Core.RequestOptions,
- ): Core.PagePromise;
- list(
- options?: Core.RequestOptions,
- ): Core.PagePromise;
+ ): Core.PagePromise;
+ list(options?: Core.RequestOptions): Core.PagePromise;
list(
query: ZoneListParams | Core.RequestOptions = {},
options?: Core.RequestOptions,
- ): Core.PagePromise {
+ ): Core.PagePromise {
if (isRequestOptions(query)) {
return this.list({}, query);
}
- return this._client.getAPIList('/zones', ZoneListResponsesV4PagePaginationArray, { query, ...options });
+ return this._client.getAPIList('/zones', ZonesV4PagePaginationArray, { query, ...options });
}
/**
@@ -69,27 +67,25 @@ export class Zones extends APIResource {
/**
* Edits a zone. Only one zone property can be changed at a time.
*/
- edit(params: ZoneEditParams, options?: Core.RequestOptions): Core.APIPromise {
+ edit(params: ZoneEditParams, options?: Core.RequestOptions): Core.APIPromise {
const { zone_id, ...body } = params;
return (
- this._client.patch(`/zones/${zone_id}`, { body, ...options }) as Core.APIPromise<{
- result: ZoneEditResponse;
- }>
+ this._client.patch(`/zones/${zone_id}`, { body, ...options }) as Core.APIPromise<{ result: Zone }>
)._thenUnwrap((obj) => obj.result);
}
/**
* Zone Details
*/
- get(params: ZoneGetParams, options?: Core.RequestOptions): Core.APIPromise {
+ get(params: ZoneGetParams, options?: Core.RequestOptions): Core.APIPromise {
const { zone_id } = params;
- return (
- this._client.get(`/zones/${zone_id}`, options) as Core.APIPromise<{ result: ZoneGetResponse }>
- )._thenUnwrap((obj) => obj.result);
+ return (this._client.get(`/zones/${zone_id}`, options) as Core.APIPromise<{ result: Zone }>)._thenUnwrap(
+ (obj) => obj.result,
+ );
}
}
-export class ZoneListResponsesV4PagePaginationArray extends V4PagePaginationArray {}
+export class ZonesV4PagePaginationArray extends V4PagePaginationArray {}
export interface Zone {
/**
@@ -236,591 +232,11 @@ export namespace Zone {
}
}
-export interface ZoneCreateResponse {
- /**
- * Identifier
- */
- id: string;
-
- /**
- * The account the zone belongs to
- */
- account: ZoneCreateResponse.Account;
-
- /**
- * The last time proof of ownership was detected and the zone was made active
- */
- activated_on: string | null;
-
- /**
- * When the zone was created
- */
- created_on: string;
-
- /**
- * The interval (in seconds) from when development mode expires (positive integer)
- * or last expired (negative integer) for the domain. If development mode has never
- * been enabled, this value is 0.
- */
- development_mode: number;
-
- /**
- * Metadata about the zone
- */
- meta: ZoneCreateResponse.Meta;
-
- /**
- * When the zone was last modified
- */
- modified_on: string;
-
- /**
- * The domain name
- */
- name: string;
-
- /**
- * DNS host at the time of switching to Cloudflare
- */
- original_dnshost: string | null;
-
- /**
- * Original name servers before moving to Cloudflare Notes: Is this only available
- * for full zones?
- */
- original_name_servers: Array | null;
-
- /**
- * Registrar for the domain at the time of switching to Cloudflare
- */
- original_registrar: string | null;
-
- /**
- * The owner of the zone
- */
- owner: ZoneCreateResponse.Owner;
-
- /**
- * An array of domains used for custom name servers. This is only available for
- * Business and Enterprise plans.
- */
- vanity_name_servers?: Array;
-}
-
-export namespace ZoneCreateResponse {
- /**
- * The account the zone belongs to
- */
- export interface Account {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * The name of the account
- */
- name?: string;
- }
-
- /**
- * Metadata about the zone
- */
- export interface Meta {
- /**
- * The zone is only configured for CDN
- */
- cdn_only?: boolean;
-
- /**
- * Number of Custom Certificates the zone can have
- */
- custom_certificate_quota?: number;
-
- /**
- * The zone is only configured for DNS
- */
- dns_only?: boolean;
-
- /**
- * The zone is setup with Foundation DNS
- */
- foundation_dns?: boolean;
-
- /**
- * Number of Page Rules a zone can have
- */
- page_rule_quota?: number;
-
- /**
- * The zone has been flagged for phishing
- */
- phishing_detected?: boolean;
-
- step?: number;
- }
-
- /**
- * The owner of the zone
- */
- export interface Owner {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Name of the owner
- */
- name?: string;
-
- /**
- * The type of owner
- */
- type?: string;
- }
-}
-
-export interface ZoneListResponse {
+export interface ZoneDeleteResponse {
/**
* Identifier
*/
id: string;
-
- /**
- * The account the zone belongs to
- */
- account: ZoneListResponse.Account;
-
- /**
- * The last time proof of ownership was detected and the zone was made active
- */
- activated_on: string | null;
-
- /**
- * When the zone was created
- */
- created_on: string;
-
- /**
- * The interval (in seconds) from when development mode expires (positive integer)
- * or last expired (negative integer) for the domain. If development mode has never
- * been enabled, this value is 0.
- */
- development_mode: number;
-
- /**
- * Metadata about the zone
- */
- meta: ZoneListResponse.Meta;
-
- /**
- * When the zone was last modified
- */
- modified_on: string;
-
- /**
- * The domain name
- */
- name: string;
-
- /**
- * DNS host at the time of switching to Cloudflare
- */
- original_dnshost: string | null;
-
- /**
- * Original name servers before moving to Cloudflare Notes: Is this only available
- * for full zones?
- */
- original_name_servers: Array | null;
-
- /**
- * Registrar for the domain at the time of switching to Cloudflare
- */
- original_registrar: string | null;
-
- /**
- * The owner of the zone
- */
- owner: ZoneListResponse.Owner;
-
- /**
- * An array of domains used for custom name servers. This is only available for
- * Business and Enterprise plans.
- */
- vanity_name_servers?: Array;
-}
-
-export namespace ZoneListResponse {
- /**
- * The account the zone belongs to
- */
- export interface Account {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * The name of the account
- */
- name?: string;
- }
-
- /**
- * Metadata about the zone
- */
- export interface Meta {
- /**
- * The zone is only configured for CDN
- */
- cdn_only?: boolean;
-
- /**
- * Number of Custom Certificates the zone can have
- */
- custom_certificate_quota?: number;
-
- /**
- * The zone is only configured for DNS
- */
- dns_only?: boolean;
-
- /**
- * The zone is setup with Foundation DNS
- */
- foundation_dns?: boolean;
-
- /**
- * Number of Page Rules a zone can have
- */
- page_rule_quota?: number;
-
- /**
- * The zone has been flagged for phishing
- */
- phishing_detected?: boolean;
-
- step?: number;
- }
-
- /**
- * The owner of the zone
- */
- export interface Owner {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Name of the owner
- */
- name?: string;
-
- /**
- * The type of owner
- */
- type?: string;
- }
-}
-
-export interface ZoneDeleteResponse {
- /**
- * Identifier
- */
- id: string;
-}
-
-export interface ZoneEditResponse {
- /**
- * Identifier
- */
- id: string;
-
- /**
- * The account the zone belongs to
- */
- account: ZoneEditResponse.Account;
-
- /**
- * The last time proof of ownership was detected and the zone was made active
- */
- activated_on: string | null;
-
- /**
- * When the zone was created
- */
- created_on: string;
-
- /**
- * The interval (in seconds) from when development mode expires (positive integer)
- * or last expired (negative integer) for the domain. If development mode has never
- * been enabled, this value is 0.
- */
- development_mode: number;
-
- /**
- * Metadata about the zone
- */
- meta: ZoneEditResponse.Meta;
-
- /**
- * When the zone was last modified
- */
- modified_on: string;
-
- /**
- * The domain name
- */
- name: string;
-
- /**
- * DNS host at the time of switching to Cloudflare
- */
- original_dnshost: string | null;
-
- /**
- * Original name servers before moving to Cloudflare Notes: Is this only available
- * for full zones?
- */
- original_name_servers: Array | null;
-
- /**
- * Registrar for the domain at the time of switching to Cloudflare
- */
- original_registrar: string | null;
-
- /**
- * The owner of the zone
- */
- owner: ZoneEditResponse.Owner;
-
- /**
- * An array of domains used for custom name servers. This is only available for
- * Business and Enterprise plans.
- */
- vanity_name_servers?: Array;
-}
-
-export namespace ZoneEditResponse {
- /**
- * The account the zone belongs to
- */
- export interface Account {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * The name of the account
- */
- name?: string;
- }
-
- /**
- * Metadata about the zone
- */
- export interface Meta {
- /**
- * The zone is only configured for CDN
- */
- cdn_only?: boolean;
-
- /**
- * Number of Custom Certificates the zone can have
- */
- custom_certificate_quota?: number;
-
- /**
- * The zone is only configured for DNS
- */
- dns_only?: boolean;
-
- /**
- * The zone is setup with Foundation DNS
- */
- foundation_dns?: boolean;
-
- /**
- * Number of Page Rules a zone can have
- */
- page_rule_quota?: number;
-
- /**
- * The zone has been flagged for phishing
- */
- phishing_detected?: boolean;
-
- step?: number;
- }
-
- /**
- * The owner of the zone
- */
- export interface Owner {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Name of the owner
- */
- name?: string;
-
- /**
- * The type of owner
- */
- type?: string;
- }
-}
-
-export interface ZoneGetResponse {
- /**
- * Identifier
- */
- id: string;
-
- /**
- * The account the zone belongs to
- */
- account: ZoneGetResponse.Account;
-
- /**
- * The last time proof of ownership was detected and the zone was made active
- */
- activated_on: string | null;
-
- /**
- * When the zone was created
- */
- created_on: string;
-
- /**
- * The interval (in seconds) from when development mode expires (positive integer)
- * or last expired (negative integer) for the domain. If development mode has never
- * been enabled, this value is 0.
- */
- development_mode: number;
-
- /**
- * Metadata about the zone
- */
- meta: ZoneGetResponse.Meta;
-
- /**
- * When the zone was last modified
- */
- modified_on: string;
-
- /**
- * The domain name
- */
- name: string;
-
- /**
- * DNS host at the time of switching to Cloudflare
- */
- original_dnshost: string | null;
-
- /**
- * Original name servers before moving to Cloudflare Notes: Is this only available
- * for full zones?
- */
- original_name_servers: Array | null;
-
- /**
- * Registrar for the domain at the time of switching to Cloudflare
- */
- original_registrar: string | null;
-
- /**
- * The owner of the zone
- */
- owner: ZoneGetResponse.Owner;
-
- /**
- * An array of domains used for custom name servers. This is only available for
- * Business and Enterprise plans.
- */
- vanity_name_servers?: Array;
-}
-
-export namespace ZoneGetResponse {
- /**
- * The account the zone belongs to
- */
- export interface Account {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * The name of the account
- */
- name?: string;
- }
-
- /**
- * Metadata about the zone
- */
- export interface Meta {
- /**
- * The zone is only configured for CDN
- */
- cdn_only?: boolean;
-
- /**
- * Number of Custom Certificates the zone can have
- */
- custom_certificate_quota?: number;
-
- /**
- * The zone is only configured for DNS
- */
- dns_only?: boolean;
-
- /**
- * The zone is setup with Foundation DNS
- */
- foundation_dns?: boolean;
-
- /**
- * Number of Page Rules a zone can have
- */
- page_rule_quota?: number;
-
- /**
- * The zone has been flagged for phishing
- */
- phishing_detected?: boolean;
-
- step?: number;
- }
-
- /**
- * The owner of the zone
- */
- export interface Owner {
- /**
- * Identifier
- */
- id?: string;
-
- /**
- * Name of the owner
- */
- name?: string;
-
- /**
- * The type of owner
- */
- type?: string;
- }
}
export interface ZoneCreateParams {
@@ -968,12 +384,8 @@ export interface ZoneGetParams {
export namespace Zones {
export import Zone = ZonesAPI.Zone;
- export import ZoneCreateResponse = ZonesAPI.ZoneCreateResponse;
- export import ZoneListResponse = ZonesAPI.ZoneListResponse;
export import ZoneDeleteResponse = ZonesAPI.ZoneDeleteResponse;
- export import ZoneEditResponse = ZonesAPI.ZoneEditResponse;
- export import ZoneGetResponse = ZonesAPI.ZoneGetResponse;
- export import ZoneListResponsesV4PagePaginationArray = ZonesAPI.ZoneListResponsesV4PagePaginationArray;
+ export import ZonesV4PagePaginationArray = ZonesAPI.ZonesV4PagePaginationArray;
export import ZoneCreateParams = ZonesAPI.ZoneCreateParams;
export import ZoneListParams = ZonesAPI.ZoneListParams;
export import ZoneDeleteParams = ZonesAPI.ZoneDeleteParams;
diff --git a/tests/api-resources/zero-trust/dlp/profiles/custom.test.ts b/tests/api-resources/zero-trust/dlp/profiles/custom.test.ts
index ae21a76ff6..491f6a2486 100644
--- a/tests/api-resources/zero-trust/dlp/profiles/custom.test.ts
+++ b/tests/api-resources/zero-trust/dlp/profiles/custom.test.ts
@@ -52,6 +52,7 @@ describe('resource custom', () => {
},
],
name: 'Generic CVV Card Number',
+ ocr_enabled: true,
},
{
allowed_match_count: 5,
@@ -75,6 +76,7 @@ describe('resource custom', () => {
},
],
name: 'Generic CVV Card Number',
+ ocr_enabled: true,
},
{
allowed_match_count: 5,
@@ -98,6 +100,7 @@ describe('resource custom', () => {
},
],
name: 'Generic CVV Card Number',
+ ocr_enabled: true,
},
],
});
@@ -148,6 +151,7 @@ describe('resource custom', () => {
},
],
name: 'Generic CVV Card Number',
+ ocr_enabled: true,
shared_entries: [{ enabled: true }, { enabled: true }, { enabled: true }],
},
);
diff --git a/tests/api-resources/zero-trust/dlp/profiles/predefined.test.ts b/tests/api-resources/zero-trust/dlp/profiles/predefined.test.ts
index 0c046aa7f6..be884fb336 100644
--- a/tests/api-resources/zero-trust/dlp/profiles/predefined.test.ts
+++ b/tests/api-resources/zero-trust/dlp/profiles/predefined.test.ts
@@ -34,6 +34,7 @@ describe('resource predefined', () => {
allowed_match_count: 5,
context_awareness: { enabled: true, skip: { files: true } },
entries: [{ enabled: true }, { enabled: true }, { enabled: true }],
+ ocr_enabled: true,
},
);
});