@opusdns/api 0.28.0 → 0.30.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/src/openapi.yaml CHANGED
@@ -23,6 +23,24 @@ components:
23
23
  - max
24
24
  title: AllowedNumberOfNameserverBase
25
25
  type: object
26
+ BillingTransactionAction:
27
+ enum:
28
+ - create
29
+ - transfer
30
+ - renew
31
+ - restore
32
+ - trade
33
+ - application
34
+ title: BillingTransactionAction
35
+ type: string
36
+ BillingTransactionProductType:
37
+ enum:
38
+ - domain
39
+ - zone
40
+ - email_forward
41
+ - domain_forward
42
+ title: BillingTransactionProductType
43
+ type: string
26
44
  Body_issue_organization_token_v1_auth_token_post:
27
45
  properties:
28
46
  client_id:
@@ -2085,6 +2103,35 @@ components:
2085
2103
  - start_date
2086
2104
  title: GeneralAvailabilityBase
2087
2105
  type: object
2106
+ GetCurrentAvailablePlansResponse:
2107
+ properties:
2108
+ current_plan:
2109
+ anyOf:
2110
+ - $ref: '#/components/schemas/PlanInfo'
2111
+ - type: 'null'
2112
+ description: Current active plan for the customer
2113
+ plans:
2114
+ description: List of available plans
2115
+ items:
2116
+ $ref: '#/components/schemas/PlanInfo'
2117
+ title: Plans
2118
+ type: array
2119
+ required:
2120
+ - plans
2121
+ title: GetCurrentAvailablePlansResponse
2122
+ type: object
2123
+ GetPricesResponse:
2124
+ properties:
2125
+ prices:
2126
+ description: List of prices
2127
+ items:
2128
+ $ref: '#/components/schemas/PriceInfo'
2129
+ title: Prices
2130
+ type: array
2131
+ required:
2132
+ - prices
2133
+ title: GetPricesResponse
2134
+ type: object
2088
2135
  GrantType:
2089
2136
  enum:
2090
2137
  - client_credentials
@@ -3582,6 +3629,44 @@ components:
3582
3629
  type: array
3583
3630
  title: PermissionSet
3584
3631
  type: object
3632
+ PlanInfo:
3633
+ properties:
3634
+ amount:
3635
+ description: Base price
3636
+ title: Amount
3637
+ type: number
3638
+ currency:
3639
+ description: Currency code
3640
+ title: Currency
3641
+ type: string
3642
+ name:
3643
+ anyOf:
3644
+ - type: string
3645
+ - type: 'null'
3646
+ description: Plan display name
3647
+ title: Name
3648
+ plan_id:
3649
+ description: Unique plan identifier
3650
+ title: Plan Id
3651
+ type: string
3652
+ plan_level:
3653
+ anyOf:
3654
+ - type: string
3655
+ - type: 'null'
3656
+ description: Plan level such as 'premium' or 'starter'
3657
+ title: Plan Level
3658
+ plan_type:
3659
+ anyOf:
3660
+ - type: string
3661
+ - type: 'null'
3662
+ description: Plan type or billing interval
3663
+ title: Plan Type
3664
+ required:
3665
+ - plan_id
3666
+ - currency
3667
+ - amount
3668
+ title: PlanInfo
3669
+ type: object
3585
3670
  PlanRelation:
3586
3671
  enum:
3587
3672
  - basic_plan
@@ -3646,6 +3731,33 @@ components:
3646
3731
  - manual
3647
3732
  title: PremiumSourceType
3648
3733
  type: string
3734
+ PriceInfo:
3735
+ properties:
3736
+ currency:
3737
+ title: Currency
3738
+ type: string
3739
+ price:
3740
+ title: Price
3741
+ type: string
3742
+ product_action:
3743
+ anyOf:
3744
+ - type: string
3745
+ - type: 'null'
3746
+ title: Product Action
3747
+ product_class:
3748
+ anyOf:
3749
+ - type: string
3750
+ - type: 'null'
3751
+ title: Product Class
3752
+ product_type:
3753
+ title: Product Type
3754
+ type: string
3755
+ required:
3756
+ - product_type
3757
+ - price
3758
+ - currency
3759
+ title: PriceInfo
3760
+ type: object
3649
3761
  Problem:
