@randock/nameshift-api-client 0.0.464 → 0.0.466

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.
@@ -114,6 +114,7 @@ src/models/AirwallexDepositDtoFee.ts
114
114
  src/models/ApiKeyDto.ts
115
115
  src/models/ApiKeyScopeDto.ts
116
116
  src/models/ApplyDomainEditInput.ts
117
+ src/models/AssociateVisitorInput.ts
117
118
  src/models/AuBankAccountDetails.ts
118
119
  src/models/AuctionBidDto.ts
119
120
  src/models/AuctionBidInput.ts
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ## @randock/nameshift-api-client@0.0.464
1
+ ## @randock/nameshift-api-client@0.0.466
2
2
 
3
3
  This generator creates TypeScript/JavaScript client that utilizes [Fetch API](https://fetch.spec.whatwg.org/). The generated Node module can be used in the following environments:
4
4
 
@@ -36,7 +36,7 @@ navigate to the folder of your consuming project and run one of the following co
36
36
  _published:_
37
37
 
38
38
  ```
39
- npm install @randock/nameshift-api-client@0.0.464 --save
39
+ npm install @randock/nameshift-api-client@0.0.466 --save
40
40
  ```
41
41
 
42
42
  _unPublished (not recommended):_
@@ -44,4 +44,4 @@ _unPublished (not recommended):_
44
44
  ```
45
45
  npm install PATH_TO_GENERATED_PACKAGE --save
46
46
  ```
47
- 05aae47b3839e9992711183c6c49497893deb1a29a48ec7a128d64773844c19fa446f89861fdff28bf6dda8fa3a547a8
47
+ 29647ae2c949308eb631602de8b0277a39d524b648a3392401bd14d948ce13755ba17410e14ee6eb6e350c949edd3f39
@@ -10,7 +10,11 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { CreateLeadInput, LeadStatusDto, ObjectId, PublicLeadDto, UpdateLeadInput, VerifyLeadInput } from '../models/index';
13
+ import type { AssociateVisitorInput, CreateLeadInput, LeadStatusDto, ObjectId, PublicLeadDto, UpdateLeadInput, VerifyLeadInput } from '../models/index';
14
+ export interface LeadsPublicApiAssociateLeadVisitorRequest {
15
+ leadId: string;
16
+ associateVisitorInput: AssociateVisitorInput;
17
+ }
14
18
  export interface LeadsPublicApiCreateLeadRequest {
15
19
  createLeadInput: CreateLeadInput;
16
20
  }
@@ -35,6 +39,16 @@ export interface LeadsPublicApiVerifyLeadRequest {
35
39
  *
36
40
  */
37
41
  export declare class LeadsPublicApi extends runtime.BaseAPI {
42
+ /**
43
+ * Links an umami session to the buyer behind this lead, so their analytics sessions can be cross-referenced once their email is known. Safe to call repeatedly; the same session is only stored once. No authentication required.
44
+ * Associate a visitor with a lead buyer
45
+ */
46
+ associateLeadVisitorRaw(requestParameters: LeadsPublicApiAssociateLeadVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
47
+ /**
48
+ * Links an umami session to the buyer behind this lead, so their analytics sessions can be cross-referenced once their email is known. Safe to call repeatedly; the same session is only stored once. No authentication required.
49
+ * Associate a visitor with a lead buyer
50
+ */
51
+ associateLeadVisitor(requestParameters: LeadsPublicApiAssociateLeadVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
38
52
  /**
39
53
  * Submits a purchase inquiry for a domain. No authentication required. May be processed synchronously or asynchronously.
40
54
  * Create a lead
@@ -75,6 +75,55 @@ var LeadsPublicApi = /** @class */ (function (_super) {
75
75
  function LeadsPublicApi() {
76
76
  return _super !== null && _super.apply(this, arguments) || this;
77
77
  }
78
+ /**
79
+ * Links an umami session to the buyer behind this lead, so their analytics sessions can be cross-referenced once their email is known. Safe to call repeatedly; the same session is only stored once. No authentication required.
80
+ * Associate a visitor with a lead buyer
81
+ */
82
+ LeadsPublicApi.prototype.associateLeadVisitorRaw = function (requestParameters, initOverrides) {
83
+ return __awaiter(this, void 0, void 0, function () {
84
+ var queryParameters, headerParameters, response;
85
+ return __generator(this, function (_a) {
86
+ switch (_a.label) {
87
+ case 0:
88
+ if (requestParameters['leadId'] == null) {
89
+ throw new runtime.RequiredError('leadId', 'Required parameter "leadId" was null or undefined when calling associateLeadVisitor().');
90
+ }
91
+ if (requestParameters['associateVisitorInput'] == null) {
92
+ throw new runtime.RequiredError('associateVisitorInput', 'Required parameter "associateVisitorInput" was null or undefined when calling associateLeadVisitor().');
93
+ }
94
+ queryParameters = {};
95
+ headerParameters = {};
96
+ headerParameters['Content-Type'] = 'application/json';
97
+ return [4 /*yield*/, this.request({
98
+ path: "/leads/{leadId}/visitor".replace("{".concat("leadId", "}"), encodeURIComponent(String(requestParameters['leadId']))),
99
+ method: 'POST',
100
+ headers: headerParameters,
101
+ query: queryParameters,
102
+ body: (0, index_1.AssociateVisitorInputToJSON)(requestParameters['associateVisitorInput']),
103
+ }, initOverrides)];
104
+ case 1:
105
+ response = _a.sent();
106
+ return [2 /*return*/, new runtime.VoidApiResponse(response)];
107
+ }
108
+ });
109
+ });
110
+ };
111
+ /**
112
+ * Links an umami session to the buyer behind this lead, so their analytics sessions can be cross-referenced once their email is known. Safe to call repeatedly; the same session is only stored once. No authentication required.
113
+ * Associate a visitor with a lead buyer
114
+ */
115
+ LeadsPublicApi.prototype.associateLeadVisitor = function (requestParameters, initOverrides) {
116
+ return __awaiter(this, void 0, void 0, function () {
117
+ return __generator(this, function (_a) {
118
+ switch (_a.label) {
119
+ case 0: return [4 /*yield*/, this.associateLeadVisitorRaw(requestParameters, initOverrides)];
120
+ case 1:
121
+ _a.sent();
122
+ return [2 /*return*/];
123
+ }
124
+ });
125
+ });
126
+ };
78
127
  /**
79
128
  * Submits a purchase inquiry for a domain. No authentication required. May be processed synchronously or asynchronously.
80
129
  * Create a lead
@@ -10,7 +10,11 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { CreateManualTransactionInput, CreateOrderInput, ObjectId, OrderDto, UpdateOrderInput } from '../models/index';
13
+ import type { AssociateVisitorInput, CreateManualTransactionInput, CreateOrderInput, ObjectId, OrderDto, UpdateOrderInput } from '../models/index';
14
+ export interface OrdersPublicApiAssociateOrderVisitorRequest {
15
+ orderId: string;
16
+ associateVisitorInput: AssociateVisitorInput;
17
+ }
14
18
  export interface OrdersPublicApiCreateOrderRequest {
15
19
  createOrderInput: CreateOrderInput;
16
20
  }
@@ -33,6 +37,16 @@ export interface OrdersPublicApiUpdateOrderRequest {
33
37
  *
34
38
  */
35
39
  export declare class OrdersPublicApi extends runtime.BaseAPI {
40
+ /**
41
+ * Links an umami session to the buyer behind this order, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
42
+ * Associate a visitor with an order buyer
43
+ */
44
+ associateOrderVisitorRaw(requestParameters: OrdersPublicApiAssociateOrderVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
45
+ /**
46
+ * Links an umami session to the buyer behind this order, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
47
+ * Associate a visitor with an order buyer
48
+ */
49
+ associateOrderVisitor(requestParameters: OrdersPublicApiAssociateOrderVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
36
50
  /**
37
51
  * Creates a new domain purchase order.
38
52
  * Create order
@@ -75,6 +75,55 @@ var OrdersPublicApi = /** @class */ (function (_super) {
75
75
  function OrdersPublicApi() {
76
76
  return _super !== null && _super.apply(this, arguments) || this;
77
77
  }
78
+ /**
79
+ * Links an umami session to the buyer behind this order, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
80
+ * Associate a visitor with an order buyer
81
+ */
82
+ OrdersPublicApi.prototype.associateOrderVisitorRaw = function (requestParameters, initOverrides) {
83
+ return __awaiter(this, void 0, void 0, function () {
84
+ var queryParameters, headerParameters, response;
85
+ return __generator(this, function (_a) {
86
+ switch (_a.label) {
87
+ case 0:
88
+ if (requestParameters['orderId'] == null) {
89
+ throw new runtime.RequiredError('orderId', 'Required parameter "orderId" was null or undefined when calling associateOrderVisitor().');
90
+ }
91
+ if (requestParameters['associateVisitorInput'] == null) {
92
+ throw new runtime.RequiredError('associateVisitorInput', 'Required parameter "associateVisitorInput" was null or undefined when calling associateOrderVisitor().');
93
+ }
94
+ queryParameters = {};
95
+ headerParameters = {};
96
+ headerParameters['Content-Type'] = 'application/json';
97
+ return [4 /*yield*/, this.request({
98
+ path: "/orders/{orderId}/visitor".replace("{".concat("orderId", "}"), encodeURIComponent(String(requestParameters['orderId']))),
99
+ method: 'POST',
100
+ headers: headerParameters,
101
+ query: queryParameters,
102
+ body: (0, index_1.AssociateVisitorInputToJSON)(requestParameters['associateVisitorInput']),
103
+ }, initOverrides)];
104
+ case 1:
105
+ response = _a.sent();
106
+ return [2 /*return*/, new runtime.VoidApiResponse(response)];
107
+ }
108
+ });
109
+ });
110
+ };
111
+ /**
112
+ * Links an umami session to the buyer behind this order, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
113
+ * Associate a visitor with an order buyer
114
+ */
115
+ OrdersPublicApi.prototype.associateOrderVisitor = function (requestParameters, initOverrides) {
116
+ return __awaiter(this, void 0, void 0, function () {
117
+ return __generator(this, function (_a) {
118
+ switch (_a.label) {
119
+ case 0: return [4 /*yield*/, this.associateOrderVisitorRaw(requestParameters, initOverrides)];
120
+ case 1:
121
+ _a.sent();
122
+ return [2 /*return*/];
123
+ }
124
+ });
125
+ });
126
+ };
78
127
  /**
79
128
  * Creates a new domain purchase order.
80
129
  * Create order
@@ -10,7 +10,11 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { CreateSubscriptionInput, CreateSubscriptionManualTransactionInput, ObjectId, SubscriptionDto, UpdateSubscriptionInput } from '../models/index';
13
+ import type { AssociateVisitorInput, CreateSubscriptionInput, CreateSubscriptionManualTransactionInput, ObjectId, SubscriptionDto, UpdateSubscriptionInput } from '../models/index';
14
+ export interface SubscriptionsPublicApiAssociateSubscriptionVisitorRequest {
15
+ subscriptionId: string;
16
+ associateVisitorInput: AssociateVisitorInput;
17
+ }
14
18
  export interface SubscriptionsPublicApiCreateSubscriptionRequest {
15
19
  createSubscriptionInput: CreateSubscriptionInput;
16
20
  }
@@ -39,6 +43,16 @@ export interface SubscriptionsPublicApiUpdateSubscriptionRequest {
39
43
  *
40
44
  */
41
45
  export declare class SubscriptionsPublicApi extends runtime.BaseAPI {
46
+ /**
47
+ * Links an umami session to the buyer behind this subscription, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
48
+ * Associate a visitor with a subscription buyer
49
+ */
50
+ associateSubscriptionVisitorRaw(requestParameters: SubscriptionsPublicApiAssociateSubscriptionVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
51
+ /**
52
+ * Links an umami session to the buyer behind this subscription, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
53
+ * Associate a visitor with a subscription buyer
54
+ */
55
+ associateSubscriptionVisitor(requestParameters: SubscriptionsPublicApiAssociateSubscriptionVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
42
56
  /**
43
57
  * Creates a new domain subscription.
44
58
  * Create subscription
@@ -75,6 +75,55 @@ var SubscriptionsPublicApi = /** @class */ (function (_super) {
75
75
  function SubscriptionsPublicApi() {
76
76
  return _super !== null && _super.apply(this, arguments) || this;
77
77
  }
78
+ /**
79
+ * Links an umami session to the buyer behind this subscription, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
80
+ * Associate a visitor with a subscription buyer
81
+ */
82
+ SubscriptionsPublicApi.prototype.associateSubscriptionVisitorRaw = function (requestParameters, initOverrides) {
83
+ return __awaiter(this, void 0, void 0, function () {
84
+ var queryParameters, headerParameters, response;
85
+ return __generator(this, function (_a) {
86
+ switch (_a.label) {
87
+ case 0:
88
+ if (requestParameters['subscriptionId'] == null) {
89
+ throw new runtime.RequiredError('subscriptionId', 'Required parameter "subscriptionId" was null or undefined when calling associateSubscriptionVisitor().');
90
+ }
91
+ if (requestParameters['associateVisitorInput'] == null) {
92
+ throw new runtime.RequiredError('associateVisitorInput', 'Required parameter "associateVisitorInput" was null or undefined when calling associateSubscriptionVisitor().');
93
+ }
94
+ queryParameters = {};
95
+ headerParameters = {};
96
+ headerParameters['Content-Type'] = 'application/json';
97
+ return [4 /*yield*/, this.request({
98
+ path: "/subscriptions/{subscriptionId}/visitor".replace("{".concat("subscriptionId", "}"), encodeURIComponent(String(requestParameters['subscriptionId']))),
99
+ method: 'POST',
100
+ headers: headerParameters,
101
+ query: queryParameters,
102
+ body: (0, index_1.AssociateVisitorInputToJSON)(requestParameters['associateVisitorInput']),
103
+ }, initOverrides)];
104
+ case 1:
105
+ response = _a.sent();
106
+ return [2 /*return*/, new runtime.VoidApiResponse(response)];
107
+ }
108
+ });
109
+ });
110
+ };
111
+ /**
112
+ * Links an umami session to the buyer behind this subscription, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
113
+ * Associate a visitor with a subscription buyer
114
+ */
115
+ SubscriptionsPublicApi.prototype.associateSubscriptionVisitor = function (requestParameters, initOverrides) {
116
+ return __awaiter(this, void 0, void 0, function () {
117
+ return __generator(this, function (_a) {
118
+ switch (_a.label) {
119
+ case 0: return [4 /*yield*/, this.associateSubscriptionVisitorRaw(requestParameters, initOverrides)];
120
+ case 1:
121
+ _a.sent();
122
+ return [2 /*return*/];
123
+ }
124
+ });
125
+ });
126
+ };
78
127
  /**
79
128
  * Creates a new domain subscription.
80
129
  * Create subscription
@@ -57,6 +57,12 @@ export interface AdminLeadListItemBuyerDto {
57
57
  * @memberof AdminLeadListItemBuyerDto
58
58
  */
59
59
  phoneNumber: string | null;
60
+ /**
61
+ * Umami session ids collected for this buyer, for cross-referencing analytics.
62
+ * @type {Array<string>}
63
+ * @memberof AdminLeadListItemBuyerDto
64
+ */
65
+ visitorIds: Array<string>;
60
66
  }
61
67
  /**
62
68
  * Check if a given object implements the AdminLeadListItemBuyerDto interface.
@@ -36,6 +36,8 @@ function instanceOfAdminLeadListItemBuyerDto(value) {
36
36
  return false;
37
37
  if (!('phoneNumber' in value) || value['phoneNumber'] === undefined)
38
38
  return false;
39
+ if (!('visitorIds' in value) || value['visitorIds'] === undefined)
40
+ return false;
39
41
  return true;
40
42
  }
41
43
  function AdminLeadListItemBuyerDtoFromJSON(json) {
@@ -53,6 +55,7 @@ function AdminLeadListItemBuyerDtoFromJSONTyped(json, ignoreDiscriminator) {
53
55
  'ipCountryCode': json['ipCountryCode'],
54
56
  'companyName': json['companyName'],
55
57
  'phoneNumber': json['phoneNumber'],
58
+ 'visitorIds': json['visitorIds'],
56
59
  };
57
60
  }
58
61
  function AdminLeadListItemBuyerDtoToJSON(json) {
@@ -71,5 +74,6 @@ function AdminLeadListItemBuyerDtoToJSONTyped(value, ignoreDiscriminator) {
71
74
  'ipCountryCode': value['ipCountryCode'],
72
75
  'companyName': value['companyName'],
73
76
  'phoneNumber': value['phoneNumber'],
77
+ 'visitorIds': value['visitorIds'],
74
78
  };
75
79
  }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Nameshift
3
+ * Nameshift domain marketplace and management API. ## Authentication - **Bearer JWT** — Seller and buyer sessions obtained via login endpoints. - **API key** — Pass the `apikey` header for programmatic seller access. ## Audiences - **(public)** tags — Unauthenticated or buyer-facing endpoints. - **Accounts / Domains / Leads / Buyers** — Seller or buyer resources. - **Partner** — Partner integrations.
4
+ *
5
+ * The version of the OpenAPI document: 1.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface AssociateVisitorInput
16
+ */
17
+ export interface AssociateVisitorInput {
18
+ /**
19
+ * Umami session id of the visitor, as reported by the tracker on the page the buyer is using.
20
+ * @type {string}
21
+ * @memberof AssociateVisitorInput
22
+ */
23
+ visitorId: string;
24
+ }
25
+ /**
26
+ * Check if a given object implements the AssociateVisitorInput interface.
27
+ */
28
+ export declare function instanceOfAssociateVisitorInput(value: object): value is AssociateVisitorInput;
29
+ export declare function AssociateVisitorInputFromJSON(json: any): AssociateVisitorInput;
30
+ export declare function AssociateVisitorInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): AssociateVisitorInput;
31
+ export declare function AssociateVisitorInputToJSON(json: any): AssociateVisitorInput;
32
+ export declare function AssociateVisitorInputToJSONTyped(value?: AssociateVisitorInput | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Nameshift
6
+ * Nameshift domain marketplace and management API. ## Authentication - **Bearer JWT** — Seller and buyer sessions obtained via login endpoints. - **API key** — Pass the `apikey` header for programmatic seller access. ## Audiences - **(public)** tags — Unauthenticated or buyer-facing endpoints. - **Accounts / Domains / Leads / Buyers** — Seller or buyer resources. - **Partner** — Partner integrations.
7
+ *
8
+ * The version of the OpenAPI document: 1.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfAssociateVisitorInput = instanceOfAssociateVisitorInput;
17
+ exports.AssociateVisitorInputFromJSON = AssociateVisitorInputFromJSON;
18
+ exports.AssociateVisitorInputFromJSONTyped = AssociateVisitorInputFromJSONTyped;
19
+ exports.AssociateVisitorInputToJSON = AssociateVisitorInputToJSON;
20
+ exports.AssociateVisitorInputToJSONTyped = AssociateVisitorInputToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the AssociateVisitorInput interface.
23
+ */
24
+ function instanceOfAssociateVisitorInput(value) {
25
+ if (!('visitorId' in value) || value['visitorId'] === undefined)
26
+ return false;
27
+ return true;
28
+ }
29
+ function AssociateVisitorInputFromJSON(json) {
30
+ return AssociateVisitorInputFromJSONTyped(json, false);
31
+ }
32
+ function AssociateVisitorInputFromJSONTyped(json, ignoreDiscriminator) {
33
+ if (json == null) {
34
+ return json;
35
+ }
36
+ return {
37
+ 'visitorId': json['visitorId'],
38
+ };
39
+ }
40
+ function AssociateVisitorInputToJSON(json) {
41
+ return AssociateVisitorInputToJSONTyped(json, false);
42
+ }
43
+ function AssociateVisitorInputToJSONTyped(value, ignoreDiscriminator) {
44
+ if (ignoreDiscriminator === void 0) { ignoreDiscriminator = false; }
45
+ if (value == null) {
46
+ return value;
47
+ }
48
+ return {
49
+ 'visitorId': value['visitorId'],
50
+ };
51
+ }
@@ -74,6 +74,7 @@ export * from './AirwallexDepositDtoFee';
74
74
  export * from './ApiKeyDto';
75
75
  export * from './ApiKeyScopeDto';
76
76
  export * from './ApplyDomainEditInput';
77
+ export * from './AssociateVisitorInput';
77
78
  export * from './AuBankAccountDetails';
78
79
  export * from './AuctionBidDto';
79
80
  export * from './AuctionBidInput';
@@ -92,6 +92,7 @@ __exportStar(require("./AirwallexDepositDtoFee"), exports);
92
92
  __exportStar(require("./ApiKeyDto"), exports);
93
93
  __exportStar(require("./ApiKeyScopeDto"), exports);
94
94
  __exportStar(require("./ApplyDomainEditInput"), exports);
95
+ __exportStar(require("./AssociateVisitorInput"), exports);
95
96
  __exportStar(require("./AuBankAccountDetails"), exports);
96
97
  __exportStar(require("./AuctionBidDto"), exports);
97
98
  __exportStar(require("./AuctionBidInput"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@randock/nameshift-api-client",
3
- "version": "0.0.464",
3
+ "version": "0.0.466",
4
4
  "description": "OpenAPI client for @randock/nameshift-api-client",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -15,6 +15,7 @@
15
15
 
16
16
  import * as runtime from '../runtime';
17
17
  import type {
18
+ AssociateVisitorInput,
18
19
  BadRequestException,
19
20
  CreateLeadInput,
20
21
  LeadStatusDto,
@@ -26,6 +27,8 @@ import type {
26
27
  VerifyLeadInput,
27
28
  } from '../models/index';
28
29
  import {
30
+ AssociateVisitorInputFromJSON,
31
+ AssociateVisitorInputToJSON,
29
32
  BadRequestExceptionFromJSON,
30
33
  BadRequestExceptionToJSON,
31
34
  CreateLeadInputFromJSON,
@@ -46,6 +49,11 @@ import {
46
49
  VerifyLeadInputToJSON,
47
50
  } from '../models/index';
48
51
 
52
+ export interface LeadsPublicApiAssociateLeadVisitorRequest {
53
+ leadId: string;
54
+ associateVisitorInput: AssociateVisitorInput;
55
+ }
56
+
49
57
  export interface LeadsPublicApiCreateLeadRequest {
50
58
  createLeadInput: CreateLeadInput;
51
59
  }
@@ -77,6 +85,50 @@ export interface LeadsPublicApiVerifyLeadRequest {
77
85
  */
78
86
  export class LeadsPublicApi extends runtime.BaseAPI {
79
87
 
88
+ /**
89
+ * Links an umami session to the buyer behind this lead, so their analytics sessions can be cross-referenced once their email is known. Safe to call repeatedly; the same session is only stored once. No authentication required.
90
+ * Associate a visitor with a lead buyer
91
+ */
92
+ async associateLeadVisitorRaw(requestParameters: LeadsPublicApiAssociateLeadVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
93
+ if (requestParameters['leadId'] == null) {
94
+ throw new runtime.RequiredError(
95
+ 'leadId',
96
+ 'Required parameter "leadId" was null or undefined when calling associateLeadVisitor().'
97
+ );
98
+ }
99
+
100
+ if (requestParameters['associateVisitorInput'] == null) {
101
+ throw new runtime.RequiredError(
102
+ 'associateVisitorInput',
103
+ 'Required parameter "associateVisitorInput" was null or undefined when calling associateLeadVisitor().'
104
+ );
105
+ }
106
+
107
+ const queryParameters: any = {};
108
+
109
+ const headerParameters: runtime.HTTPHeaders = {};
110
+
111
+ headerParameters['Content-Type'] = 'application/json';
112
+
113
+ const response = await this.request({
114
+ path: `/leads/{leadId}/visitor`.replace(`{${"leadId"}}`, encodeURIComponent(String(requestParameters['leadId']))),
115
+ method: 'POST',
116
+ headers: headerParameters,
117
+ query: queryParameters,
118
+ body: AssociateVisitorInputToJSON(requestParameters['associateVisitorInput']),
119
+ }, initOverrides);
120
+
121
+ return new runtime.VoidApiResponse(response);
122
+ }
123
+
124
+ /**
125
+ * Links an umami session to the buyer behind this lead, so their analytics sessions can be cross-referenced once their email is known. Safe to call repeatedly; the same session is only stored once. No authentication required.
126
+ * Associate a visitor with a lead buyer
127
+ */
128
+ async associateLeadVisitor(requestParameters: LeadsPublicApiAssociateLeadVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
129
+ await this.associateLeadVisitorRaw(requestParameters, initOverrides);
130
+ }
131
+
80
132
  /**
81
133
  * Submits a purchase inquiry for a domain. No authentication required. May be processed synchronously or asynchronously.
82
134
  * Create a lead
@@ -15,6 +15,7 @@
15
15
 
16
16
  import * as runtime from '../runtime';
17
17
  import type {
18
+ AssociateVisitorInput,
18
19
  BadRequestException,
19
20
  CreateManualTransactionInput,
20
21
  CreateOrderInput,
@@ -25,6 +26,8 @@ import type {
25
26
  ValidationException,
26
27
  } from '../models/index';
27
28
  import {
29
+ AssociateVisitorInputFromJSON,
30
+ AssociateVisitorInputToJSON,
28
31
  BadRequestExceptionFromJSON,
29
32
  BadRequestExceptionToJSON,
30
33
  CreateManualTransactionInputFromJSON,
@@ -43,6 +46,11 @@ import {
43
46
  ValidationExceptionToJSON,
44
47
  } from '../models/index';
45
48
 
49
+ export interface OrdersPublicApiAssociateOrderVisitorRequest {
50
+ orderId: string;
51
+ associateVisitorInput: AssociateVisitorInput;
52
+ }
53
+
46
54
  export interface OrdersPublicApiCreateOrderRequest {
47
55
  createOrderInput: CreateOrderInput;
48
56
  }
@@ -71,6 +79,50 @@ export interface OrdersPublicApiUpdateOrderRequest {
71
79
  */
72
80
  export class OrdersPublicApi extends runtime.BaseAPI {
73
81
 
82
+ /**
83
+ * Links an umami session to the buyer behind this order, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
84
+ * Associate a visitor with an order buyer
85
+ */
86
+ async associateOrderVisitorRaw(requestParameters: OrdersPublicApiAssociateOrderVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
87
+ if (requestParameters['orderId'] == null) {
88
+ throw new runtime.RequiredError(
89
+ 'orderId',
90
+ 'Required parameter "orderId" was null or undefined when calling associateOrderVisitor().'
91
+ );
92
+ }
93
+
94
+ if (requestParameters['associateVisitorInput'] == null) {
95
+ throw new runtime.RequiredError(
96
+ 'associateVisitorInput',
97
+ 'Required parameter "associateVisitorInput" was null or undefined when calling associateOrderVisitor().'
98
+ );
99
+ }
100
+
101
+ const queryParameters: any = {};
102
+
103
+ const headerParameters: runtime.HTTPHeaders = {};
104
+
105
+ headerParameters['Content-Type'] = 'application/json';
106
+
107
+ const response = await this.request({
108
+ path: `/orders/{orderId}/visitor`.replace(`{${"orderId"}}`, encodeURIComponent(String(requestParameters['orderId']))),
109
+ method: 'POST',
110
+ headers: headerParameters,
111
+ query: queryParameters,
112
+ body: AssociateVisitorInputToJSON(requestParameters['associateVisitorInput']),
113
+ }, initOverrides);
114
+
115
+ return new runtime.VoidApiResponse(response);
116
+ }
117
+
118
+ /**
119
+ * Links an umami session to the buyer behind this order, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
120
+ * Associate a visitor with an order buyer
121
+ */
122
+ async associateOrderVisitor(requestParameters: OrdersPublicApiAssociateOrderVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
123
+ await this.associateOrderVisitorRaw(requestParameters, initOverrides);
124
+ }
125
+
74
126
  /**
75
127
  * Creates a new domain purchase order.
76
128
  * Create order
@@ -15,6 +15,7 @@
15
15
 
16
16
  import * as runtime from '../runtime';
17
17
  import type {
18
+ AssociateVisitorInput,
18
19
  BadRequestException,
19
20
  CreateSubscriptionInput,
20
21
  CreateSubscriptionManualTransactionInput,
@@ -25,6 +26,8 @@ import type {
25
26
  ValidationException,
26
27
  } from '../models/index';
27
28
  import {
29
+ AssociateVisitorInputFromJSON,
30
+ AssociateVisitorInputToJSON,
28
31
  BadRequestExceptionFromJSON,
29
32
  BadRequestExceptionToJSON,
30
33
  CreateSubscriptionInputFromJSON,
@@ -43,6 +46,11 @@ import {
43
46
  ValidationExceptionToJSON,
44
47
  } from '../models/index';
45
48
 
49
+ export interface SubscriptionsPublicApiAssociateSubscriptionVisitorRequest {
50
+ subscriptionId: string;
51
+ associateVisitorInput: AssociateVisitorInput;
52
+ }
53
+
46
54
  export interface SubscriptionsPublicApiCreateSubscriptionRequest {
47
55
  createSubscriptionInput: CreateSubscriptionInput;
48
56
  }
@@ -78,6 +86,50 @@ export interface SubscriptionsPublicApiUpdateSubscriptionRequest {
78
86
  */
79
87
  export class SubscriptionsPublicApi extends runtime.BaseAPI {
80
88
 
89
+ /**
90
+ * Links an umami session to the buyer behind this subscription, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
91
+ * Associate a visitor with a subscription buyer
92
+ */
93
+ async associateSubscriptionVisitorRaw(requestParameters: SubscriptionsPublicApiAssociateSubscriptionVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
94
+ if (requestParameters['subscriptionId'] == null) {
95
+ throw new runtime.RequiredError(
96
+ 'subscriptionId',
97
+ 'Required parameter "subscriptionId" was null or undefined when calling associateSubscriptionVisitor().'
98
+ );
99
+ }
100
+
101
+ if (requestParameters['associateVisitorInput'] == null) {
102
+ throw new runtime.RequiredError(
103
+ 'associateVisitorInput',
104
+ 'Required parameter "associateVisitorInput" was null or undefined when calling associateSubscriptionVisitor().'
105
+ );
106
+ }
107
+
108
+ const queryParameters: any = {};
109
+
110
+ const headerParameters: runtime.HTTPHeaders = {};
111
+
112
+ headerParameters['Content-Type'] = 'application/json';
113
+
114
+ const response = await this.request({
115
+ path: `/subscriptions/{subscriptionId}/visitor`.replace(`{${"subscriptionId"}}`, encodeURIComponent(String(requestParameters['subscriptionId']))),
116
+ method: 'POST',
117
+ headers: headerParameters,
118
+ query: queryParameters,
119
+ body: AssociateVisitorInputToJSON(requestParameters['associateVisitorInput']),
120
+ }, initOverrides);
121
+
122
+ return new runtime.VoidApiResponse(response);
123
+ }
124
+
125
+ /**
126
+ * Links an umami session to the buyer behind this subscription, so their analytics sessions can be cross-referenced. Safe to call repeatedly. No authentication required.
127
+ * Associate a visitor with a subscription buyer
128
+ */
129
+ async associateSubscriptionVisitor(requestParameters: SubscriptionsPublicApiAssociateSubscriptionVisitorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
130
+ await this.associateSubscriptionVisitorRaw(requestParameters, initOverrides);
131
+ }
132
+
81
133
  /**
82
134
  * Creates a new domain subscription.
83
135
  * Create subscription
@@ -61,6 +61,12 @@ export interface AdminLeadListItemBuyerDto {
61
61
  * @memberof AdminLeadListItemBuyerDto
62
62
  */
63
63
  phoneNumber: string | null;
64
+ /**
65
+ * Umami session ids collected for this buyer, for cross-referencing analytics.
66
+ * @type {Array<string>}
67
+ * @memberof AdminLeadListItemBuyerDto
68
+ */
69
+ visitorIds: Array<string>;
64
70
  }
65
71
 
66
72
  /**
@@ -74,6 +80,7 @@ export function instanceOfAdminLeadListItemBuyerDto(value: object): value is Adm
74
80
  if (!('ipCountryCode' in value) || value['ipCountryCode'] === undefined) return false;
75
81
  if (!('companyName' in value) || value['companyName'] === undefined) return false;
76
82
  if (!('phoneNumber' in value) || value['phoneNumber'] === undefined) return false;
83
+ if (!('visitorIds' in value) || value['visitorIds'] === undefined) return false;
77
84
  return true;
78
85
  }
79
86
 
@@ -94,6 +101,7 @@ export function AdminLeadListItemBuyerDtoFromJSONTyped(json: any, ignoreDiscrimi
94
101
  'ipCountryCode': json['ipCountryCode'],
95
102
  'companyName': json['companyName'],
96
103
  'phoneNumber': json['phoneNumber'],
104
+ 'visitorIds': json['visitorIds'],
97
105
  };
98
106
  }
99
107
 
@@ -115,6 +123,7 @@ export function AdminLeadListItemBuyerDtoToJSONTyped(value?: AdminLeadListItemBu
115
123
  'ipCountryCode': value['ipCountryCode'],
116
124
  'companyName': value['companyName'],
117
125
  'phoneNumber': value['phoneNumber'],
126
+ 'visitorIds': value['visitorIds'],
118
127
  };
119
128
  }
120
129
 
@@ -0,0 +1,66 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Nameshift
5
+ * Nameshift domain marketplace and management API. ## Authentication - **Bearer JWT** — Seller and buyer sessions obtained via login endpoints. - **API key** — Pass the `apikey` header for programmatic seller access. ## Audiences - **(public)** tags — Unauthenticated or buyer-facing endpoints. - **Accounts / Domains / Leads / Buyers** — Seller or buyer resources. - **Partner** — Partner integrations.
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface AssociateVisitorInput
20
+ */
21
+ export interface AssociateVisitorInput {
22
+ /**
23
+ * Umami session id of the visitor, as reported by the tracker on the page the buyer is using.
24
+ * @type {string}
25
+ * @memberof AssociateVisitorInput
26
+ */
27
+ visitorId: string;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the AssociateVisitorInput interface.
32
+ */
33
+ export function instanceOfAssociateVisitorInput(value: object): value is AssociateVisitorInput {
34
+ if (!('visitorId' in value) || value['visitorId'] === undefined) return false;
35
+ return true;
36
+ }
37
+
38
+ export function AssociateVisitorInputFromJSON(json: any): AssociateVisitorInput {
39
+ return AssociateVisitorInputFromJSONTyped(json, false);
40
+ }
41
+
42
+ export function AssociateVisitorInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): AssociateVisitorInput {
43
+ if (json == null) {
44
+ return json;
45
+ }
46
+ return {
47
+
48
+ 'visitorId': json['visitorId'],
49
+ };
50
+ }
51
+
52
+ export function AssociateVisitorInputToJSON(json: any): AssociateVisitorInput {
53
+ return AssociateVisitorInputToJSONTyped(json, false);
54
+ }
55
+
56
+ export function AssociateVisitorInputToJSONTyped(value?: AssociateVisitorInput | null, ignoreDiscriminator: boolean = false): any {
57
+ if (value == null) {
58
+ return value;
59
+ }
60
+
61
+ return {
62
+
63
+ 'visitorId': value['visitorId'],
64
+ };
65
+ }
66
+
@@ -76,6 +76,7 @@ export * from './AirwallexDepositDtoFee';
76
76
  export * from './ApiKeyDto';
77
77
  export * from './ApiKeyScopeDto';
78
78
  export * from './ApplyDomainEditInput';
79
+ export * from './AssociateVisitorInput';
79
80
  export * from './AuBankAccountDetails';
80
81
  export * from './AuctionBidDto';
81
82
  export * from './AuctionBidInput';