@opusdns/api 0.230.0 → 0.232.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": "^0.19.0"
4
4
  },
5
5
  "name": "@opusdns/api",
6
- "version": "0.230.0",
6
+ "version": "0.232.0",
7
7
  "description": "TypeScript types for the OpusDNS OpenAPI specification",
8
8
  "main": "./src/index.ts",
9
9
  "module": "./src/index.ts",
@@ -34909,6 +34909,32 @@ export const KEY_TRANSFER_POLICIES_BASE_AUTHINFO_PATTERN: keyof TransferPolicies
34909
34909
  * @see {@link KEYS_TRANSFER_POLICIES_BASE} - Array of all keys for this type
34910
34910
  */
34911
34911
  export const KEY_TRANSFER_POLICIES_BASE_AUTHINFO_REQUIRED: keyof TransferPoliciesBase = 'authinfo_required';
34912
+ /**
34913
+ * Authinfo Set By Registrar
34914
+ *
34915
+ * Whether the registrar can set the auth info, or whether the registry controls it
34916
+ *
34917
+ * @type {boolean}
34918
+ *
34919
+ *
34920
+ * @remarks
34921
+ * This key constant provides type-safe access to the `authinfo_set_by_registrar` property of TransferPoliciesBase objects.
34922
+ * Use this constant when you need to access properties dynamically or ensure type safety.
34923
+ *
34924
+ * @example
34925
+ * ```typescript
34926
+ * // Direct property access
34927
+ * const value = transferpoliciesbase[KEY_TRANSFER_POLICIES_BASE_AUTHINFO_SET_BY_REGISTRAR];
34928
+ *
34929
+ * // Dynamic property access
34930
+ * const propertyName = KEY_TRANSFER_POLICIES_BASE_AUTHINFO_SET_BY_REGISTRAR;
34931
+ * const value = transferpoliciesbase[propertyName];
34932
+ * ```
34933
+ *
34934
+ * @see {@link TransferPoliciesBase} - The TypeScript type definition
34935
+ * @see {@link KEYS_TRANSFER_POLICIES_BASE} - Array of all keys for this type
34936
+ */
34937
+ export const KEY_TRANSFER_POLICIES_BASE_AUTHINFO_SET_BY_REGISTRAR: keyof TransferPoliciesBase = 'authinfo_set_by_registrar';
34912
34938
  /**
34913
34939
  * Authinfo Time Limited
34914
34940
  *
@@ -35235,6 +35261,7 @@ export const KEYS_TRANSFER_POLICIES_BASE = [
35235
35261
  KEY_TRANSFER_POLICIES_BASE_AUTHINFO_MIN_LENGTH,
35236
35262
  KEY_TRANSFER_POLICIES_BASE_AUTHINFO_PATTERN,
35237
35263
  KEY_TRANSFER_POLICIES_BASE_AUTHINFO_REQUIRED,
35264
+ KEY_TRANSFER_POLICIES_BASE_AUTHINFO_SET_BY_REGISTRAR,
35238
35265
  KEY_TRANSFER_POLICIES_BASE_AUTHINFO_TIME_LIMITED,
35239
35266
  KEY_TRANSFER_POLICIES_BASE_AUTHINFO_VALIDITY_PERIOD,
35240
35267
  KEY_TRANSFER_POLICIES_BASE_INFO_CONTACT_AUTHINFO,
package/src/openapi.yaml CHANGED
@@ -8748,6 +8748,12 @@ components:
8748
8748
  description: Whether an auth info is required for transfers
8749
8749
  title: Authinfo Required
8750
8750
  type: boolean
8751
+ authinfo_set_by_registrar:
8752
+ default: true
8753
+ description: Whether the registrar can set the auth info, or whether the
8754
+ registry controls it
8755
+ title: Authinfo Set By Registrar
8756
+ type: boolean
8751
8757
  authinfo_time_limited:
8752
8758
  anyOf:
8753
8759
  - type: boolean
@@ -9594,77 +9600,59 @@ components:
9594
9600
  tokenUrl: token
9595
9601
  type: oauth2
9596
9602
  info:
9597
- description: '# Authentication
9598
-
9599
-
9600
- Describes authentication approach.
9601
-
9602
-
9603
-
9604
- # Resource IDs
9605
-
9606
-
9607
- The API uses extensively [Type IDs](https://github.com/jetify-com/typeid): type-safe,
9608
- K-sortable, globally unique identifier inspired by Stripe IDs. They can be easily
9609
- identified with a format like `prefix_01jxe1nzrmf78scaqbkjx0va0f`. The `prefix`
9610
- gives context to the ID - some examples include `user`, `organization`, `domain`.
9611
- The rest of the ID is a 128-bit UUIDv7 encoded as a 26-character string using
9612
- a modified base32 encoding. See [formal specification for details](https://github.com/jetify-com/typeid/tree/main/spec).
9613
-
9614
-
9615
- This approach allows using unique IDs (UUIDv7), preventing iteration attacks,
9616
- while also easily identifying the "namespace" of the ID. `01975c1f-a15a-7f6c-a5ce-b75fe33de079`
9617
- is hardly distuingishable from `01975c1f-f120-7874-8dc2-de7d728bf261` by humans
9618
- on first glance. However, when represented as Type IDs, they could be represented
9619
- as `user_01jxe1z8atfxpabknqbzhkvr3s` and `domain_01jxe1zw90f1t8vgpyfns8qwk1`,
9620
- immediately making it easier to differentiate between them.
9621
-
9622
-
9623
- Additionally, this gives type safety and additional validation that can be done.
9624
- There''s [libraries available for many languages to make handling Type IDs easier](https://github.com/jetify-com/typeid?tab=readme-ov-file#official-implementations-by-jetify).
9625
- We''re using them ourselves on the backend to quickly catch mistakes like passing
9626
- the wrong Type ID (passing a user ID like `user_01jxe1z8atfxpabknqbzhkvr3s` where
9627
- a domain ID `domain_01jxe1zw90f1t8vgpyfns8qwk1` was expected).
9628
-
9629
-
9630
-
9631
- # Sandbox Environment
9632
-
9633
-
9634
- We provide a free sandbox environment where you can test and make sure your integration
9635
- with OpusDNS runs smoothly. The sandbox is completely isolated, meaning all domains,
9636
- configurations, and actions inside this environment have no effect on your live
9637
- data or production systems. It is a full test system for safe experimentation
9638
- and completely free to use.
9639
-
9640
-
9641
- Please register a new sandbox account at https://app.sandbox.opusdns.com and create
9642
- a new API key there.
9643
-
9644
-
9645
- This sandbox provides a separate dashboard at [app.sandbox.opusdns.com](https://app.sandbox.opusdns.com).
9646
-
9647
-
9648
- The sandbox API Base URL is `https://sandbox.opusdns.com`.
9649
-
9650
-
9651
- If you have any questions about the API or run into issues, please open a ticket
9652
- at support@opusdns.com. We are happy to help!
9653
-
9654
-
9655
- # Open-source SDKs and libraries
9656
-
9657
-
9658
- We''re constantly building new features and services from SDKs and plugins to
9659
- other exciting tools. Check out [our GitHub](https://github.com/OpusDNS/) to see
9660
- the latest developments and try them out yourself!
9661
-
9662
-
9663
-
9664
- '
9603
+ description: "# Authentication\n\nOpusDNS supports API authentication in two ways:\n\
9604
+ \n- Direct API key authentication using the `X-Api-Key` header\n- OAuth token\
9605
+ \ authentication using the `/v1/auth/token` endpoint\n\n## Creating an API key\
9606
+ \ in the Dashboard\n\nYou can create API keys from the OpusDNS Dashboard.\n\n\
9607
+ - Create a new API key in the dashboard under [API Credentials](https://app.opusdns.com/developer/api-credentials)\n\
9608
+ \nStore the generated key securely when it is shown to you.\n## Authentication\
9609
+ \ options\n\n### Option 1: `X-Api-Key` header\n\nSend your full OpusDNS API key\
9610
+ \ in the `X-Api-Key` header on each request:\n\n```http\nGET /v1/domains HTTP/1.1\n\
9611
+ Host: sandbox.opusdns.com\nX-Api-Key: opk_your_full_api_key_here\n```\n\nThis\
9612
+ \ is the most direct way to authenticate.\n\n### Option 2: OAuth token flow\n\n\
9613
+ OpusDNS also supports retrieving a bearer token from the token endpoint:\n\n```http\n\
9614
+ POST /v1/auth/token HTTP/1.1\nHost: sandbox.opusdns.com\nContent-Type: application/x-www-form-urlencoded\n\
9615
+ \ngrant_type=client_credentials&client_id=organization_...&client_secret=...\n\
9616
+ ```\n\nSuccessful responses return a bearer token and expiry:\n\n```json\n{\n\
9617
+ \ \"access_token\": \"eyJ...\",\n \"token_type\": \"Bearer\",\n \"expires_in\"\
9618
+ : 3600\n}\n```\n\nYou can then use that token on subsequent requests:\n\n```http\n\
9619
+ GET /v1/domains HTTP/1.1\nHost: sandbox.opusdns.com\nAuthorization: Bearer eyJ...\n\
9620
+ ```\n\nYou can use this method when:\n\n- Your platform prefers standard OAuth-style\
9621
+ \ bearer tokens\n- You want short-lived access tokens instead of sending the API\
9622
+ \ key on every request\n- Your HTTP tooling already expects `Authorization: Bearer\
9623
+ \ ...`\n\n\n\n\n# Resource IDs\n\nThe API uses extensively [Type IDs](https://github.com/jetify-com/typeid):\
9624
+ \ type-safe, K-sortable, globally unique identifier inspired by Stripe IDs. They\
9625
+ \ can be easily identified with a format like `prefix_01jxe1nzrmf78scaqbkjx0va0f`.\
9626
+ \ The `prefix` gives context to the ID - some examples include `user`, `organization`,\
9627
+ \ `domain`. The rest of the ID is a 128-bit UUIDv7 encoded as a 26-character string\
9628
+ \ using a modified base32 encoding. See [formal specification for details](https://github.com/jetify-com/typeid/tree/main/spec).\n\
9629
+ \nThis approach allows using unique IDs (UUIDv7), preventing iteration attacks,\
9630
+ \ while also easily identifying the \"namespace\" of the ID. `01975c1f-a15a-7f6c-a5ce-b75fe33de079`\
9631
+ \ is hardly distuingishable from `01975c1f-f120-7874-8dc2-de7d728bf261` by humans\
9632
+ \ on first glance. However, when represented as Type IDs, they could be represented\
9633
+ \ as `user_01jxe1z8atfxpabknqbzhkvr3s` and `domain_01jxe1zw90f1t8vgpyfns8qwk1`,\
9634
+ \ immediately making it easier to differentiate between them.\n\nAdditionally,\
9635
+ \ this gives type safety and additional validation that can be done. There's [libraries\
9636
+ \ available for many languages to make handling Type IDs easier](https://github.com/jetify-com/typeid?tab=readme-ov-file#official-implementations-by-jetify).\
9637
+ \ We're using them ourselves on the backend to quickly catch mistakes like passing\
9638
+ \ the wrong Type ID (passing a user ID like `user_01jxe1z8atfxpabknqbzhkvr3s`\
9639
+ \ where a domain ID `domain_01jxe1zw90f1t8vgpyfns8qwk1` was expected).\n\n\n#\
9640
+ \ Sandbox Environment\n\nWe provide a free sandbox environment where you can test\
9641
+ \ and make sure your integration with OpusDNS runs smoothly. The sandbox is completely\
9642
+ \ isolated, meaning all domains, configurations, and actions inside this environment\
9643
+ \ have no effect on your live data or production systems. It is a full test system\
9644
+ \ for safe experimentation and completely free to use.\n\nPlease register a new\
9645
+ \ sandbox account at https://app.sandbox.opusdns.com and create a new API key\
9646
+ \ there.\n\nThis sandbox provides a separate dashboard at [app.sandbox.opusdns.com](https://app.sandbox.opusdns.com).\n\
9647
+ \nThe sandbox API Base URL is `https://sandbox.opusdns.com`.\n\nIf you have any\
9648
+ \ questions about the API or run into issues, please open a ticket at support@opusdns.com.\
9649
+ \ We are happy to help!\n\n# Open-source SDKs and libraries\n\nWe're constantly\
9650
+ \ building new features and services from SDKs and plugins to other exciting tools.\
9651
+ \ Check out [our GitHub](https://github.com/OpusDNS/) to see the latest developments\
9652
+ \ and try them out yourself!\n\n\n"
9665
9653
  summary: OpusDNS - your gateway to a seamless domain management experience.
9666
9654
  title: OpusDNS API
9667
- version: 2026-04-01-072443
9655
+ version: 2026-04-01-081711
9668
9656
  x-logo:
9669
9657
  altText: OpusDNS API Reference
9670
9658
  url: https://d24lr4zqs1tgqh.cloudfront.net/c9505a20-5ae1-406c-b060-d392569caebf.jpg
package/src/schema.d.ts CHANGED
@@ -7987,6 +7987,12 @@ export interface components {
7987
7987
  * @description Whether an auth info is required for transfers
7988
7988
  */
7989
7989
  authinfo_required: boolean;
7990
+ /**
7991
+ * Authinfo Set By Registrar
7992
+ * @description Whether the registrar can set the auth info, or whether the registry controls it
7993
+ * @default true
7994
+ */
7995
+ authinfo_set_by_registrar: boolean;
7990
7996
  /**
7991
7997
  * Authinfo Time Limited
7992
7998
  * @description Whether an auth info has a time limit