3650
3762
  properties:
3651
3763
  detail:
@@ -4798,7 +4910,7 @@ info:
4798
4910
  '
4799
4911
  summary: OpusDNS - your gateway to a seamless domain management experience.
4800
4912
  title: OpusDNS API
4801
- version: 2025-08-29-171808
4913
+ version: 2025-09-03-232034
4802
4914
  x-logo:
4803
4915
  altText: OpusDNS API Reference
4804
4916
  url: https://d24lr4zqs1tgqh.cloudfront.net/c9505a20-5ae1-406c-b060-d392569caebf.jpg
@@ -7144,6 +7256,102 @@ paths:
7144
7256
  summary: Update DNSSEC data
7145
7257
  tags:
7146
7258
  - domain
7259
+ /v1/domains/{domain_reference}/dnssec/disable:
7260
+ post:
7261
+ operationId: disable_and_unpublish_dnssec_records_v1_domains__domain_reference__dnssec_disable_post
7262
+ parameters:
7263
+ - in: path
7264
+ name: domain_reference
7265
+ required: true
7266
+ schema:
7267
+ anyOf:
7268
+ - examples:
7269
+ - domain_01h45ytscbebyvny4gc8cr8ma2
7270
+ format: typeid
7271
+ pattern: ^domain_[0-7][0-9a-hjkmnpq-tv-z]{25}$
7272
+ type: string
7273
+ x-typeid-prefix: domain
7274
+ - type: string
7275
+ title: Domain Reference
7276
+ responses:
7277
+ '204':
7278
+ description: Successful Response
7279
+ '404':
7280
+ content:
7281
+ application/problem+json:
7282
+ example:
7283
+ code: ERROR_DOMAIN_NOT_FOUND
7284
+ detail: Domain not found
7285
+ domain_name: Additional error context.
7286
+ status: 404
7287
+ title: Domain Management Error
7288
+ type: domain-not-found
7289
+ schema:
7290
+ $ref: '#/components/schemas/Problem'
7291
+ description: Not Found
7292
+ '422':
7293
+ content:
7294
+ application/problem+json:
7295
+ schema:
7296
+ $ref: '#/components/schemas/HTTPValidationError'
7297
+ description: Validation Error
7298
+ security:
7299
+ - OAuth2PasswordBearer: []
7300
+ summary: Disable DNSSEC for domains using our nameservers
7301
+ tags:
7302
+ - domain
7303
+ /v1/domains/{domain_reference}/dnssec/enable:
7304
+ post:
7305
+ operationId: enable_and_publish_dnssec_records_v1_domains__domain_reference__dnssec_enable_post
7306
+ parameters:
7307
+ - in: path
7308
+ name: domain_reference
7309
+ required: true
7310
+ schema:
7311
+ anyOf:
7312
+ - examples:
7313
+ - domain_01h45ytscbebyvny4gc8cr8ma2
7314
+ format: typeid
7315
+ pattern: ^domain_[0-7][0-9a-hjkmnpq-tv-z]{25}$
7316
+ type: string
7317
+ x-typeid-prefix: domain
7318
+ - type: string
7319
+ title: Domain Reference
7320
+ responses:
7321
+ '200':
7322
+ content:
7323
+ application/json:
7324
+ schema:
7325
+ items:
7326
+ $ref: '#/components/schemas/DomainDnssecDataResponse'
7327
+ title: Response Enable And Publish Dnssec Records V1 Domains Domain
7328
+ Reference Dnssec Enable Post
7329
+ type: array
7330
+ description: Successful Response
7331
+ '404':
7332
+ content:
7333
+ application/problem+json:
7334
+ example:
7335
+ code: ERROR_DOMAIN_NOT_FOUND
7336
+ detail: Domain not found
7337
+ domain_name: Additional error context.
7338
+ status: 404
7339
+ title: Domain Management Error
7340
+ type: domain-not-found
7341
+ schema:
7342
+ $ref: '#/components/schemas/Problem'
7343
+ description: Not Found
7344
+ '422':
7345
+ content:
7346
+ application/problem+json:
7347
+ schema:
7348
+ $ref: '#/components/schemas/HTTPValidationError'
7349
+ description: Validation Error
7350
+ security:
7351
+ - OAuth2PasswordBearer: []
7352
+ summary: Enable DNSSEC for domains using our nameservers
7353
+ tags:
7354
+ - domain
7147
7355
  /v1/domains/{domain_reference}/renew:
