@randock/nameshift-api-client 0.0.505 → 0.0.506

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.
Files changed (36) hide show
  1. package/.openapi-generator/FILES +9 -0
  2. package/README.md +3 -3
  3. package/dist/apis/AdminApi.d.ts +113 -1
  4. package/dist/apis/AdminApi.js +500 -0
  5. package/dist/models/AdminUserNewsletterInput.d.ts +41 -0
  6. package/dist/models/AdminUserNewsletterInput.js +60 -0
  7. package/dist/models/CreateNewsletterInput.d.ts +171 -0
  8. package/dist/models/CreateNewsletterInput.js +98 -0
  9. package/dist/models/NewsStoryDto.d.ts +80 -0
  10. package/dist/models/NewsStoryDto.js +83 -0
  11. package/dist/models/NewsletterDto.d.ts +251 -0
  12. package/dist/models/NewsletterDto.js +200 -0
  13. package/dist/models/NewsletterPreviewDto.d.ts +44 -0
  14. package/dist/models/NewsletterPreviewDto.js +59 -0
  15. package/dist/models/NewsletterSecondaryStoryDto.d.ts +44 -0
  16. package/dist/models/NewsletterSecondaryStoryDto.js +59 -0
  17. package/dist/models/NewsletterSecondaryStoryInput.d.ts +44 -0
  18. package/dist/models/NewsletterSecondaryStoryInput.js +59 -0
  19. package/dist/models/SendNewsletterPreviewInput.d.ts +32 -0
  20. package/dist/models/SendNewsletterPreviewInput.js +51 -0
  21. package/dist/models/UpdateNewsletterInput.d.ts +171 -0
  22. package/dist/models/UpdateNewsletterInput.js +96 -0
  23. package/dist/models/index.d.ts +9 -0
  24. package/dist/models/index.js +9 -0
  25. package/package.json +1 -1
  26. package/src/apis/AdminApi.ts +454 -0
  27. package/src/models/AdminUserNewsletterInput.ts +78 -0
  28. package/src/models/CreateNewsletterInput.ts +258 -0
  29. package/src/models/NewsStoryDto.ts +138 -0
  30. package/src/models/NewsletterDto.ts +400 -0
  31. package/src/models/NewsletterPreviewDto.ts +84 -0
  32. package/src/models/NewsletterSecondaryStoryDto.ts +84 -0
  33. package/src/models/NewsletterSecondaryStoryInput.ts +84 -0
  34. package/src/models/SendNewsletterPreviewInput.ts +66 -0
  35. package/src/models/UpdateNewsletterInput.ts +257 -0
  36. package/src/models/index.ts +9 -0
