@opusdns/api 1.125.0 → 1.127.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "@opusdns/api-spec-ts-generator": "^1.5.0"
4
4
  },
5
5
  "name": "@opusdns/api",
6
- "version": "1.125.0",
6
+ "version": "1.127.0",
7
7
  "description": "TypeScript types for the OpusDNS OpenAPI specification",
8
8
  "main": "./src/index.ts",
9
9
  "module": "./src/index.ts",
@@ -28,6 +28,7 @@ import type {
28
28
  DnssecDigestType,
29
29
  DnssecModeType,
30
30
  DnssecRecordType,
31
+ DnssecRegistryPublishOutcome,
31
32
  DnssecStatus,
32
33
  DomainAttributeKey,
33
34
  DomainAvailabilityStatus,
@@ -605,6 +606,22 @@ export const DNSSEC_RECORD_TYPE_VALUES = [
605
606
  'key_data',
606
607
  ] as const satisfies ReadonlyArray<DnssecRecordType>;
607
608
 
609
+ export const DNSSEC_REGISTRY_PUBLISH_OUTCOME = {
610
+ PUBLISHED: "published",
611
+ DEFERRED: "deferred",
612
+ SKIPPED: "skipped",
613
+ WITHDRAWN: "withdrawn",
614
+ FAILED: "failed",
615
+ } as const satisfies Record<string, DnssecRegistryPublishOutcome>;
616
+
617
+ export const DNSSEC_REGISTRY_PUBLISH_OUTCOME_VALUES = [
618
+ 'published',
619
+ 'deferred',
620
+ 'skipped',
621
+ 'withdrawn',
622
+ 'failed',
623
+ ] as const satisfies ReadonlyArray<DnssecRegistryPublishOutcome>;
624
+
608
625
  export const DNSSEC_STATUS = {
609
626
  ENABLED: "enabled",
610
627
  DISABLED: "disabled",
@@ -1812,6 +1829,8 @@ export const STATUS_TAG_TYPE = {
1812
1829
  INBOUND_TRANSFER_PENDING: "INBOUND_TRANSFER_PENDING",
1813
1830
  OUTBOUND_TRANSFER_PENDING: "OUTBOUND_TRANSFER_PENDING",
1814
1831
  EXTERNAL: "EXTERNAL",
1832
+ IMPORT_REQUESTED: "IMPORT_REQUESTED",
1833
+ IMPORT_PENDING: "IMPORT_PENDING",
1815
1834
  } as const satisfies Record<string, StatusTagType>;
1816
1835
 
1817
1836
  export const STATUS_TAG_TYPE_VALUES = [
@@ -1820,6 +1839,8 @@ export const STATUS_TAG_TYPE_VALUES = [
1820
1839
  'INBOUND_TRANSFER_PENDING',
1821
1840
  'OUTBOUND_TRANSFER_PENDING',
1822
1841
  'EXTERNAL',
1842
+ 'IMPORT_REQUESTED',
1843
+ 'IMPORT_PENDING',
1823
1844
  ] as const satisfies ReadonlyArray<StatusTagType>;
1824
1845
 
1825
1846
  export const SYNC_OPERATION_TYPE = {
@@ -1394,12 +1394,14 @@ export const KEYS_DNS_CHANGE = [
1394
1394
 
1395
1395
  export const KEY_DNS_CHANGES_CHANGES = 'changes' satisfies keyof DnsChanges;
1396
1396
  export const KEY_DNS_CHANGES_CHANGESET_ID = 'changeset_id' satisfies keyof DnsChanges;
1397
+ export const KEY_DNS_CHANGES_DNSSEC_REGISTRY_PUBLISH = 'dnssec_registry_publish' satisfies keyof DnsChanges;
1397
1398
  export const KEY_DNS_CHANGES_NUM_CHANGES = 'num_changes' satisfies keyof DnsChanges;
1398
1399
  export const KEY_DNS_CHANGES_ZONE_NAME = 'zone_name' satisfies keyof DnsChanges;
1399
1400
 
1400
1401
  export const KEYS_DNS_CHANGES = [
1401
1402
  KEY_DNS_CHANGES_CHANGES,
1402
1403
  KEY_DNS_CHANGES_CHANGESET_ID,
1404
+ KEY_DNS_CHANGES_DNSSEC_REGISTRY_PUBLISH,
1403
1405
  KEY_DNS_CHANGES_NUM_CHANGES,
1404
1406
  KEY_DNS_CHANGES_ZONE_NAME,
1405
1407
  ] as const satisfies (keyof DnsChanges)[];
@@ -1145,9 +1145,10 @@ export type POST_DomainsByDomainReferenceDnssecDisable_Response = POST_DomainsBy
1145
1145
  export type POST_DomainsByDomainReferenceDnssecDisable_Response_404 = Problem;
1146
1146
  export type POST_DomainsByDomainReferenceDnssecDisable_Response_422 = HTTPValidationError;
1147
1147
 
1148
- export type POST_DomainsByDomainReferenceDnssecEnable_Response = POST_DomainsByDomainReferenceDnssecEnable_Response_200 | POST_DomainsByDomainReferenceDnssecEnable_Response_404 | POST_DomainsByDomainReferenceDnssecEnable_Response_409 | POST_DomainsByDomainReferenceDnssecEnable_Response_422;
1148
+ export type POST_DomainsByDomainReferenceDnssecEnable_Response = POST_DomainsByDomainReferenceDnssecEnable_Response_200 | POST_DomainsByDomainReferenceDnssecEnable_Response_202 | POST_DomainsByDomainReferenceDnssecEnable_Response_404 | POST_DomainsByDomainReferenceDnssecEnable_Response_409 | POST_DomainsByDomainReferenceDnssecEnable_Response_422;
1149
1149
 
1150
1150
  export type POST_DomainsByDomainReferenceDnssecEnable_Response_200 = DomainDnssecData[];
1151
+ export type POST_DomainsByDomainReferenceDnssecEnable_Response_202 = DomainDnssecData[];
1151
1152
  export type POST_DomainsByDomainReferenceDnssecEnable_Response_404 = Problem;
1152
1153
  export type POST_DomainsByDomainReferenceDnssecEnable_Response_409 = Problem;
1153
1154
  export type POST_DomainsByDomainReferenceDnssecEnable_Response_422 = Problem;
@@ -148,6 +148,7 @@ export type DnssecAlgorithm = components['schemas']['DnssecAlgorithm'];
148
148
  export type DnssecDigestType = components['schemas']['DnssecDigestType'];
149
149
  export type DnssecModeType = components['schemas']['DnssecModeType'];
150
150
  export type DnssecRecordType = components['schemas']['DnssecRecordType'];
151
+ export type DnssecRegistryPublishOutcome = components['schemas']['DnssecRegistryPublishOutcome'];
151
152
  export type DnssecStatus = components['schemas']['DnssecStatus'];
152
153
  export type DomainAttributeKey = components['schemas']['DomainAttributeKey'];
153
154
  export type DomainAvailability = components['schemas']['DomainAvailability'];
package/src/openapi.yaml CHANGED
@@ -2654,6 +2654,10 @@ components:
2654
2654
  type: string
2655
2655
  - type: 'null'
2656
2656
  title: Changeset Id
2657
+ dnssec_registry_publish:
2658
+ anyOf:
2659
+ - $ref: '#/components/schemas/DnssecRegistryPublishOutcome'
2660
+ - type: 'null'
2657
2661
  num_changes:
2658
2662
  title: Num Changes
2659
2663
  type: integer
@@ -3763,6 +3767,48 @@ components:
3763
3767
  - key_data
3764
3768
  title: DnssecRecordType
3765
3769
  type: string
3770
+ DnssecRegistryPublishOutcome:
3771
+ description: 'Fate of the DS/DNSKEY submission that follows signing a zone.
3772
+
3773
+
3774
+ DEFERRED means the zone is signed but the parent holds no DS yet: the registry
3775
+
3776
+ rejected the submission because the public nameservers had not served the
3777
+ new key
3778
+
3779
+ material yet, and a background job is retrying. A signed zone with no DS at
3780
+ the
3781
+
3782
+ parent resolves as unsigned, so the intermediate state is safe.
3783
+
3784
+
3785
+ WITHDRAWN means the zone stopped being signed while the DS was in flight,
3786
+ so the DS
3787
+
3788
+ was taken back off the parent: the enablement did not take effect. It is kept
3789
+ apart
3790
+
3791
+ from SKIPPED because SKIPPED also covers "there was nothing to submit", and
3792
+ a caller
3793
+
3794
+ must not render an enablement that was undone as a success.
3795
+
3796
+
3797
+ FAILED means the zone is signed and nothing is working towards a DS. Only
3798
+ the zone
3799
+
3800
+ create path can report it, because that is the one caller that cannot propagate
3801
+ the
3802
+
3803
+ error. Null means the response makes no statement about a registry DS submission.'
3804
+ enum:
3805
+ - published
3806
+ - deferred
3807
+ - skipped
3808
+ - withdrawn
3809
+ - failed
3810
+ title: DnssecRegistryPublishOutcome
3811
+ type: string
3766
3812
  DnssecStatus:
3767
3813
  enum:
3768
3814
  - enabled
@@ -12760,6 +12806,8 @@ components:
12760
12806
  - INBOUND_TRANSFER_PENDING
12761
12807
  - OUTBOUND_TRANSFER_PENDING
12762
12808
  - EXTERNAL
12809
+ - IMPORT_REQUESTED
12810
+ - IMPORT_PENDING
12763
12811
  title: StatusTagType
12764
12812
  type: string
12765
12813
  StrictMoneyDecimal:
@@ -15586,7 +15634,7 @@ info:
15586
15634
  \n\n"
15587
15635
  summary: OpusDNS - your gateway to a seamless domain management experience.
15588
15636
  title: OpusDNS API
15589
- version: 2026-08-20-103451
15637
+ version: 2026-08-21-183123
15590
15638
  x-logo:
15591
15639
  altText: OpusDNS API Reference
15592
15640
  url: https://d24lr4zqs1tgqh.cloudfront.net/c9505a20-5ae1-406c-b060-d392569caebf.jpg
@@ -20016,6 +20064,59 @@ paths:
20016
20064
  schema:
20017
20065
  $ref: '#/components/schemas/DnsChangesResponse'
20018
20066
  description: DNSSEC enabled successfully
20067
+ '202':
20068
+ content:
20069
+ application/json:
20070
+ examples:
20071
+ dnssec_publish_deferred:
20072
+ description: Changeset response with `dnssec_registry_publish` set
20073
+ to `deferred`
20074
+ summary: DNSSEC enabled, registry publish deferred
20075
+ value:
20076
+ changes:
20077
+ - action: delete_record
20078
+ record_data: ns1.opusdns.com. hostmaster.opusdns.com. 2025111801
20079
+ 10800 3600 604800 300
20080
+ rrset_name: example.com.
20081
+ rrset_type: SOA
20082
+ ttl: 3600
20083
+ - action: create_record
20084
+ record_data: ns1.opusdns.com. hostmaster.opusdns.com. 2025111802
20085
+ 10800 3600 604800 300
20086
+ rrset_name: example.com.
20087
+ rrset_type: SOA
20088
+ ttl: 3600
20089
+ - action: create_record
20090
+ record_data: 256 3 13 5OmhbRQw0+xlqw4iYjM9SojiKkpfReE8LoMzzb3uDSvfvaePyreODC0Pf0eMti2hz/q9by5G7jh5nqQBRp8qAA==
20091
+ rrset_name: example.com.
20092
+ rrset_type: DNSKEY
20093
+ ttl: 300
20094
+ - action: create_record
20095
+ record_data: 257 3 13 4knSelKBhrAmgwkLMDbJGXmpdO2vkPf6uwGn52BQmlgWXjIXnGqv9CYPTwplRf4mRbFKFDkhU8dn9AsNOL+8EQ==
20096
+ rrset_name: example.com.
20097
+ rrset_type: DNSKEY
20098
+ ttl: 300
20099
+ - action: create_record
20100
+ record_data: 41074 13 2 0f8ad1e9b0de2eb958ba571208951e71330e6d9e2afa3c84ec6bd16d77bfc718
20101
+ rrset_name: example.com.
20102
+ rrset_type: DS
20103
+ ttl: 300
20104
+ - action: create_record
20105
+ record_data: 41074 13 4 f2fa86164e45235537238dd5b86a6a2533fd17b1e8216c1d66d18ccfc79be4dca77e3bc6d76eb136e193c2cee0a6ea85
20106
+ rrset_name: example.com.
20107
+ rrset_type: DS
20108
+ ttl: 300
20109
+ - action: enable_dnssec
20110
+ changeset_id: b89527a6-b46e-4d29-bd57-6a1b6b4915c7
20111
+ dnssec_registry_publish: deferred
20112
+ num_changes: 7
20113
+ zone_name: example.com.
20114
+ description: The zone is signed, but the registry has not accepted the DS
20115
+ record yet because it could not see the new key material on the public
20116
+ nameservers. A background job resubmits it with backoff. Until it succeeds
20117
+ the zone resolves as unsigned; if the job gives up, DNSSEC is switched
20118
+ back off and a domain modification failure event carries the registry's
20119
+ diagnostic.
20019
20120
  '400':
20020
20121
  content:
20021
20122
  application/problem+json:
@@ -20031,14 +20132,25 @@ paths:
20031
20132
  '409':
20032
20133
  content:
20033
20134
  application/problem+json:
20034
- example:
20035
- code: ERROR_DOMAIN_DNSSEC_ZONE_RECORDS_UNAVAILABLE
20036
- detail: DNS zone 'example.com.' is DNSSEC-enabled but has no usable
20037
- DS records to publish
20038
- status: 409
20039
- title: DNSSEC Zone Records Unavailable
20040
- type: domain-dnssec-zone-records-unavailable
20041
- zone_name: example.com.
20135
+ examples:
20136
+ DNSSEC Enable Superseded:
20137
+ value:
20138
+ code: ERROR_DOMAIN_DNSSEC_ENABLE_SUPERSEDED
20139
+ detail: DNSSEC was disabled for 'example.com.' while it was being
20140
+ enabled; the DS record was withdrawn and DNSSEC is off
20141
+ status: 409
20142
+ title: DNSSEC Enable Superseded
20143
+ type: domain-dnssec-enable-superseded
20144
+ zone_name: example.com.
20145
+ DNSSEC Zone Records Unavailable:
20146
+ value:
20147
+ code: ERROR_DOMAIN_DNSSEC_ZONE_RECORDS_UNAVAILABLE
20148
+ detail: DNS zone 'example.com.' is DNSSEC-enabled but has no usable
20149
+ DS records to publish
20150
+ status: 409
20151
+ title: DNSSEC Zone Records Unavailable
20152
+ type: domain-dnssec-zone-records-unavailable
20153
+ zone_name: example.com.
20042
20154
  schema:
20043
20155
  $ref: '#/components/schemas/Problem'
20044
20156
  description: Conflict
@@ -25363,6 +25475,21 @@ paths:
25363
25475
  Reference Dnssec Enable Post
25364
25476
  type: array
25365
25477
  description: Successful Response
25478
+ '202':
25479
+ content:
25480
+ application/json:
25481
+ schema:
25482
+ items:
25483
+ $ref: '#/components/schemas/DomainDnssecDataResponse'
25484
+ title: Response 202 Enable And Publish Dnssec Records V1 Domains Domain
25485
+ Reference Dnssec Enable Post
25486
+ type: array
25487
+ description: The zone is signed, but the registry has not accepted the DS
25488
+ record yet because it could not see the new key material on the public
25489
+ nameservers. A background job resubmits it with backoff, so the response
25490
+ carries no records. Until it succeeds the zone resolves as unsigned; if
25491
+ the job gives up, DNSSEC is switched back off and a domain modification
25492
+ failure event carries the registry's diagnostic.
25366
25493
  '404':
25367
25494
  content:
25368
25495
  application/problem+json:
@@ -25379,14 +25506,25 @@ paths:
25379
25506
  '409':
25380
25507
  content:
25381
25508
  application/problem+json:
25382
- example:
25383
- code: ERROR_DOMAIN_DNSSEC_ZONE_RECORDS_UNAVAILABLE
25384
- detail: DNS zone 'example.com.' is DNSSEC-enabled but has no usable
25385
- DS records to publish
25386
- status: 409
25387
- title: DNSSEC Zone Records Unavailable
25388
- type: domain-dnssec-zone-records-unavailable
25389
- zone_name: example.com.
25509
+ examples:
25510
+ DNSSEC Enable Superseded:
25511
+ value:
25512
+ code: ERROR_DOMAIN_DNSSEC_ENABLE_SUPERSEDED
25513
+ detail: DNSSEC was disabled for 'example.com.' while it was being
25514
+ enabled; the DS record was withdrawn and DNSSEC is off
25515
+ status: 409
25516
+ title: DNSSEC Enable Superseded
25517
+ type: domain-dnssec-enable-superseded
25518
+ zone_name: example.com.
25519
+ DNSSEC Zone Records Unavailable:
25520
+ value:
25521
+ code: ERROR_DOMAIN_DNSSEC_ZONE_RECORDS_UNAVAILABLE
25522
+ detail: DNS zone 'example.com.' is DNSSEC-enabled but has no usable
25523
+ DS records to publish
25524
+ status: 409
25525
+ title: DNSSEC Zone Records Unavailable
25526
+ type: domain-dnssec-zone-records-unavailable
25527
+ zone_name: example.com.
25390
25528
  schema:
25391
25529
  $ref: '#/components/schemas/Problem'
25392
25530
  description: Conflict
package/src/schema.d.ts CHANGED
@@ -4752,6 +4752,7 @@ export interface components {
4752
4752
  changes: components["schemas"]["DnsChangeResponse"][];
4753
4753
  /** Changeset Id */
4754
4754
  changeset_id: string | null;
4755
+ dnssec_registry_publish?: components["schemas"]["DnssecRegistryPublishOutcome"] | null;
4755
4756
  /** Num Changes */
4756
4757
  num_changes: number;
4757
4758
  /** Zone Name */
@@ -5431,6 +5432,26 @@ export interface components {
5431
5432
  * @enum {string}
5432
5433
  */
5433
5434
  DnssecRecordType: "ds_data" | "key_data";
5435
+ /**
5436
+ * DnssecRegistryPublishOutcome
5437
+ * @description Fate of the DS/DNSKEY submission that follows signing a zone.
5438
+ *
5439
+ * DEFERRED means the zone is signed but the parent holds no DS yet: the registry
5440
+ * rejected the submission because the public nameservers had not served the new key
5441
+ * material yet, and a background job is retrying. A signed zone with no DS at the
5442
+ * parent resolves as unsigned, so the intermediate state is safe.
5443
+ *
5444
+ * WITHDRAWN means the zone stopped being signed while the DS was in flight, so the DS
5445
+ * was taken back off the parent: the enablement did not take effect. It is kept apart
5446
+ * from SKIPPED because SKIPPED also covers "there was nothing to submit", and a caller
5447
+ * must not render an enablement that was undone as a success.
5448
+ *
5449
+ * FAILED means the zone is signed and nothing is working towards a DS. Only the zone
5450
+ * create path can report it, because that is the one caller that cannot propagate the
5451
+ * error. Null means the response makes no statement about a registry DS submission.
5452
+ * @enum {string}
5453
+ */
5454
+ DnssecRegistryPublishOutcome: "published" | "deferred" | "skipped" | "withdrawn" | "failed";
5434
5455
  /**
5435
5456
  * DnssecStatus
5436
5457
  * @enum {string}
@@ -11325,7 +11346,7 @@ export interface components {
11325
11346
  * StatusTagType
11326
11347
  * @enum {string}
11327
11348
  */
11328
- StatusTagType: "VERIFICATION_REQUIRED" | "CREATE_REQUESTED" | "INBOUND_TRANSFER_PENDING" | "OUTBOUND_TRANSFER_PENDING" | "EXTERNAL";
11349
+ StatusTagType: "VERIFICATION_REQUIRED" | "CREATE_REQUESTED" | "INBOUND_TRANSFER_PENDING" | "OUTBOUND_TRANSFER_PENDING" | "EXTERNAL" | "IMPORT_REQUESTED" | "IMPORT_PENDING";
11329
11350
  /** @example 12.50 */
11330
11351
  StrictMoneyDecimal: string;
11331
11352
  /** Support */
@@ -16787,6 +16808,15 @@ export interface operations {
16787
16808
  "application/json": components["schemas"]["DnsChangesResponse"];
16788
16809
  };
16789
16810
  };
16811
+ /** @description The zone is signed, but the registry has not accepted the DS record yet because it could not see the new key material on the public nameservers. A background job resubmits it with backoff. Until it succeeds the zone resolves as unsigned; if the job gives up, DNSSEC is switched back off and a domain modification failure event carries the registry's diagnostic. */
16812
+ 202: {
16813
+ headers: {
16814
+ [name: string]: unknown;
16815
+ };
16816
+ content: {
16817
+ "application/json": unknown;
16818
+ };
16819
+ };
16790
16820
  /** @description Bad Request */
16791
16821
  400: {
16792
16822
  headers: {
@@ -16809,14 +16839,6 @@ export interface operations {
16809
16839
  [name: string]: unknown;
16810
16840
  };
16811
16841
  content: {
16812
- /** @example {
16813
- * "code": "ERROR_DOMAIN_DNSSEC_ZONE_RECORDS_UNAVAILABLE",
16814
- * "detail": "DNS zone 'example.com.' is DNSSEC-enabled but has no usable DS records to publish",
16815
- * "status": 409,
16816
- * "title": "DNSSEC Zone Records Unavailable",
16817
- * "type": "domain-dnssec-zone-records-unavailable",
16818
- * "zone_name": "example.com."
16819
- * } */
16820
16842
  "application/problem+json": components["schemas"]["Problem"];
16821
16843
  };
16822
16844
  };
@@ -20893,6 +20915,15 @@ export interface operations {
20893
20915
  "application/json": components["schemas"]["DomainDnssecDataResponse"][];
20894
20916
  };
20895
20917
  };
20918
+ /** @description The zone is signed, but the registry has not accepted the DS record yet because it could not see the new key material on the public nameservers. A background job resubmits it with backoff, so the response carries no records. Until it succeeds the zone resolves as unsigned; if the job gives up, DNSSEC is switched back off and a domain modification failure event carries the registry's diagnostic. */
20919
+ 202: {
20920
+ headers: {
20921
+ [name: string]: unknown;
20922
+ };
20923
+ content: {
20924
+ "application/json": components["schemas"]["DomainDnssecDataResponse"][];
20925
+ };
20926
+ };
20896
20927
  /** @description Not Found */
20897
20928
  404: {
20898
20929
  headers: {
@@ -20916,14 +20947,6 @@ export interface operations {
20916
20947
  [name: string]: unknown;
20917
20948
  };
20918
20949
  content: {
20919
- /** @example {
20920
- * "code": "ERROR_DOMAIN_DNSSEC_ZONE_RECORDS_UNAVAILABLE",
20921
- * "detail": "DNS zone 'example.com.' is DNSSEC-enabled but has no usable DS records to publish",
20922
- * "status": 409,
20923
- * "title": "DNSSEC Zone Records Unavailable",
20924
- * "type": "domain-dnssec-zone-records-unavailable",
20925
- * "zone_name": "example.com."
20926
- * } */
20927
20950
  "application/problem+json": components["schemas"]["Problem"];
20928
20951
  };
20929
20952
  };