7148
7356
  post:
7149
7357
  description: 'Extends the registration period of an existing domain. The renewal
@@ -8475,6 +8683,93 @@ paths:
8475
8683
  summary: Change Plan
8476
8684
  tags:
8477
8685
  - organization
8686
+ /v1/organizations/{organization_id}/plans:
8687
+ get:
8688
+ operationId: get_current_available_plans_v1_organizations__organization_id__plans_get
8689
+ parameters:
8690
+ - in: path
8691
+ name: organization_id
8692
+ required: true
8693
+ schema:
8694
+ examples:
8695
+ - organization_01h45ytscbebyvny4gc8cr8ma2
8696
+ format: typeid
8697
+ pattern: ^organization_[0-7][0-9a-hjkmnpq-tv-z]{25}$
8698
+ title: Organization Id
8699
+ type: string
8700
+ x-typeid-prefix: organization
8701
+ responses:
8702
+ '200':
8703
+ content:
8704
+ application/json:
8705
+ schema:
8706
+ $ref: '#/components/schemas/GetCurrentAvailablePlansResponse'
8707
+ description: Successful Response
8708
+ '422':
8709
+ content:
8710
+ application/problem+json:
8711
+ schema:
8712
+ $ref: '#/components/schemas/HTTPValidationError'
8713
+ description: Validation Error
8714
+ security:
8715
+ - OAuth2PasswordBearer: []
8716
+ summary: Get Current Available Plans
8717
+ tags:
8718
+ - organization
8719
+ /v1/organizations/{organization_id}/pricing/product-type/{product_type}:
8720
+ get:
8721
+ operationId: get_pricing_plans_v1_organizations__organization_id__pricing_product_type__product_type__get
8722
+ parameters:
8723
+ - in: path
8724
+ name: organization_id
8725
+ required: true
8726
+ schema:
8727
+ examples:
8728
+ - organization_01h45ytscbebyvny4gc8cr8ma2
8729
+ format: typeid
8730
+ pattern: ^organization_[0-7][0-9a-hjkmnpq-tv-z]{25}$
8731
+ title: Organization Id
8732
+ type: string
8733
+ x-typeid-prefix: organization
8734
+ - in: path
8735
+ name: product_type
8736
+ required: true
8737
+ schema:
8738
+ $ref: '#/components/schemas/BillingTransactionProductType'
8739
+ - in: query
8740
+ name: product_action
8741
+ required: false
8742
+ schema:
8743
+ anyOf:
8744
+ - $ref: '#/components/schemas/BillingTransactionAction'
8745
+ - type: 'null'
8746
+ title: Product Action
8747
+ - in: query
8748
+ name: product_class
8749
+ required: false
8750
+ schema:
8751
+ anyOf:
8752
+ - type: string
8753
+ - type: 'null'
8754
+ title: Product Class
8755
+ responses:
8756
+ '200':
8757
+ content:
8758
+ application/json:
8759
+ schema:
8760
+ $ref: '#/components/schemas/GetPricesResponse'
8761
+ description: Successful Response
8762
+ '422':
8763
+ content:
8764
+ application/problem+json:
8765
+ schema:
8766
+ $ref: '#/components/schemas/HTTPValidationError'
8767
+ description: Validation Error
8768
+ security:
8769
+ - OAuth2PasswordBearer: []
8770
+ summary: Get Pricing Plans
8771
+ tags:
8772
+ - organization
8478
8773
  /v1/tlds/portfolio:
8479
8774
  get:
8480
8775
  operationId: get_tld_portfolio_v1_tlds_portfolio_get
package/src/schema.d.ts CHANGED
@@ -545,6 +545,40 @@ export interface paths {
545
545
  patch?: never;
546
546
  trace?: never;
547
547
  };
