@opusdns/api 1.25.0 → 1.26.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.2.0"
4
4
  },
5
5
  "name": "@opusdns/api",
6
- "version": "1.25.0",
6
+ "version": "1.26.0",
7
7
  "description": "TypeScript types for the OpusDNS OpenAPI specification",
8
8
  "main": "./src/index.ts",
9
9
  "module": "./src/index.ts",
@@ -52,9 +52,11 @@ import type {
52
52
  DnsChanges,
53
53
  DnsConfigurationBase,
54
54
  DnsRecordCreate,
55
+ DnsRecordDTO,
55
56
  DnsRecordPatchOp,
56
57
  DnsRecord,
57
58
  DnsRrsetCreate,
59
+ DnsRrsetDTO,
58
60
  DnsRrsetPatch,
59
61
  DnsRrsetPatchOp,
60
62
  DnsRrset,
@@ -68,6 +70,7 @@ import type {
68
70
  DnsZoneCreatePayloadData,
69
71
  DnsZoneCreateWorkerPayload,
70
72
  DnsZoneCreateWorkerResult,
73
+ DnsZoneDTO,
71
74
  DnsZonePatchRecordsBulkCommand,
72
75
  DnsZonePatchRecordsBulkInstance,
73
76
  DnsZonePatchRecordsBulkPayload,
@@ -88,6 +91,7 @@ import type {
88
91
  DnsZoneUpdateCommand,
89
92
  DnsZoneUpdatePayloadData,
90
93
  DnsZoneUpdateWorkerPayload,
94
+ DnsZoneVanitySetUpdateRes,
91
95
  DomainAvailability,
92
96
  DomainAvailabilityMeta,
93
97
  DomainAvailabilityRequest,
@@ -355,6 +359,7 @@ import type {
355
359
  Verification,
356
360
  VisitsByKeyBucket,
357
361
  WhoisBase,
362
+ ZoneVanitySetUpdate,
358
363
  RequestAuthcode,
359
364
  RequestAuthcode2,
360
365
  DomainAvailabilityList,
@@ -1159,6 +1164,12 @@ export const KEYS_DNS_RECORD_CREATE = [
1159
1164
  KEY_DNS_RECORD_CREATE_RDATA,
1160
1165
  ] as const satisfies (keyof DnsRecordCreate)[];
1161
1166
 
1167
+ export const KEY_DNS_RECORD_DTO_RDATA = 'rdata' satisfies keyof DnsRecordDTO;
1168
+
1169
+ export const KEYS_DNS_RECORD_DTO = [
1170
+ KEY_DNS_RECORD_DTO_RDATA,
1171
+ ] as const satisfies (keyof DnsRecordDTO)[];
1172
+
1162
1173
  export const KEY_DNS_RECORD_PATCH_OP_OP = 'op' satisfies keyof DnsRecordPatchOp;
1163
1174
  export const KEY_DNS_RECORD_PATCH_OP_RECORD = 'record' satisfies keyof DnsRecordPatchOp;
1164
1175
 
@@ -1189,6 +1200,18 @@ export const KEYS_DNS_RRSET_CREATE = [
1189
1200
  KEY_DNS_RRSET_CREATE_TYPE,
1190
1201
  ] as const satisfies (keyof DnsRrsetCreate)[];
1191
1202
 
1203
+ export const KEY_DNS_RRSET_DTO_NAME = 'name' satisfies keyof DnsRrsetDTO;
1204
+ export const KEY_DNS_RRSET_DTO_RECORDS = 'records' satisfies keyof DnsRrsetDTO;
1205
+ export const KEY_DNS_RRSET_DTO_TTL = 'ttl' satisfies keyof DnsRrsetDTO;
1206
+ export const KEY_DNS_RRSET_DTO_TYPE = 'type' satisfies keyof DnsRrsetDTO;
1207
+
1208
+ export const KEYS_DNS_RRSET_DTO = [
1209
+ KEY_DNS_RRSET_DTO_NAME,
1210
+ KEY_DNS_RRSET_DTO_RECORDS,
1211
+ KEY_DNS_RRSET_DTO_TTL,
1212
+ KEY_DNS_RRSET_DTO_TYPE,
1213
+ ] as const satisfies (keyof DnsRrsetDTO)[];
1214
+
1192
1215
  export const KEY_DNS_RRSET_PATCH_NAME = 'name' satisfies keyof DnsRrsetPatch;
1193
1216
  export const KEY_DNS_RRSET_PATCH_RECORDS = 'records' satisfies keyof DnsRrsetPatch;
1194
1217
  export const KEY_DNS_RRSET_PATCH_TTL = 'ttl' satisfies keyof DnsRrsetPatch;
@@ -1329,6 +1352,22 @@ export const KEYS_DNS_ZONE_CREATE_WORKER_RESULT = [
1329
1352
  KEY_DNS_ZONE_CREATE_WORKER_RESULT_ZONE_NAME,
1330
1353
  ] as const satisfies (keyof DnsZoneCreateWorkerResult)[];
1331
1354
 
1355
+ export const KEY_DNS_ZONE_DTO_CREATED_ON = 'created_on' satisfies keyof DnsZoneDTO;
1356
+ export const KEY_DNS_ZONE_DTO_DNSSEC_STATUS = 'dnssec_status' satisfies keyof DnsZoneDTO;
1357
+ export const KEY_DNS_ZONE_DTO_NAME = 'name' satisfies keyof DnsZoneDTO;
1358
+ export const KEY_DNS_ZONE_DTO_RRSETS = 'rrsets' satisfies keyof DnsZoneDTO;
1359
+ export const KEY_DNS_ZONE_DTO_UPDATED_ON = 'updated_on' satisfies keyof DnsZoneDTO;
1360
+ export const KEY_DNS_ZONE_DTO_VANITY_NAMESERVER_SET_ID = 'vanity_nameserver_set_id' satisfies keyof DnsZoneDTO;
1361
+
1362
+ export const KEYS_DNS_ZONE_DTO = [
1363
+ KEY_DNS_ZONE_DTO_CREATED_ON,
1364
+ KEY_DNS_ZONE_DTO_DNSSEC_STATUS,
1365
+ KEY_DNS_ZONE_DTO_NAME,
1366
+ KEY_DNS_ZONE_DTO_RRSETS,
1367
+ KEY_DNS_ZONE_DTO_UPDATED_ON,
1368
+ KEY_DNS_ZONE_DTO_VANITY_NAMESERVER_SET_ID,
1369
+ ] as const satisfies (keyof DnsZoneDTO)[];
1370
+
1332
1371
  export const KEY_DNS_ZONE_PATCH_RECORDS_BULK_COMMAND_COMMAND = 'command' satisfies keyof DnsZonePatchRecordsBulkCommand;
1333
1372
  export const KEY_DNS_ZONE_PATCH_RECORDS_BULK_COMMAND_IDEMPOTENCY_KEY = 'idempotency_key' satisfies keyof DnsZonePatchRecordsBulkCommand;
1334
1373
  export const KEY_DNS_ZONE_PATCH_RECORDS_BULK_COMMAND_PAYLOAD = 'payload' satisfies keyof DnsZonePatchRecordsBulkCommand;
@@ -1521,6 +1560,12 @@ export const KEYS_DNS_ZONE_UPDATE_WORKER_PAYLOAD = [
1521
1560
  KEY_DNS_ZONE_UPDATE_WORKER_PAYLOAD_ZONE,
1522
1561
  ] as const satisfies (keyof DnsZoneUpdateWorkerPayload)[];
1523
1562
 
1563
+ export const KEY_DNS_ZONE_VANITY_SET_UPDATE_RES_ZONE = 'zone' satisfies keyof DnsZoneVanitySetUpdateRes;
1564
+
1565
+ export const KEYS_DNS_ZONE_VANITY_SET_UPDATE_RES = [
1566
+ KEY_DNS_ZONE_VANITY_SET_UPDATE_RES_ZONE,
1567
+ ] as const satisfies (keyof DnsZoneVanitySetUpdateRes)[];
1568
+
1524
1569
  export const KEY_DOMAIN_AVAILABILITY_DOMAIN = 'domain' satisfies keyof DomainAvailability;
1525
1570
  export const KEY_DOMAIN_AVAILABILITY_STATUS = 'status' satisfies keyof DomainAvailability;
1526
1571
 
@@ -4889,6 +4934,12 @@ export const KEYS_WHOIS_BASE = [
4889
4934
  KEY_WHOIS_BASE_WHOIS_SERVER,
4890
4935
  ] as const satisfies (keyof WhoisBase)[];
4891
4936
 
4937
+ export const KEY_ZONE_VANITY_SET_UPDATE_VANITY_NAMESERVER_SET_ID = 'vanity_nameserver_set_id' satisfies keyof ZoneVanitySetUpdate;
4938
+
4939
+ export const KEYS_ZONE_VANITY_SET_UPDATE = [
4940
+ KEY_ZONE_VANITY_SET_UPDATE_VANITY_NAMESERVER_SET_ID,
4941
+ ] as const satisfies (keyof ZoneVanitySetUpdate)[];
4942
+
4892
4943
  export const KEY_REQUEST_AUTHCODE_DETAIL = 'detail' satisfies keyof RequestAuthcode;
4893
4944
  export const KEY_REQUEST_AUTHCODE_NAME = 'name' satisfies keyof RequestAuthcode;
4894
4945
  export const KEY_REQUEST_AUTHCODE_SUCCESS = 'success' satisfies keyof RequestAuthcode;
@@ -51,6 +51,7 @@ import type {
51
51
  TagUpdate,
52
52
  UserCreate,
53
53
  UserUpdate,
54
+ ZoneVanitySetUpdate,
54
55
  } from './schemas';
55
56
 
56
57
  export type GET_AiConciergeContextsByContextId_Request = {
@@ -353,6 +354,13 @@ export type PUT_DnsByZoneNameRrsets_Request = {
353
354
  export type PUT_DnsByZoneNameRrsets_Request_Path = PUT_DnsByZoneNameRrsets_Request['parameters']['path'];
354
355
  export type PUT_DnsByZoneNameRrsets_Request_Body = PUT_DnsByZoneNameRrsets_Request['requestBody'];
355
356
 
357
+ export type PATCH_DnsByZoneNameVanitySet_Request = {
358
+ parameters: operations['update_zone_vanity_set_v1_dns__zone_name__vanity_set_patch']['parameters'];
359
+ requestBody: ZoneVanitySetUpdate;
360
+ };
361
+ export type PATCH_DnsByZoneNameVanitySet_Request_Path = PATCH_DnsByZoneNameVanitySet_Request['parameters']['path'];
362
+ export type PATCH_DnsByZoneNameVanitySet_Request_Body = PATCH_DnsByZoneNameVanitySet_Request['requestBody'];
363
+
356
364
  export type GET_DnsDomainForwards_Request = {
357
365
  parameters: operations['list_domain_forwards_by_zone_v1_dns_domain_forwards_get']['parameters'];
358
366
  };
@@ -15,6 +15,7 @@ import type {
15
15
  DnsChanges,
16
16
  DnsZone,
17
17
  DnsZoneSummary,
18
+ DnsZoneVanitySetUpdateRes,
18
19
  Domain,
19
20
  DomainAvailabilityList,
20
21
  DomainCheck,
@@ -832,6 +833,12 @@ export type PATCH_DnsByZoneNameRrsets_Response = PATCH_DnsByZoneNameRrsets_Respo
832
833
  export type PATCH_DnsByZoneNameRrsets_Response_400 = Problem;
833
834
  export type PATCH_DnsByZoneNameRrsets_Response_422 = HTTPValidationError;
834
835
 
836
+ export type PATCH_DnsByZoneNameVanitySet_Response = PATCH_DnsByZoneNameVanitySet_Response_200 | PATCH_DnsByZoneNameVanitySet_Response_400 | PATCH_DnsByZoneNameVanitySet_Response_422;
837
+
838
+ export type PATCH_DnsByZoneNameVanitySet_Response_200 = DnsZoneVanitySetUpdateRes;
839
+ export type PATCH_DnsByZoneNameVanitySet_Response_400 = Problem;
840
+ export type PATCH_DnsByZoneNameVanitySet_Response_422 = HTTPValidationError;
841
+
835
842
  export type PATCH_DomainForwards_Response = PATCH_DomainForwards_Response_401 | PATCH_DomainForwards_Response_403 | PATCH_DomainForwards_Response_404 | PATCH_DomainForwards_Response_422;
836
843
 
837
844
  export type PATCH_DomainForwards_Response_401 = Problem;
@@ -78,9 +78,11 @@ export type DnsChanges = components['schemas']['DnsChangesResponse'];
78
78
  export type DnsConfigurationBase = components['schemas']['DnsConfigurationBase'];
79
79
  export type DnsProtectedReason = components['schemas']['DnsProtectedReason'];
80
80
  export type DnsRecordCreate = components['schemas']['DnsRecordCreate'];
81
+ export type DnsRecordDTO = components['schemas']['DnsRecordDTO'];
81
82
  export type DnsRecordPatchOp = components['schemas']['DnsRecordPatchOp'];
82
83
  export type DnsRecord = components['schemas']['DnsRecordResponse'];
83
84
  export type DnsRrsetCreate = components['schemas']['DnsRrsetCreate'];
85
+ export type DnsRrsetDTO = components['schemas']['DnsRrsetDTO'];
84
86
  export type DnsRrsetPatch = components['schemas']['DnsRrsetPatch'];
85
87
  export type DnsRrsetPatchOp = components['schemas']['DnsRrsetPatchOp'];
86
88
  export type DnsRrset = components['schemas']['DnsRrsetResponse'];
@@ -95,6 +97,7 @@ export type DnsZoneCreateCommand = components['schemas']['DnsZoneCreateCommand']
95
97
  export type DnsZoneCreatePayloadData = components['schemas']['DnsZoneCreatePayloadData'];
96
98
  export type DnsZoneCreateWorkerPayload = components['schemas']['DnsZoneCreateWorkerPayload'];
97
99
  export type DnsZoneCreateWorkerResult = components['schemas']['DnsZoneCreateWorkerResult'];
100
+ export type DnsZoneDTO = components['schemas']['DnsZoneDTO'];
98
101
  export type DnsZonePatchRecordsBulkCommand = components['schemas']['DnsZonePatchRecordsBulkCommand'];
99
102
  export type DnsZonePatchRecordsBulkInstance = components['schemas']['DnsZonePatchRecordsBulkInstance'];
100
103
  export type DnsZonePatchRecordsBulkPayload = components['schemas']['DnsZonePatchRecordsBulkPayload'];
@@ -115,6 +118,7 @@ export type DnsZoneUpdateBulkTemplate = components['schemas']['DnsZoneUpdateBulk
115
118
  export type DnsZoneUpdateCommand = components['schemas']['DnsZoneUpdateCommand'];
116
119
  export type DnsZoneUpdatePayloadData = components['schemas']['DnsZoneUpdatePayloadData'];
117
120
  export type DnsZoneUpdateWorkerPayload = components['schemas']['DnsZoneUpdateWorkerPayload'];
121
+ export type DnsZoneVanitySetUpdateRes = components['schemas']['DnsZoneVanitySetUpdateRes'];
118
122
  export type DnssecAlgorithm = components['schemas']['DnssecAlgorithm'];
119
123
  export type DnssecDigestType = components['schemas']['DnssecDigestType'];
120
124
  export type DnssecModeType = components['schemas']['DnssecModeType'];
@@ -492,6 +496,7 @@ export type VisitsByKeyBucket = components['schemas']['VisitsByKeyBucket'];
492
496
  export type WhoisBase = components['schemas']['WhoisBase'];
493
497
  export type ZoneIncludeField = components['schemas']['ZoneIncludeField'];
494
498
  export type ZoneSortField = components['schemas']['ZoneSortField'];
499
+ export type ZoneVanitySetUpdate = components['schemas']['ZoneVanitySetUpdate'];
495
500
  export type RequestAuthcode = components['schemas']['api__domain__tld_specific__be__models__RequestAuthcodeResponse'];
496
501
  export type RequestAuthcode2 = components['schemas']['api__domain__tld_specific__eu__models__RequestAuthcodeResponse'];
497
502
  export type DomainAvailabilityList = components['schemas']['common__models__availability__datasource__DomainAvailabilityResponse'];
package/src/openapi.yaml CHANGED
@@ -2368,6 +2368,16 @@ components:
2368
2368
  - rdata
2369
2369
  title: DnsRecordCreate
2370
2370
  type: object
2371
+ DnsRecordDTO:
2372
+ properties:
2373
+ rdata:
2374
+ description: The record data (e.g., IP address, domain name)
2375
+ title: Rdata
2376
+ type: string
2377
+ required:
2378
+ - rdata
2379
+ title: DnsRecordDTO
2380
+ type: object
2371
2381
  DnsRecordPatchOp:
2372
2382
  properties:
2373
2383
  op:
@@ -2420,6 +2430,31 @@ components:
2420
2430
  - records
2421
2431
  title: DnsRrsetCreate
2422
2432
  type: object
2433
+ DnsRrsetDTO:
2434
+ properties:
2435
+ name:
2436
+ description: The RRset name (e.g., '@', 'www')
2437
+ title: Name
2438
+ type: string
2439
+ records:
2440
+ description: List of records in this RRset
2441
+ items:
2442
+ $ref: '#/components/schemas/DnsRecordDTO'
2443
+ title: Records
2444
+ type: array
2445
+ ttl:
2446
+ description: Time to live in seconds
2447
+ title: Ttl
2448
+ type: integer
2449
+ type:
2450
+ $ref: '#/components/schemas/DnsRrsetType'
2451
+ description: The RRset type
2452
+ required:
2453
+ - name
2454
+ - type
2455
+ - ttl
2456
+ title: DnsRrsetDTO
2457
+ type: object
2423
2458
  DnsRrsetPatch:
2424
2459
  properties:
2425
2460
  name:
@@ -2729,6 +2764,52 @@ components:
2729
2764
  - zone_name
2730
2765
  title: DnsZoneCreateWorkerResult
2731
2766
  type: object
2767
+ DnsZoneDTO:
2768
+ properties:
2769
+ created_on:
2770
+ anyOf:
2771
+ - format: date-time
2772
+ type: string
2773
+ - type: 'null'
2774
+ description: Zone creation timestamp
2775
+ title: Created On
2776
+ dnssec_status:
2777
+ $ref: '#/components/schemas/DnssecStatus'
2778
+ default: disabled
2779
+ description: DNSSEC status
2780
+ name:
2781
+ description: The zone name (e.g., 'example.com')
2782
+ title: Name
2783
+ type: string
2784
+ rrsets:
2785
+ description: List of RRsets in the zone
2786
+ items:
2787
+ $ref: '#/components/schemas/DnsRrsetDTO'
2788
+ title: Rrsets
2789
+ type: array
2790
+ updated_on:
2791
+ anyOf:
2792
+ - format: date-time
2793
+ type: string
2794
+ - type: 'null'
2795
+ description: Zone last update timestamp
2796
+ title: Updated On
2797
+ vanity_nameserver_set_id:
2798
+ anyOf:
2799
+ - examples:
2800
+ - vns_01h45ytscbebyvny4gc8cr8ma2
2801
+ format: typeid
2802
+ pattern: ^vns_[0-7][0-9a-hjkmnpq-tv-z]{25}$
2803
+ type: string
2804
+ x-typeid-prefix: vns
2805
+ - type: 'null'
2806
+ description: Vanity NS set branding this zone's apex, or null for system
2807
+ default NS
2808
+ title: Vanity Nameserver Set Id
2809
+ required:
2810
+ - name
2811
+ title: DnsZoneDTO
2812
+ type: object
2732
2813
  DnsZonePatchRecordsBulkCommand:
2733
2814
  properties:
2734
2815
  command:
@@ -3146,6 +3227,15 @@ components:
3146
3227
  - zone
3147
3228
  title: DnsZoneUpdateWorkerPayload
3148
3229
  type: object
3230
+ DnsZoneVanitySetUpdateRes:
3231
+ properties:
3232
+ zone:
3233
+ $ref: '#/components/schemas/DnsZoneDTO'
3234
+ description: The zone after restamping
3235
+ required:
3236
+ - zone
3237
+ title: DnsZoneVanitySetUpdateRes
3238
+ type: object
3149
3239
  DnssecAlgorithm:
3150
3240
  enum:
3151
3241
  - 1
@@ -12545,6 +12635,23 @@ components:
12545
12635
  - dnssec_status
12546
12636
  title: ZoneSortField
12547
12637
  type: string
12638
+ ZoneVanitySetUpdate:
12639
+ description: Public request body for assigning/clearing a zone's vanity NS branding.
12640
+ properties:
12641
+ vanity_nameserver_set_id:
12642
+ anyOf:
12643
+ - examples:
12644
+ - vns_01h45ytscbebyvny4gc8cr8ma2
12645
+ format: typeid
12646
+ pattern: ^vns_[0-7][0-9a-hjkmnpq-tv-z]{25}$
12647
+ type: string
12648
+ x-typeid-prefix: vns
12649
+ - type: 'null'
12650
+ description: Vanity NS set to brand the zone's apex NS + SOA with, or null
12651
+ to unassign and restamp the apex back to OpusDNS system defaults.
12652
+ title: Vanity Nameserver Set Id
12653
+ title: ZoneVanitySetUpdate
12654
+ type: object
12548
12655
  api__domain__tld_specific__be__models__RequestAuthcodeResponse:
12549
12656
  properties:
12550
12657
  detail:
@@ -12735,7 +12842,7 @@ info:
12735
12842
  \n\n"
12736
12843
  summary: OpusDNS - your gateway to a seamless domain management experience.
12737
12844
  title: OpusDNS API
12738
- version: 2026-06-22-103725
12845
+ version: 2026-06-22-123800
12739
12846
  x-logo:
12740
12847
  altText: OpusDNS API Reference
12741
12848
  url: https://d24lr4zqs1tgqh.cloudfront.net/c9505a20-5ae1-406c-b060-d392569caebf.jpg
@@ -17563,6 +17670,58 @@ paths:
17563
17670
  - dns
17564
17671
  x-required-permissions:
17565
17672
  - dns:manage
17673
+ /v1/dns/{zone_name}/vanity-set:
17674
+ patch:
17675
+ operationId: update_zone_vanity_set_v1_dns__zone_name__vanity_set_patch
17676
+ parameters:
17677
+ - description: DNS zone name (trailing dot optional)
17678
+ in: path
17679
+ name: zone_name
17680
+ required: true
17681
+ schema:
17682
+ description: DNS zone name (trailing dot optional)
17683
+ title: Zone Name
17684
+ type: string
17685
+ requestBody:
17686
+ content:
17687
+ application/json:
17688
+ schema:
17689
+ $ref: '#/components/schemas/ZoneVanitySetUpdate'
17690
+ required: true
17691
+ responses:
17692
+ '200':
17693
+ content:
17694
+ application/json:
17695
+ schema:
17696
+ $ref: '#/components/schemas/DnsZoneVanitySetUpdateRes'
17697
+ description: Successful Response
17698
+ '400':
17699
+ content:
17700
+ application/problem+json:
17701
+ example:
17702
+ code: ERROR_DNS
17703
+ detail: Additional error context.
17704
+ status: 400
17705
+ title: DNS Error
17706
+ type: dns
17707
+ schema:
17708
+ $ref: '#/components/schemas/Problem'
17709
+ description: Bad Request
17710
+ '422':
17711
+ content:
17712
+ application/problem+json:
17713
+ schema:
17714
+ $ref: '#/components/schemas/HTTPValidationError'
17715
+ description: Validation Error
17716
+ security:
17717
+ - OAuth2PasswordBearer: []
17718
+ - APIKeyHeader: []
17719
+ summary: Assign or clear a zone's vanity nameserver set
17720
+ tags:
17721
+ - dns
17722
+ x-required-permissions:
17723
+ - dns:manage
17724
+ - vanity_ns:manage
17566
17725
  /v1/domain-forwards:
17567
17726
  get:
17568
17727
  description: Retrieves a paginated list of domain forwards by hostname for the
package/src/schema.d.ts CHANGED
@@ -733,6 +733,23 @@ export interface paths {
733
733
  patch: operations["patch_zone_rrsets_v1_dns__zone_name__rrsets_patch"];
734
734
  trace?: never;
735
735
  };
736
+ "/v1/dns/{zone_name}/vanity-set": {
737
+ parameters: {
738
+ query?: never;
739
+ header?: never;
740
+ path?: never;
741
+ cookie?: never;
742
+ };
743
+ get?: never;
744
+ put?: never;
745
+ post?: never;
746
+ delete?: never;
747
+ options?: never;
748
+ head?: never;
749
+ /** Assign or clear a zone's vanity nameserver set */
750
+ patch: operations["update_zone_vanity_set_v1_dns__zone_name__vanity_set_patch"];
751
+ trace?: never;
752
+ };
736
753
  "/v1/domain-forwards": {
737
754
  parameters: {
738
755
  query?: never;
@@ -4223,6 +4240,14 @@ export interface components {
4223
4240
  /** Rdata */
4224
4241
  rdata: string;
4225
4242
  };
4243
+ /** DnsRecordDTO */
4244
+ DnsRecordDTO: {
4245
+ /**
4246
+ * Rdata
4247
+ * @description The record data (e.g., IP address, domain name)
4248
+ */
4249
+ rdata: string;
4250
+ };
4226
4251
  /** DnsRecordPatchOp */
4227
4252
  DnsRecordPatchOp: {
4228
4253
  op: components["schemas"]["PatchOp"];
@@ -4251,6 +4276,26 @@ export interface components {
4251
4276
  ttl: number;
4252
4277
  type: components["schemas"]["DnsRrsetType"];
4253
4278
  };
4279
+ /** DnsRrsetDTO */
4280
+ DnsRrsetDTO: {
4281
+ /**
4282
+ * Name
4283
+ * @description The RRset name (e.g., '@', 'www')
4284
+ */
4285
+ name: string;
4286
+ /**
4287
+ * Records
4288
+ * @description List of records in this RRset
4289
+ */
4290
+ records?: components["schemas"]["DnsRecordDTO"][];
4291
+ /**
4292
+ * Ttl
4293
+ * @description Time to live in seconds
4294
+ */
4295
+ ttl: number;
4296
+ /** @description The RRset type */
4297
+ type: components["schemas"]["DnsRrsetType"];
4298
+ };
4254
4299
  /** DnsRrsetPatch */
4255
4300
  DnsRrsetPatch: {
4256
4301
  /** Name */
@@ -4428,6 +4473,39 @@ export interface components {
4428
4473
  /** Zone Name */
4429
4474
  zone_name: string;
4430
4475
  };
4476
+ /** DnsZoneDTO */
4477
+ DnsZoneDTO: {
4478
+ /**
4479
+ * Created On
4480
+ * @description Zone creation timestamp
4481
+ */
4482
+ created_on?: Date | null;
4483
+ /**
4484
+ * @description DNSSEC status
4485
+ * @default disabled
4486
+ */
4487
+ dnssec_status: components["schemas"]["DnssecStatus"];
4488
+ /**
4489
+ * Name
4490
+ * @description The zone name (e.g., 'example.com')
4491
+ */
4492
+ name: string;
4493
+ /**
4494
+ * Rrsets
4495
+ * @description List of RRsets in the zone
4496
+ */
4497
+ rrsets?: components["schemas"]["DnsRrsetDTO"][];
4498
+ /**
4499
+ * Updated On
4500
+ * @description Zone last update timestamp
4501
+ */
4502
+ updated_on?: Date | null;
4503
+ /**
4504
+ * Vanity Nameserver Set Id
4505
+ * @description Vanity NS set branding this zone's apex, or null for system default NS
4506
+ */
4507
+ vanity_nameserver_set_id?: TypeId<"vns"> | null;
4508
+ };
4431
4509
  /** DnsZonePatchRecordsBulkCommand */
4432
4510
  DnsZonePatchRecordsBulkCommand: {
4433
4511
  /**
@@ -4692,6 +4770,11 @@ export interface components {
4692
4770
  type: "dns_zone_update" | "dns_zone_update_bulk";
4693
4771
  zone: components["schemas"]["DnsZoneUpdatePayloadData"];
4694
4772
  };
4773
+ /** DnsZoneVanitySetUpdateRes */
4774
+ DnsZoneVanitySetUpdateRes: {
4775
+ /** @description The zone after restamping */
4776
+ zone: components["schemas"]["DnsZoneDTO"];
4777
+ };
4695
4778
  /**
4696
4779
  * DnssecAlgorithm
4697
4780
  * @enum {integer}
@@ -10971,6 +11054,17 @@ export interface components {
10971
11054
  * @enum {string}
10972
11055
  */
10973
11056
  ZoneSortField: "name" | "created_on" | "updated_on" | "dnssec_status";
11057
+ /**
11058
+ * ZoneVanitySetUpdate
11059
+ * @description Public request body for assigning/clearing a zone's vanity NS branding.
11060
+ */
11061
+ ZoneVanitySetUpdate: {
11062
+ /**
11063
+ * Vanity Nameserver Set Id
11064
+ * @description Vanity NS set to brand the zone's apex NS + SOA with, or null to unassign and restamp the apex back to OpusDNS system defaults.
11065
+ */
11066
+ vanity_nameserver_set_id?: TypeId<"vns"> | null;
11067
+ };
10974
11068
  /** RequestAuthcodeResponse */
10975
11069
  api__domain__tld_specific__be__models__RequestAuthcodeResponse: {
10976
11070
  /**
@@ -14579,6 +14673,58 @@ export interface operations {
14579
14673
  };
14580
14674
  };
14581
14675
  };
14676
+ update_zone_vanity_set_v1_dns__zone_name__vanity_set_patch: {
14677
+ parameters: {
14678
+ query?: never;
14679
+ header?: never;
14680
+ path: {
14681
+ /** @description DNS zone name (trailing dot optional) */
14682
+ zone_name: string;
14683
+ };
14684
+ cookie?: never;
14685
+ };
14686
+ requestBody: {
14687
+ content: {
14688
+ "application/json": components["schemas"]["ZoneVanitySetUpdate"];
14689
+ };
14690
+ };
14691
+ responses: {
14692
+ /** @description Successful Response */
14693
+ 200: {
14694
+ headers: {
14695
+ [name: string]: unknown;
14696
+ };
14697
+ content: {
14698
+ "application/json": components["schemas"]["DnsZoneVanitySetUpdateRes"];
14699
+ };
14700
+ };
14701
+ /** @description Bad Request */
14702
+ 400: {
14703
+ headers: {
14704
+ [name: string]: unknown;
14705
+ };
14706
+ content: {
14707
+ /** @example {
14708
+ * "code": "ERROR_DNS",
14709
+ * "detail": "Additional error context.",
14710
+ * "status": 400,
14711
+ * "title": "DNS Error",
14712
+ * "type": "dns"
14713
+ * } */
14714
+ "application/problem+json": components["schemas"]["Problem"];
14715
+ };
14716
+ };
14717
+ /** @description Validation Error */
14718
+ 422: {
14719
+ headers: {
14720
+ [name: string]: unknown;
14721
+ };
14722
+ content: {
14723
+ "application/problem+json": components["schemas"]["HTTPValidationError"];
14724
+ };
14725
+ };
14726
+ };
14727
+ };
14582
14728
  list_domain_forwards_v1_domain_forwards_get: {
14583
14729
  parameters: {
14584
14730
  query?: {