@@ -28,6 +28,7 @@ import type {
28
28
  AdminGetAllDomainTransfers200Response,
29
29
  AdminLandingDesignStatsDto,
30
30
  AdminMarketplaceDto,
31
+ AdminUserNewsletterInput,
31
32
  AdminUserSecurityDto,
32
33
  BadRequestException,
33
34
  BulkCommissionActionsInput,
@@ -39,6 +40,7 @@ import type {
39
40
  ConflictException,
40
41
  CreateAccountNoteInput,
41
42
  CreateChallengeInput,
43
+ CreateNewsletterInput,
42
44
  DomainLockDto,
43
45
  DomainStatsDto,
44
46
  DomainTldsDto,
@@ -67,6 +69,9 @@ import type {
67
69
  ListLeadMessagesDto,
68
70
  ListLeads200Response,
69
71
  ListUserLoginAttempts200Response,
72
+ NewsStoryDto,
73
+ NewsletterDto,
74
+ NewsletterPreviewDto,
70
75
  ObjectId,
71
76
  PaySellerInvoicesInput,
72
77
  SellerLeadDetails,
@@ -74,6 +79,7 @@ import type {
74
79
  SellerSalesByTldStatsItemDto,
75
80
  SellerSalesCountStatsItemDto,
76
81
  SendAdminLeadAiPriceNegotiatorAgentChatMessageInput,
82
+ SendNewsletterPreviewInput,
77
83
  SimulateCommissionInput,
78
84
  StatsFilterInputDateRange,
79
85
  SubscriptionDetailsDto,
@@ -84,6 +90,7 @@ import type {
84
90
  UpdateChallengeInput,
85
91
  UpdateFeatureFlagInput,
86
92
  UpdateMarketplaceInput,
93
+ UpdateNewsletterInput,
87
94
  UpdateSubscriptionBuyerInformationInput,
88
95
  ValidationException,
89
96
  } from '../models/index';
@@ -114,6 +121,8 @@ import {
114
121
  AdminLandingDesignStatsDtoToJSON,
115
122
  AdminMarketplaceDtoFromJSON,
116
123
  AdminMarketplaceDtoToJSON,
124
+ AdminUserNewsletterInputFromJSON,
125
+ AdminUserNewsletterInputToJSON,
117
126
  AdminUserSecurityDtoFromJSON,
118
127
  AdminUserSecurityDtoToJSON,
119
128
  BadRequestExceptionFromJSON,
@@ -136,6 +145,8 @@ import {
136
145
  CreateAccountNoteInputToJSON,
137
146
  CreateChallengeInputFromJSON,
138
147
  CreateChallengeInputToJSON,
148
+ CreateNewsletterInputFromJSON,
149
+ CreateNewsletterInputToJSON,
139
150
  DomainLockDtoFromJSON,
140
151
  DomainLockDtoToJSON,
141
152
  DomainStatsDtoFromJSON,
@@ -192,6 +203,12 @@ import {
192
203
  ListLeads200ResponseToJSON,
193
204
  ListUserLoginAttempts200ResponseFromJSON,
194
205
  ListUserLoginAttempts200ResponseToJSON,
206
+ NewsStoryDtoFromJSON,
207
+ NewsStoryDtoToJSON,
208
+ NewsletterDtoFromJSON,
209
+ NewsletterDtoToJSON,
210
+ NewsletterPreviewDtoFromJSON,
211
+ NewsletterPreviewDtoToJSON,
195
212
  ObjectIdFromJSON,
196
213
  ObjectIdToJSON,
197
214
  PaySellerInvoicesInputFromJSON,
@@ -206,6 +223,8 @@ import {
206
223
  SellerSalesCountStatsItemDtoToJSON,
207
224
  SendAdminLeadAiPriceNegotiatorAgentChatMessageInputFromJSON,
208
225
  SendAdminLeadAiPriceNegotiatorAgentChatMessageInputToJSON,
226
+ SendNewsletterPreviewInputFromJSON,
227
+ SendNewsletterPreviewInputToJSON,
209
228
  SimulateCommissionInputFromJSON,
210
229
  SimulateCommissionInputToJSON,
211
230
  StatsFilterInputDateRangeFromJSON,
@@ -226,6 +245,8 @@ import {
226
245
  UpdateFeatureFlagInputToJSON,
227
246
  UpdateMarketplaceInputFromJSON,
228
247
  UpdateMarketplaceInputToJSON,
248
+ UpdateNewsletterInputFromJSON,
249
+ UpdateNewsletterInputToJSON,
229
250
  UpdateSubscriptionBuyerInformationInputFromJSON,
230
251
  UpdateSubscriptionBuyerInformationInputToJSON,
231
252
  ValidationExceptionFromJSON,
@@ -295,6 +316,10 @@ export interface AdminApiCreateNegativeInvoiceRequest {
295
316
  invoiceId: string;
296
317
  }
297
318
 
319
+ export interface AdminApiCreateNewsletterRequest {
320
+ createNewsletterInput: CreateNewsletterInput;
321
+ }
322
+
298
323
  export interface AdminApiDeleteAccountNoteRequest {
299
324
  accountId: string;
300
325
  noteId: string;
@@ -442,6 +467,10 @@ export interface AdminApiGetLedgerMutationAttachmentRequest {
442
467
  attachmentId: string;
443
468
  }
444
469
 
470
+ export interface AdminApiGetNewsletterRequest {
471
+ newsletterId: string;
472
+ }
473
+
445
474
  export interface AdminApiGetSubscriptionDetailsRequest {
446
475
  subscriptionId: string;
447
476
  }
@@ -586,6 +615,14 @@ export interface AdminApiPostAiPriceNegotiatorAgentChatMessageRequest {
586
615
  sendAdminLeadAiPriceNegotiatorAgentChatMessageInput: SendAdminLeadAiPriceNegotiatorAgentChatMessageInput;
587
616
  }
588
617
 
618
+ export interface AdminApiPrepareNewsletterRequest {
619
+ newsletterId: string;
620
+ }
621
+
622
+ export interface AdminApiPreviewNewsletterRequest {
623
+ newsletterId: string;
624
+ }
625
+
589
626
  export interface AdminApiPreviewSellerPayoutRequest {
590
627
  paySellerInvoicesInput: PaySellerInvoicesInput;
591
628
  }
@@ -615,6 +652,11 @@ export interface AdminApiResetUserSecondFactorsRequest {
615
652
  userId: string;
616
653
  }
617
654
 
655
+ export interface AdminApiSendNewsletterTestRequest {
656
+ newsletterId: string;
657
+ sendNewsletterPreviewInput: SendNewsletterPreviewInput;
658
+ }
659
+
618
660
  export interface AdminApiShowcaseDomainRequest {
619
661
  domainId: string;
620
662
  }
@@ -670,11 +712,21 @@ export interface AdminApiUpdateMarketplaceRequest {
670
712
  updateMarketplaceInput: UpdateMarketplaceInput;
671
713
  }
672
714
 
715
+ export interface AdminApiUpdateNewsletterRequest {
716
+ newsletterId: string;
717
+ updateNewsletterInput: UpdateNewsletterInput;
718
+ }
719
+
673
720
  export interface AdminApiUpdateSubscriptionBuyerInformationRequest {
674
721
  subscriptionId: string;
675
722
  updateSubscriptionBuyerInformationInput: UpdateSubscriptionBuyerInformationInput;
676
723
  }
677
724
 
725
+ export interface AdminApiUpdateUserNewsletterStatusRequest {
726
+ userId: object;
727
+ adminUserNewsletterInput: AdminUserNewsletterInput;
728
+ }
729
+
678
730
  export interface AdminApiVerifyAccountAliasRequest {
679
731
  accountId: string;
680
732
  }
@@ -1319,6 +1371,52 @@ export class AdminApi extends runtime.BaseAPI {
1319
1371
  return await response.value();
1320
1372
  }
1321
1373
 
1374
+ /**
1375
+ * Creates a draft issue with the default closing band and footer; everything can be edited afterwards.
1376
+ * Start a newsletter
1377
+ */
1378
+ async createNewsletterRaw(requestParameters: AdminApiCreateNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NewsletterDto>> {
1379
+ if (requestParameters['createNewsletterInput'] == null) {
1380
+ throw new runtime.RequiredError(
1381
+ 'createNewsletterInput',
1382
+ 'Required parameter "createNewsletterInput" was null or undefined when calling createNewsletter().'
1383
+ );
1384
+ }
1385
+
1386
+ const queryParameters: any = {};
1387
+
1388
+ const headerParameters: runtime.HTTPHeaders = {};
1389
+
1390
+ headerParameters['Content-Type'] = 'application/json';
1391
+
1392
+ if (this.configuration && this.configuration.accessToken) {
1393
+ const token = this.configuration.accessToken;
1394
+ const tokenString = await token("bearer", []);
1395
+
1396
+ if (tokenString) {
1397
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
1398
+ }
1399
+ }
1400
+ const response = await this.request({
1401
+ path: `/admin/newsletters`,
1402
+ method: 'POST',
1403
+ headers: headerParameters,
1404
+ query: queryParameters,
1405
+ body: CreateNewsletterInputToJSON(requestParameters['createNewsletterInput']),
1406
+ }, initOverrides);
1407
+
1408
+ return new runtime.JSONApiResponse(response, (jsonValue) => NewsletterDtoFromJSON(jsonValue));
1409
+ }
1410
+
1411
+ /**
1412
+ * Creates a draft issue with the default closing band and footer; everything can be edited afterwards.
1413
+ * Start a newsletter
1414
+ */
1415
+ async createNewsletter(requestParameters: AdminApiCreateNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NewsletterDto> {
1416
+ const response = await this.createNewsletterRaw(requestParameters, initOverrides);
1417
+ return await response.value();
1418
+ }
1419
+
1322
1420
  /**
1323
1421
  * Soft-deletes a note. Only its author, or a super admin, may do so.
1324
1422
  * Delete account note
@@ -2622,6 +2720,47 @@ export class AdminApi extends runtime.BaseAPI {
2622
2720
  return await response.value();
2623
2721
  }
2624
2722
 
2723
+ /**
2724
+ * Get a newsletter
2725
+ */
2726
+ async getNewsletterRaw(requestParameters: AdminApiGetNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NewsletterDto>> {
2727
+ if (requestParameters['newsletterId'] == null) {
2728
+ throw new runtime.RequiredError(
2729
+ 'newsletterId',
2730
+ 'Required parameter "newsletterId" was null or undefined when calling getNewsletter().'
2731
+ );
2732
+ }
2733
+
2734
+ const queryParameters: any = {};
2735
+
2736
+ const headerParameters: runtime.HTTPHeaders = {};
2737
+
2738
+ if (this.configuration && this.configuration.accessToken) {
2739
+ const token = this.configuration.accessToken;
2740
+ const tokenString = await token("bearer", []);
2741
+
2742
+ if (tokenString) {
2743
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
2744
+ }
2745
+ }
2746
+ const response = await this.request({
2747
+ path: `/admin/newsletters/{newsletterId}`.replace(`{${"newsletterId"}}`, encodeURIComponent(String(requestParameters['newsletterId']))),
2748
+ method: 'GET',
2749
+ headers: headerParameters,
2750
+ query: queryParameters,
2751
+ }, initOverrides);
2752
+
2753
+ return new runtime.JSONApiResponse(response, (jsonValue) => NewsletterDtoFromJSON(jsonValue));
2754
+ }
2755
+
2756
+ /**
2757
+ * Get a newsletter
2758
+ */
2759
+ async getNewsletter(requestParameters: AdminApiGetNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NewsletterDto> {
2760
+ const response = await this.getNewsletterRaw(requestParameters, initOverrides);
2761
+ return await response.value();
2762
+ }
2763
+
2625
2764
  /**
2626
2765
  * Returns subscription information.
2627
2766
  * Get subscription details
@@ -3572,6 +3711,78 @@ export class AdminApi extends runtime.BaseAPI {
3572
3711
  return await response.value();
3573
3712
  }
3574
3713
 
3714
+ /**
3715
+ * The published news articles, newest first.
3716
+ * List the blog posts a newsletter can pick
3717
+ */
3718
+ async listNewsletterStoriesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NewsStoryDto>>> {
3719
+ const queryParameters: any = {};
3720
+
3721
+ const headerParameters: runtime.HTTPHeaders = {};
3722
+
3723
+ if (this.configuration && this.configuration.accessToken) {
3724
+ const token = this.configuration.accessToken;
3725
+ const tokenString = await token("bearer", []);
3726
+
3727
+ if (tokenString) {
3728
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
3729
+ }
3730
+ }
3731
+ const response = await this.request({
3732
+ path: `/admin/newsletters/stories`,
3733
+ method: 'GET',
3734
+ headers: headerParameters,
3735
+ query: queryParameters,
3736
+ }, initOverrides);
3737
+
3738
+ return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NewsStoryDtoFromJSON));
3739
+ }
3740
+
3741
+ /**
3742
+ * The published news articles, newest first.
3743
+ * List the blog posts a newsletter can pick
3744
+ */
3745
+ async listNewsletterStories(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NewsStoryDto>> {
3746
+ const response = await this.listNewsletterStoriesRaw(initOverrides);
3747
+ return await response.value();
3748
+ }
3749
+
3750
+ /**
3751
+ * Every newsletter issue, newest first.
3752
+ * List newsletters
3753
+ */
3754
+ async listNewslettersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NewsletterDto>>> {
3755
+ const queryParameters: any = {};
3756
+
3757
+ const headerParameters: runtime.HTTPHeaders = {};
3758
+
3759
+ if (this.configuration && this.configuration.accessToken) {
3760
+ const token = this.configuration.accessToken;
3761
+ const tokenString = await token("bearer", []);
3762
+
3763
+ if (tokenString) {
3764
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
3765
+ }
3766
+ }
3767
+ const response = await this.request({
3768
+ path: `/admin/newsletters`,
3769
+ method: 'GET',
3770
+ headers: headerParameters,
3771
+ query: queryParameters,
3772
+ }, initOverrides);
3773
+
3774
+ return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NewsletterDtoFromJSON));
3775
+ }
3776
+
3777
+ /**
3778
+ * Every newsletter issue, newest first.
3779
+ * List newsletters
3780
+ */
3781
+ async listNewsletters(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NewsletterDto>> {
3782
+ const response = await this.listNewslettersRaw(initOverrides);
3783
+ return await response.value();
3784
+ }
3785
+
3575
3786
  /**
3576
3787
  * List the sign-ins of a user
3577
3788
  */
@@ -3954,6 +4165,92 @@ export class AdminApi extends runtime.BaseAPI {
3954
4165
  return await response.value();
3955
4166
  }
3956
4167
 
4168
+ /**
4169
+ * Creates the Mailchimp draft campaign, or refreshes the existing one, with the current render. The campaign is never sent or scheduled from here.
4170
+ * Prepare the newsletter in Mailchimp
4171
+ */
4172
+ async prepareNewsletterRaw(requestParameters: AdminApiPrepareNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NewsletterDto>> {
4173
+ if (requestParameters['newsletterId'] == null) {
4174
+ throw new runtime.RequiredError(
4175
+ 'newsletterId',
4176
+ 'Required parameter "newsletterId" was null or undefined when calling prepareNewsletter().'
4177
+ );
4178
+ }
4179
+
4180
+ const queryParameters: any = {};
4181
+
4182
+ const headerParameters: runtime.HTTPHeaders = {};
4183
+
4184
+ if (this.configuration && this.configuration.accessToken) {
4185
+ const token = this.configuration.accessToken;
4186
+ const tokenString = await token("bearer", []);
4187
+
4188
+ if (tokenString) {
4189
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
4190
+ }
4191
+ }
4192
+ const response = await this.request({
4193
+ path: `/admin/newsletters/{newsletterId}/prepare`.replace(`{${"newsletterId"}}`, encodeURIComponent(String(requestParameters['newsletterId']))),
4194
+ method: 'POST',
4195
+ headers: headerParameters,
4196
+ query: queryParameters,
4197
+ }, initOverrides);
4198
+
4199
+ return new runtime.JSONApiResponse(response, (jsonValue) => NewsletterDtoFromJSON(jsonValue));
4200
+ }
4201
+
4202
+ /**
4203
+ * Creates the Mailchimp draft campaign, or refreshes the existing one, with the current render. The campaign is never sent or scheduled from here.
4204
+ * Prepare the newsletter in Mailchimp
4205
+ */
4206
+ async prepareNewsletter(requestParameters: AdminApiPrepareNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NewsletterDto> {
4207
+ const response = await this.prepareNewsletterRaw(requestParameters, initOverrides);
4208
+ return await response.value();
4209
+ }
4210
+
4211
+ /**
4212
+ * The email as it would go to Mailchimp, with the merge tags replaced by placeholders, for the live preview.
4213
+ * Render a newsletter
4214
+ */
4215
+ async previewNewsletterRaw(requestParameters: AdminApiPreviewNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NewsletterPreviewDto>> {
4216
+ if (requestParameters['newsletterId'] == null) {
4217
+ throw new runtime.RequiredError(
4218
+ 'newsletterId',
4219
+ 'Required parameter "newsletterId" was null or undefined when calling previewNewsletter().'
4220
+ );
4221
+ }
4222
+
4223
+ const queryParameters: any = {};
4224
+
4225
+ const headerParameters: runtime.HTTPHeaders = {};
4226
+
4227
+ if (this.configuration && this.configuration.accessToken) {
4228
+ const token = this.configuration.accessToken;
4229
+ const tokenString = await token("bearer", []);
4230
+
4231
+ if (tokenString) {
4232
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
4233
+ }
4234
+ }
4235
+ const response = await this.request({
4236
+ path: `/admin/newsletters/{newsletterId}/preview`.replace(`{${"newsletterId"}}`, encodeURIComponent(String(requestParameters['newsletterId']))),
4237
+ method: 'POST',
4238
+ headers: headerParameters,
4239
+ query: queryParameters,
4240
+ }, initOverrides);
4241
+
4242
+ return new runtime.JSONApiResponse(response, (jsonValue) => NewsletterPreviewDtoFromJSON(jsonValue));
4243
+ }
4244
+
4245
+ /**
4246
+ * The email as it would go to Mailchimp, with the merge tags replaced by placeholders, for the live preview.
4247
+ * Render a newsletter
4248
+ */
4249
+ async previewNewsletter(requestParameters: AdminApiPreviewNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NewsletterPreviewDto> {
4250
+ const response = await this.previewNewsletterRaw(requestParameters, initOverrides);
4251
+ return await response.value();
4252
+ }
4253
+
3957
4254
  /**
3958
4255
  * Tells what paying these invoices out together would do, without doing it: the bank account the transfer goes to, and the fee taken out of what the seller receives. Refuses what paying them would refuse.
3959
4256
  * Preview a payout of seller invoices
@@ -4259,6 +4556,58 @@ export class AdminApi extends runtime.BaseAPI {
4259
4556
  await this.resetUserSecondFactorsRaw(requestParameters, initOverrides);
4260
4557
  }
4261
4558
 
4559
+ /**
4560
+ * Sends the current render to one address through the normal mailer, subject prefixed with [Preview]. Not a Mailchimp send.
4561
+ * Mail a preview of the newsletter
4562
+ */
4563
+ async sendNewsletterTestRaw(requestParameters: AdminApiSendNewsletterTestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
4564
+ if (requestParameters['newsletterId'] == null) {
4565
+ throw new runtime.RequiredError(
4566
+ 'newsletterId',
4567
+ 'Required parameter "newsletterId" was null or undefined when calling sendNewsletterTest().'
4568
+ );
4569
+ }
4570
+
4571
+ if (requestParameters['sendNewsletterPreviewInput'] == null) {
4572
+ throw new runtime.RequiredError(
4573
+ 'sendNewsletterPreviewInput',
4574
+ 'Required parameter "sendNewsletterPreviewInput" was null or undefined when calling sendNewsletterTest().'
4575
+ );
4576
+ }
4577
+
4578
+ const queryParameters: any = {};
4579
+
4580
+ const headerParameters: runtime.HTTPHeaders = {};
4581
+
4582
+ headerParameters['Content-Type'] = 'application/json';
4583
+
4584
+ if (this.configuration && this.configuration.accessToken) {
4585
+ const token = this.configuration.accessToken;
4586
+ const tokenString = await token("bearer", []);
4587
+
4588
+ if (tokenString) {
4589
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
4590
+ }
4591
+ }
4592
+ const response = await this.request({
4593
+ path: `/admin/newsletters/{newsletterId}/send-test`.replace(`{${"newsletterId"}}`, encodeURIComponent(String(requestParameters['newsletterId']))),
4594
+ method: 'POST',
4595
+ headers: headerParameters,
4596
+ query: queryParameters,
4597
+ body: SendNewsletterPreviewInputToJSON(requestParameters['sendNewsletterPreviewInput']),
4598
+ }, initOverrides);
4599
+
4600
+ return new runtime.VoidApiResponse(response);
4601
+ }
4602
+
4603
+ /**
4604
+ * Sends the current render to one address through the normal mailer, subject prefixed with [Preview]. Not a Mailchimp send.
4605
+ * Mail a preview of the newsletter
4606
+ */
4607
+ async sendNewsletterTest(requestParameters: AdminApiSendNewsletterTestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
4608
+ await this.sendNewsletterTestRaw(requestParameters, initOverrides);
4609
+ }
4610
+
4262
4611
  /**
4263
4612
  * Picks the domain for the public showcase on the website. Idempotent: showcasing an already showcased domain keeps its original position in the showcase.
4264
4613
  * Showcase domain
@@ -4834,6 +5183,59 @@ export class AdminApi extends runtime.BaseAPI {
4834
5183
  await this.updateMarketplaceRaw(requestParameters, initOverrides);
4835
5184
  }
4836
5185
 
5186
+ /**
5187
+ * Saves the given fields. Any edit puts a prepared issue back to draft until it is prepared again.
5188
+ * Update a newsletter
5189
+ */
5190
+ async updateNewsletterRaw(requestParameters: AdminApiUpdateNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NewsletterDto>> {
5191
+ if (requestParameters['newsletterId'] == null) {
5192
+ throw new runtime.RequiredError(
5193
+ 'newsletterId',
5194
+ 'Required parameter "newsletterId" was null or undefined when calling updateNewsletter().'
5195
+ );
5196
+ }
5197
+
5198
+ if (requestParameters['updateNewsletterInput'] == null) {
5199
+ throw new runtime.RequiredError(
5200
+ 'updateNewsletterInput',
5201
+ 'Required parameter "updateNewsletterInput" was null or undefined when calling updateNewsletter().'
5202
+ );
5203
+ }
5204
+
5205
+ const queryParameters: any = {};
5206
+
5207
+ const headerParameters: runtime.HTTPHeaders = {};
5208
+
5209
+ headerParameters['Content-Type'] = 'application/json';
5210
+
5211
+ if (this.configuration && this.configuration.accessToken) {
5212
+ const token = this.configuration.accessToken;
5213
+ const tokenString = await token("bearer", []);
5214
+
5215
+ if (tokenString) {
5216
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
5217
+ }
5218
+ }
5219
+ const response = await this.request({
5220
+ path: `/admin/newsletters/{newsletterId}`.replace(`{${"newsletterId"}}`, encodeURIComponent(String(requestParameters['newsletterId']))),
5221
+ method: 'PATCH',
5222
+ headers: headerParameters,
5223
+ query: queryParameters,
5224
+ body: UpdateNewsletterInputToJSON(requestParameters['updateNewsletterInput']),
5225
+ }, initOverrides);
5226
+
5227
+ return new runtime.JSONApiResponse(response, (jsonValue) => NewsletterDtoFromJSON(jsonValue));
5228
+ }
5229
+
5230
+ /**
5231
+ * Saves the given fields. Any edit puts a prepared issue back to draft until it is prepared again.
5232
+ * Update a newsletter
5233
+ */
5234
+ async updateNewsletter(requestParameters: AdminApiUpdateNewsletterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NewsletterDto> {
5235
+ const response = await this.updateNewsletterRaw(requestParameters, initOverrides);
5236
+ return await response.value();
5237
+ }
5238
+
4837
5239
  /**
4838
5240
  * Updates the buyer information stored on the subscription. The change is applied from the next renewal onwards: the already issued invoices, including the active one, are left untouched. Note that the emails related to the current invoice are still sent to the email of that invoice.
4839
5241
  * Update subscription buyer information
@@ -4886,6 +5288,58 @@ export class AdminApi extends runtime.BaseAPI {
4886
5288
  await this.updateSubscriptionBuyerInformationRaw(requestParameters, initOverrides);
4887
5289
  }
4888
5290
 
5291
+ /**
5292
+ * Sets whether the user gets the seller newsletter, recorded as changed by the admin. The Mailchimp audience follows on the next sync.
5293
+ * Update the seller newsletter consent of a user
5294
+ */
5295
+ async updateUserNewsletterStatusRaw(requestParameters: AdminApiUpdateUserNewsletterStatusRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
5296
+ if (requestParameters['userId'] == null) {
5297
+ throw new runtime.RequiredError(
5298
+ 'userId',
5299
+ 'Required parameter "userId" was null or undefined when calling updateUserNewsletterStatus().'
5300
+ );
5301
+ }
5302
+
5303
+ if (requestParameters['adminUserNewsletterInput'] == null) {
5304
+ throw new runtime.RequiredError(
5305
+ 'adminUserNewsletterInput',
5306
+ 'Required parameter "adminUserNewsletterInput" was null or undefined when calling updateUserNewsletterStatus().'
5307
+ );
5308
+ }
5309
+
5310
+ const queryParameters: any = {};
5311
+
5312
+ const headerParameters: runtime.HTTPHeaders = {};
5313
+
5314
+ headerParameters['Content-Type'] = 'application/json';
5315
+
5316
+ if (this.configuration && this.configuration.accessToken) {
5317
+ const token = this.configuration.accessToken;
5318
+ const tokenString = await token("bearer", []);
5319
+
5320
+ if (tokenString) {
5321
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
5322
+ }
5323
+ }
5324
+ const response = await this.request({
5325
+ path: `/admin/users/{userId}/newsletter`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters['userId']))),
5326
+ method: 'PATCH',
5327
+ headers: headerParameters,
5328
+ query: queryParameters,
5329
+ body: AdminUserNewsletterInputToJSON(requestParameters['adminUserNewsletterInput']),
5330
+ }, initOverrides);
5331
+
5332
+ return new runtime.VoidApiResponse(response);
5333
+ }
5334
+
5335
+ /**
5336
+ * Sets whether the user gets the seller newsletter, recorded as changed by the admin. The Mailchimp audience follows on the next sync.
5337
+ * Update the seller newsletter consent of a user
5338
+ */
5339
+ async updateUserNewsletterStatus(requestParameters: AdminApiUpdateUserNewsletterStatusRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
5340
+ await this.updateUserNewsletterStatusRaw(requestParameters, initOverrides);
5341
+ }
5342
+
4889
5343
  /**
4890
5344
  * Marks the account alias as verified, so it is shown on the landing pages instead of the official name. Also lifts a previous rejection.
4891
5345
  * Verify account alias
@@ -0,0 +1,78 @@
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 AdminUserNewsletterInput
20
+ */
21
+ export interface AdminUserNewsletterInput {
22
+ /**
23
+ * Seller newsletter consent of the user. An admin change is recorded as such; it never overrides an unsubscribe the user made in Mailchimp, which the audience sync keeps.
24
+ * @type {string}
25
+ * @memberof AdminUserNewsletterInput
26
+ */
27
+ newsletterStatus: AdminUserNewsletterInputNewsletterStatusEnum;
28
+ }
29
+
30
+
31
+ /**
32
+ * @export
33
+ */
34
+ export const AdminUserNewsletterInputNewsletterStatusEnum = {
35
+ SUBSCRIBED: 'subscribed',
36
+ UNSUBSCRIBED: 'unsubscribed',
37
+ NEVER_ASKED: 'never_asked'
38
+ } as const;
39
+ export type AdminUserNewsletterInputNewsletterStatusEnum = typeof AdminUserNewsletterInputNewsletterStatusEnum[keyof typeof AdminUserNewsletterInputNewsletterStatusEnum];
40
+
41
+
42
+ /**
43
+ * Check if a given object implements the AdminUserNewsletterInput interface.
44
+ */
45
+ export function instanceOfAdminUserNewsletterInput(value: object): value is AdminUserNewsletterInput {
46
+ if (!('newsletterStatus' in value) || value['newsletterStatus'] === undefined) return false;
47
+ return true;
48
+ }
49
+
50
+ export function AdminUserNewsletterInputFromJSON(json: any): AdminUserNewsletterInput {
51
+ return AdminUserNewsletterInputFromJSONTyped(json, false);
52
+ }
53
+
54
+ export function AdminUserNewsletterInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): AdminUserNewsletterInput {
55
+ if (json == null) {
56
+ return json;
57
+ }
58
+ return {
59
+
60
+ 'newsletterStatus': json['newsletterStatus'],
61
+ };
62
+ }
63
+
64
+ export function AdminUserNewsletterInputToJSON(json: any): AdminUserNewsletterInput {
65
+ return AdminUserNewsletterInputToJSONTyped(json, false);
66
+ }
67
+
68
+ export function AdminUserNewsletterInputToJSONTyped(value?: AdminUserNewsletterInput | null, ignoreDiscriminator: boolean = false): any {
69
+ if (value == null) {
70
+ return value;
71
+ }
72
+
73
+ return {
74
+
75
+ 'newsletterStatus': value['newsletterStatus'],
76
+ };
77
+ }
78
+