548
+ "/v1/domains/{domain_reference}/dnssec/disable": {
549
+ parameters: {
550
+ query?: never;
551
+ header?: never;
552
+ path?: never;
553
+ cookie?: never;
554
+ };
555
+ get?: never;
556
+ put?: never;
557
+ /** Disable DNSSEC for domains using our nameservers */
558
+ post: operations["disable_and_unpublish_dnssec_records_v1_domains__domain_reference__dnssec_disable_post"];
559
+ delete?: never;
560
+ options?: never;
561
+ head?: never;
562
+ patch?: never;
563
+ trace?: never;
564
+ };
565
+ "/v1/domains/{domain_reference}/dnssec/enable": {
566
+ parameters: {
567
+ query?: never;
568
+ header?: never;
569
+ path?: never;
570
+ cookie?: never;
571
+ };
572
+ get?: never;
573
+ put?: never;
574
+ /** Enable DNSSEC for domains using our nameservers */
575
+ post: operations["enable_and_publish_dnssec_records_v1_domains__domain_reference__dnssec_enable_post"];
576
+ delete?: never;
577
+ options?: never;
578
+ head?: never;
579
+ patch?: never;
580
+ trace?: never;
581
+ };
548
582
  "/v1/domains/{domain_reference}/renew": {
549
583
  parameters: {
550
584
  query?: never;
@@ -923,6 +957,40 @@ export interface paths {
923
957
  patch: operations["change_plan_v1_organizations__organization_id__plan_patch"];
924
958
  trace?: never;
925
959
  };
960
+ "/v1/organizations/{organization_id}/plans": {
961
+ parameters: {
962
+ query?: never;
963
+ header?: never;
964
+ path?: never;
965
+ cookie?: never;
966
+ };
967
+ /** Get Current Available Plans */
968
+ get: operations["get_current_available_plans_v1_organizations__organization_id__plans_get"];
969
+ put?: never;
970
+ post?: never;
971
+ delete?: never;
972
+ options?: never;
973
+ head?: never;
974
+ patch?: never;
975
+ trace?: never;
976
+ };
977
+ "/v1/organizations/{organization_id}/pricing/product-type/{product_type}": {
978
+ parameters: {
979
+ query?: never;
980
+ header?: never;
981
+ path?: never;
982
+ cookie?: never;
983
+ };
984
+ /** Get Pricing Plans */
985
+ get: operations["get_pricing_plans_v1_organizations__organization_id__pricing_product_type__product_type__get"];
986
+ put?: never;
987
+ post?: never;
988
+ delete?: never;
989
+ options?: never;
990
+ head?: never;
991
+ patch?: never;
992
+ trace?: never;
993
+ };
926
994
  "/v1/tlds/portfolio": {
927
995
  parameters: {
928
996
  query?: never;
@@ -1067,6 +1135,16 @@ export interface components {
1067
1135
  */
1068
1136
  min: number;
1069
1137
  };
1138
+ /**
1139
+ * BillingTransactionAction
1140
+ * @enum {string}
1141
+ */
1142
+ BillingTransactionAction: "create" | "transfer" | "renew" | "restore" | "trade" | "application";
1143
+ /**
1144
+ * BillingTransactionProductType
1145
+ * @enum {string}
1146
+ */
1147
+ BillingTransactionProductType: "domain" | "zone" | "email_forward" | "domain_forward";
1070
1148
  /** Body_issue_organization_token_v1_auth_token_post */
1071
1149
  Body_issue_organization_token_v1_auth_token_post: {
1072
1150
  /**
@@ -2404,6 +2482,24 @@ export interface components {
2404
2482
  */
2405
2483
  start_date: Date;
2406
2484
  };
2485
+ /** GetCurrentAvailablePlansResponse */
2486
+ GetCurrentAvailablePlansResponse: {
2487
+ /** @description Current active plan for the customer */
2488
+ current_plan?: components["schemas"]["PlanInfo"] | null;
2489
+ /**
2490
+ * Plans
2491
+ * @description List of available plans
2492
+ */
2493
+ plans: components["schemas"]["PlanInfo"][];
2494
+ };
2495
+ /** GetPricesResponse */
2496
+ GetPricesResponse: {
2497
+ /**
2498
+ * Prices
2499
+ * @description List of prices
2500
+ */
2501
+ prices: components["schemas"]["PriceInfo"][];
2502
+ };
2407
2503
  /**
2408
2504
  * GrantType
2409
2505
  * @enum {string}
@@ -3419,6 +3515,39 @@ export interface components {
3419
3515
  /** Permissions */
3420
3516
  permissions?: components["schemas"]["Permission"][];
3421
3517
  };
3518
+ /** PlanInfo */
3519
+ PlanInfo: {
3520
+ /**
3521
+ * Amount
3522
+ * @description Base price
3523
+ */
3524
+ amount: number;
3525
+ /**
3526
+ * Currency
3527
+ * @description Currency code
3528
+ */
3529
+ currency: string;
3530
+ /**
3531
+ * Name
3532
+ * @description Plan display name
3533
+ */
3534
+ name?: string | null;
3535
+ /**
3536
+ * Plan Id
3537
+ * @description Unique plan identifier
3538
+ */
3539
+ plan_id: string;
3540
+ /**
3541
+ * Plan Level
3542
+ * @description Plan level such as 'premium' or 'starter'
3543
+ */
3544
+ plan_level?: string | null;
3545
+ /**
3546
+ * Plan Type
3547
+ * @description Plan type or billing interval
3548
+ */
3549
+ plan_type?: string | null;
3550
+ };
3422
3551
  /**
3423
3552
  * PlanRelation
3424
3553
  * @enum {string}
@@ -3464,6 +3593,19 @@ export interface components {
3464
3593
  * @enum {string}
3465
3594
  */
3466
3595
  PremiumSourceType: "EPP" | "API" | "CSV" | "manual";
3596
+ /** PriceInfo */
3597
+ PriceInfo: {
3598
+ /** Currency */
3599
+ currency: string;
3600
+ /** Price */
3601
+ price: string;
3602
+ /** Product Action */
3603
+ product_action?: string | null;
3604
+ /** Product Class */
3605
+ product_class?: string | null;
3606
+ /** Product Type */
3607
+ product_type: string;
3608
+ };
3467
3609
  /** Problem */
3468
3610
  Problem: {
3469
3611
  /** Problem detail */
@@ -6288,6 +6430,100 @@ export interface operations {
6288
6430
  };
6289
6431
  };
6290
6432
  };
6433
+ disable_and_unpublish_dnssec_records_v1_domains__domain_reference__dnssec_disable_post: {
6434
+ parameters: {
6435
+ query?: never;
6436
+ header?: never;
6437
+ path: {
6438
+ domain_reference: TypeID<"domain"> | string;
6439
+ };
6440
+ cookie?: never;
6441
+ };
6442
+ requestBody?: never;
6443
+ responses: {
6444
+ /** @description Successful Response */
6445
+ 204: {
6446
+ headers: {
6447
+ [name: string]: unknown;
6448
+ };
6449
+ content?: never;
6450
+ };
6451
+ /** @description Not Found */
6452
+ 404: {
6453
+ headers: {
6454
+ [name: string]: unknown;
6455
+ };
6456
+ content: {
6457
+ /** @example {
6458
+ * "code": "ERROR_DOMAIN_NOT_FOUND",
6459
+ * "detail": "Domain not found",
6460
+ * "domain_name": "Additional error context.",
6461
+ * "status": 404,
6462
+ * "title": "Domain Management Error",
6463
+ * "type": "domain-not-found"
6464
+ * } */
6465
+ "application/problem+json": components["schemas"]["Problem"];
6466
+ };
6467
+ };
6468
+ /** @description Validation Error */
6469
+ 422: {
6470
+ headers: {
6471
+ [name: string]: unknown;
6472
+ };
6473
+ content: {
6474
+ "application/problem+json": components["schemas"]["HTTPValidationError"];
6475
+ };
6476
+ };
6477
+ };
6478
+ };
6479
+ enable_and_publish_dnssec_records_v1_domains__domain_reference__dnssec_enable_post: {
6480
+ parameters: {
6481
+ query?: never;
6482
+ header?: never;
6483
+ path: {
6484
+ domain_reference: TypeID<"domain"> | string;
6485
+ };
6486
+ cookie?: never;
6487
+ };
6488
+ requestBody?: never;
6489
+ responses: {
6490
+ /** @description Successful Response */
6491
+ 200: {
6492
+ headers: {
6493
+ [name: string]: unknown;
6494
+ };
6495
+ content: {
6496
+ "application/json": components["schemas"]["DomainDnssecDataResponse"][];
6497
+ };
6498
+ };
6499
+ /** @description Not Found */
6500
+ 404: {
6501
+ headers: {
6502
+ [name: string]: unknown;
6503
+ };
6504
+ content: {
6505
+ /** @example {
6506
+ * "code": "ERROR_DOMAIN_NOT_FOUND",
6507
+ * "detail": "Domain not found",
6508
+ * "domain_name": "Additional error context.",
6509
+ * "status": 404,
6510
+ * "title": "Domain Management Error",
6511
+ * "type": "domain-not-found"
6512
+ * } */
6513
+ "application/problem+json": components["schemas"]["Problem"];
6514
+ };
6515
+ };
6516
+ /** @description Validation Error */
6517
+ 422: {
6518
+ headers: {
6519
+ [name: string]: unknown;
6520
+ };
6521
+ content: {
6522
+ "application/problem+json": components["schemas"]["HTTPValidationError"];
6523
+ };
6524
+ };
6525
+ };
6526
+ };
6291
6527
  renew_domain_v1_domains__domain_reference__renew_post: {
6292
6528
  parameters: {
6293
6529
  query?: never;
@@ -7547,6 +7783,72 @@ export interface operations {
7547
7783
  };
7548
7784
  };
7549
7785
  };
7786
+ get_current_available_plans_v1_organizations__organization_id__plans_get: {
7787
+ parameters: {
7788
+ query?: never;
7789
+ header?: never;
7790
+ path: {
7791
+ organization_id: TypeID<"organization">;
7792
+ };
7793
+ cookie?: never;
7794
+ };
7795
+ requestBody?: never;
7796
+ responses: {
7797
+ /** @description Successful Response */
7798
+ 200: {
7799
+ headers: {
7800
+ [name: string]: unknown;
7801
+ };
7802
+ content: {
7803
+ "application/json": components["schemas"]["GetCurrentAvailablePlansResponse"];
7804
+ };
7805
+ };
7806
+ /** @description Validation Error */
7807
+ 422: {
7808
+ headers: {
7809
+ [name: string]: unknown;
7810
+ };
7811
+ content: {
7812
+ "application/problem+json": components["schemas"]["HTTPValidationError"];
7813
+ };
7814
+ };
7815
+ };
7816
+ };
7817
+ get_pricing_plans_v1_organizations__organization_id__pricing_product_type__product_type__get: {
7818
+ parameters: {
7819
+ query?: {
7820
+ product_action?: components["schemas"]["BillingTransactionAction"] | null;
7821
+ product_class?: string | null;
7822
+ };
7823
+ header?: never;
7824
+ path: {
7825
+ organization_id: TypeID<"organization">;
7826
+ product_type: components["schemas"]["BillingTransactionProductType"];
7827
+ };
7828
+ cookie?: never;
7829
+ };
7830
+ requestBody?: never;
7831
+ responses: {
7832
+ /** @description Successful Response */
7833
+ 200: {
7834
+ headers: {
7835
+ [name: string]: unknown;
7836
+ };
7837
+ content: {
7838
+ "application/json": components["schemas"]["GetPricesResponse"];
7839
+ };
7840
+ };
7841
+ /** @description Validation Error */
7842
+ 422: {
7843
+ headers: {
7844
+ [name: string]: unknown;
7845
+ };
7846
+ content: {
7847
+ "application/problem+json": components["schemas"]["HTTPValidationError"];
7848
+ };
7849
+ };
7850
+ };
7851
+ };
7550
7852
  get_tld_portfolio_v1_tlds_portfolio_get: {
7551
7853
  parameters: {
7552
7854
  query?: never;