@knowledge-stack/ksapi 1.80.1 → 1.81.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.
Files changed (44) hide show
  1. package/.openapi-generator/FILES +4 -0
  2. package/README.md +7 -2
  3. package/dist/apis/UsersApi.d.ts +130 -1
  4. package/dist/apis/UsersApi.js +130 -0
  5. package/dist/esm/apis/UsersApi.d.ts +130 -1
  6. package/dist/esm/apis/UsersApi.js +131 -1
  7. package/dist/esm/models/OnboardingCompanyRequest.d.ts +53 -0
  8. package/dist/esm/models/OnboardingCompanyRequest.js +51 -0
  9. package/dist/esm/models/OnboardingProfileRequest.d.ts +59 -0
  10. package/dist/esm/models/OnboardingProfileRequest.js +50 -0
  11. package/dist/esm/models/TenantSettingsResponse.d.ts +6 -0
  12. package/dist/esm/models/TenantSettingsResponse.js +2 -0
  13. package/dist/esm/models/TenantSettingsUpdate.d.ts +6 -0
  14. package/dist/esm/models/TenantSettingsUpdate.js +10 -1
  15. package/dist/esm/models/UserResponse.d.ts +12 -0
  16. package/dist/esm/models/UserResponse.js +4 -0
  17. package/dist/esm/models/index.d.ts +2 -0
  18. package/dist/esm/models/index.js +2 -0
  19. package/dist/models/OnboardingCompanyRequest.d.ts +53 -0
  20. package/dist/models/OnboardingCompanyRequest.js +59 -0
  21. package/dist/models/OnboardingProfileRequest.d.ts +59 -0
  22. package/dist/models/OnboardingProfileRequest.js +58 -0
  23. package/dist/models/TenantSettingsResponse.d.ts +6 -0
  24. package/dist/models/TenantSettingsResponse.js +2 -0
  25. package/dist/models/TenantSettingsUpdate.d.ts +6 -0
  26. package/dist/models/TenantSettingsUpdate.js +10 -1
  27. package/dist/models/UserResponse.d.ts +12 -0
  28. package/dist/models/UserResponse.js +4 -0
  29. package/dist/models/index.d.ts +2 -0
  30. package/dist/models/index.js +2 -0
  31. package/docs/OnboardingCompanyRequest.md +37 -0
  32. package/docs/OnboardingProfileRequest.md +39 -0
  33. package/docs/TenantSettingsResponse.md +2 -0
  34. package/docs/TenantSettingsUpdate.md +2 -0
  35. package/docs/UserResponse.md +4 -0
  36. package/docs/UsersApi.md +222 -0
  37. package/package.json +1 -1
  38. package/src/apis/UsersApi.ts +254 -0
  39. package/src/models/OnboardingCompanyRequest.ts +96 -0
  40. package/src/models/OnboardingProfileRequest.ts +101 -0
  41. package/src/models/TenantSettingsResponse.ts +8 -0
  42. package/src/models/TenantSettingsUpdate.ts +14 -0
  43. package/src/models/UserResponse.ts +16 -0
  44. package/src/models/index.ts +2 -0
@@ -16,12 +16,18 @@
16
16
  import * as runtime from '../runtime';
17
17
  import type {
18
18
  HTTPValidationError,
19
+ OnboardingCompanyRequest,
20
+ OnboardingProfileRequest,
19
21
  UpdateUserRequest,
20
22
  UserResponse,
21
23
  } from '../models/index';
22
24
  import {
23
25
  HTTPValidationErrorFromJSON,
24
26
  HTTPValidationErrorToJSON,
27
+ OnboardingCompanyRequestFromJSON,
28
+ OnboardingCompanyRequestToJSON,
29
+ OnboardingProfileRequestFromJSON,
30
+ OnboardingProfileRequestToJSON,
25
31
  UpdateUserRequestFromJSON,
26
32
  UpdateUserRequestToJSON,
27
33
  UserResponseFromJSON,
@@ -33,12 +39,29 @@ export interface GetMeRequest {
33
39
  ksUat?: string | null;
34
40
  }
35
41
 
42
+ export interface SkipOnboardingRequest {
43
+ authorization?: string | null;
44
+ ksUat?: string | null;
45
+ }
46
+
36
47
  export interface UpdateMeRequest {
37
48
  updateUserRequest: UpdateUserRequest;
38
49
  authorization?: string | null;
39
50
  ksUat?: string | null;
40
51
  }
41
52
 
53
+ export interface UpdateOnboardingCompanyRequest {
54
+ onboardingCompanyRequest: OnboardingCompanyRequest;
55
+ authorization?: string | null;
56
+ ksUat?: string | null;
57
+ }
58
+
59
+ export interface UpdateOnboardingProfileRequest {
60
+ onboardingProfileRequest: OnboardingProfileRequest;
61
+ authorization?: string | null;
62
+ ksUat?: string | null;
63
+ }
64
+
42
65
  /**
43
66
  * UsersApi - interface
44
67
  *
@@ -72,6 +95,32 @@ export interface UsersApiInterface {
72
95
  */
73
96
  getMe(requestParameters: GetMeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse>;
74
97
 
98
+ /**
99
+ * Creates request options for skipOnboarding without sending the request
100
+ * @param {string} [authorization]
101
+ * @param {string} [ksUat]
102
+ * @throws {RequiredError}
103
+ * @memberof UsersApiInterface
104
+ */
105
+ skipOnboardingRequestOpts(requestParameters: SkipOnboardingRequest): Promise<runtime.RequestOpts>;
106
+
107
+ /**
108
+ * Mark onboarding complete without writing any profile/company fields. Idempotent — calling this after onboarding is already complete returns the current state unchanged (the CRUD only stamps the timestamp when it is NULL).
109
+ * @summary Skip Onboarding Handler
110
+ * @param {string} [authorization]
111
+ * @param {string} [ksUat]
112
+ * @param {*} [options] Override http request option.
113
+ * @throws {RequiredError}
114
+ * @memberof UsersApiInterface
115
+ */
116
+ skipOnboardingRaw(requestParameters: SkipOnboardingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserResponse>>;
117
+
118
+ /**
119
+ * Mark onboarding complete without writing any profile/company fields. Idempotent — calling this after onboarding is already complete returns the current state unchanged (the CRUD only stamps the timestamp when it is NULL).
120
+ * Skip Onboarding Handler
121
+ */
122
+ skipOnboarding(requestParameters: SkipOnboardingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse>;
123
+
75
124
  /**
76
125
  * Creates request options for updateMe without sending the request
77
126
  * @param {UpdateUserRequest} updateUserRequest
@@ -100,6 +149,62 @@ export interface UsersApiInterface {
100
149
  */
101
150
  updateMe(requestParameters: UpdateMeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse>;
102
151
 
152
+ /**
153
+ * Creates request options for updateOnboardingCompany without sending the request
154
+ * @param {OnboardingCompanyRequest} onboardingCompanyRequest
155
+ * @param {string} [authorization]
156
+ * @param {string} [ksUat]
157
+ * @throws {RequiredError}
158
+ * @memberof UsersApiInterface
159
+ */
160
+ updateOnboardingCompanyRequestOpts(requestParameters: UpdateOnboardingCompanyRequest): Promise<runtime.RequestOpts>;
161
+
162
+ /**
163
+ * Step 1 of onboarding: tenant-wide company info. Writes ``industry`` and ``description`` into the current tenant\'s settings JSONB. Restricted to OWNER and ADMIN — invited USERs see a pre-filled, read-only step on the frontend instead. Does not mark onboarding complete; the user finishes via the profile step. Re-running while the wizard is still open overwrites prior values; once onboarding has been completed/skipped, this endpoint returns 409. Post-onboarding edits go through PATCH /v1/tenants/{id}.
164
+ * @summary Update Onboarding Company Handler
165
+ * @param {OnboardingCompanyRequest} onboardingCompanyRequest
166
+ * @param {string} [authorization]
167
+ * @param {string} [ksUat]
168
+ * @param {*} [options] Override http request option.
169
+ * @throws {RequiredError}
170
+ * @memberof UsersApiInterface
171
+ */
172
+ updateOnboardingCompanyRaw(requestParameters: UpdateOnboardingCompanyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserResponse>>;
173
+
174
+ /**
175
+ * Step 1 of onboarding: tenant-wide company info. Writes ``industry`` and ``description`` into the current tenant\'s settings JSONB. Restricted to OWNER and ADMIN — invited USERs see a pre-filled, read-only step on the frontend instead. Does not mark onboarding complete; the user finishes via the profile step. Re-running while the wizard is still open overwrites prior values; once onboarding has been completed/skipped, this endpoint returns 409. Post-onboarding edits go through PATCH /v1/tenants/{id}.
176
+ * Update Onboarding Company Handler
177
+ */
178
+ updateOnboardingCompany(requestParameters: UpdateOnboardingCompanyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse>;
179
+
180
+ /**
181
+ * Creates request options for updateOnboardingProfile without sending the request
182
+ * @param {OnboardingProfileRequest} onboardingProfileRequest
183
+ * @param {string} [authorization]
184
+ * @param {string} [ksUat]
185
+ * @throws {RequiredError}
186
+ * @memberof UsersApiInterface
187
+ */
188
+ updateOnboardingProfileRequestOpts(requestParameters: UpdateOnboardingProfileRequest): Promise<runtime.RequestOpts>;
189
+
190
+ /**
191
+ * Step 2 (final) of onboarding: per-user profile for the current tenant. Writes name to the User row (global) and job_title to the TenantUser row (per-tenant), then stamps ``onboarding_completed_at`` on the membership. Returns 409 if onboarding has already been completed or skipped — post-onboarding edits go through PATCH /v1/users (name) or a future per-membership profile endpoint (job_title).
192
+ * @summary Update Onboarding Profile Handler
193
+ * @param {OnboardingProfileRequest} onboardingProfileRequest
194
+ * @param {string} [authorization]
195
+ * @param {string} [ksUat]
196
+ * @param {*} [options] Override http request option.
197
+ * @throws {RequiredError}
198
+ * @memberof UsersApiInterface
199
+ */
200
+ updateOnboardingProfileRaw(requestParameters: UpdateOnboardingProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserResponse>>;
201
+
202
+ /**
203
+ * Step 2 (final) of onboarding: per-user profile for the current tenant. Writes name to the User row (global) and job_title to the TenantUser row (per-tenant), then stamps ``onboarding_completed_at`` on the membership. Returns 409 if onboarding has already been completed or skipped — post-onboarding edits go through PATCH /v1/users (name) or a future per-membership profile endpoint (job_title).
204
+ * Update Onboarding Profile Handler
205
+ */
206
+ updateOnboardingProfile(requestParameters: UpdateOnboardingProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse>;
207
+
103
208
  }
104
209
 
105
210
  /**
@@ -150,6 +255,49 @@ export class UsersApi extends runtime.BaseAPI implements UsersApiInterface {
150
255
  return await response.value();
151
256
  }
152
257
 
258
+ /**
259
+ * Creates request options for skipOnboarding without sending the request
260
+ */
261
+ async skipOnboardingRequestOpts(requestParameters: SkipOnboardingRequest): Promise<runtime.RequestOpts> {
262
+ const queryParameters: any = {};
263
+
264
+ const headerParameters: runtime.HTTPHeaders = {};
265
+
266
+ if (requestParameters['authorization'] != null) {
267
+ headerParameters['authorization'] = String(requestParameters['authorization']);
268
+ }
269
+
270
+
271
+ let urlPath = `/v1/users/me/onboarding/skip`;
272
+
273
+ return {
274
+ path: urlPath,
275
+ method: 'POST',
276
+ headers: headerParameters,
277
+ query: queryParameters,
278
+ };
279
+ }
280
+
281
+ /**
282
+ * Mark onboarding complete without writing any profile/company fields. Idempotent — calling this after onboarding is already complete returns the current state unchanged (the CRUD only stamps the timestamp when it is NULL).
283
+ * Skip Onboarding Handler
284
+ */
285
+ async skipOnboardingRaw(requestParameters: SkipOnboardingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserResponse>> {
286
+ const requestOptions = await this.skipOnboardingRequestOpts(requestParameters);
287
+ const response = await this.request(requestOptions, initOverrides);
288
+
289
+ return new runtime.JSONApiResponse(response, (jsonValue) => UserResponseFromJSON(jsonValue));
290
+ }
291
+
292
+ /**
293
+ * Mark onboarding complete without writing any profile/company fields. Idempotent — calling this after onboarding is already complete returns the current state unchanged (the CRUD only stamps the timestamp when it is NULL).
294
+ * Skip Onboarding Handler
295
+ */
296
+ async skipOnboarding(requestParameters: SkipOnboardingRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse> {
297
+ const response = await this.skipOnboardingRaw(requestParameters, initOverrides);
298
+ return await response.value();
299
+ }
300
+
153
301
  /**
154
302
  * Creates request options for updateMe without sending the request
155
303
  */
@@ -203,4 +351,110 @@ export class UsersApi extends runtime.BaseAPI implements UsersApiInterface {
203
351
  return await response.value();
204
352
  }
205
353
 
354
+ /**
355
+ * Creates request options for updateOnboardingCompany without sending the request
356
+ */
357
+ async updateOnboardingCompanyRequestOpts(requestParameters: UpdateOnboardingCompanyRequest): Promise<runtime.RequestOpts> {
358
+ if (requestParameters['onboardingCompanyRequest'] == null) {
359
+ throw new runtime.RequiredError(
360
+ 'onboardingCompanyRequest',
361
+ 'Required parameter "onboardingCompanyRequest" was null or undefined when calling updateOnboardingCompany().'
362
+ );
363
+ }
364
+
365
+ const queryParameters: any = {};
366
+
367
+ const headerParameters: runtime.HTTPHeaders = {};
368
+
369
+ headerParameters['Content-Type'] = 'application/json';
370
+
371
+ if (requestParameters['authorization'] != null) {
372
+ headerParameters['authorization'] = String(requestParameters['authorization']);
373
+ }
374
+
375
+
376
+ let urlPath = `/v1/users/me/onboarding/company`;
377
+
378
+ return {
379
+ path: urlPath,
380
+ method: 'PATCH',
381
+ headers: headerParameters,
382
+ query: queryParameters,
383
+ body: OnboardingCompanyRequestToJSON(requestParameters['onboardingCompanyRequest']),
384
+ };
385
+ }
386
+
387
+ /**
388
+ * Step 1 of onboarding: tenant-wide company info. Writes ``industry`` and ``description`` into the current tenant\'s settings JSONB. Restricted to OWNER and ADMIN — invited USERs see a pre-filled, read-only step on the frontend instead. Does not mark onboarding complete; the user finishes via the profile step. Re-running while the wizard is still open overwrites prior values; once onboarding has been completed/skipped, this endpoint returns 409. Post-onboarding edits go through PATCH /v1/tenants/{id}.
389
+ * Update Onboarding Company Handler
390
+ */
391
+ async updateOnboardingCompanyRaw(requestParameters: UpdateOnboardingCompanyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserResponse>> {
392
+ const requestOptions = await this.updateOnboardingCompanyRequestOpts(requestParameters);
393
+ const response = await this.request(requestOptions, initOverrides);
394
+
395
+ return new runtime.JSONApiResponse(response, (jsonValue) => UserResponseFromJSON(jsonValue));
396
+ }
397
+
398
+ /**
399
+ * Step 1 of onboarding: tenant-wide company info. Writes ``industry`` and ``description`` into the current tenant\'s settings JSONB. Restricted to OWNER and ADMIN — invited USERs see a pre-filled, read-only step on the frontend instead. Does not mark onboarding complete; the user finishes via the profile step. Re-running while the wizard is still open overwrites prior values; once onboarding has been completed/skipped, this endpoint returns 409. Post-onboarding edits go through PATCH /v1/tenants/{id}.
400
+ * Update Onboarding Company Handler
401
+ */
402
+ async updateOnboardingCompany(requestParameters: UpdateOnboardingCompanyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse> {
403
+ const response = await this.updateOnboardingCompanyRaw(requestParameters, initOverrides);
404
+ return await response.value();
405
+ }
406
+
407
+ /**
408
+ * Creates request options for updateOnboardingProfile without sending the request
409
+ */
410
+ async updateOnboardingProfileRequestOpts(requestParameters: UpdateOnboardingProfileRequest): Promise<runtime.RequestOpts> {
411
+ if (requestParameters['onboardingProfileRequest'] == null) {
412
+ throw new runtime.RequiredError(
413
+ 'onboardingProfileRequest',
414
+ 'Required parameter "onboardingProfileRequest" was null or undefined when calling updateOnboardingProfile().'
415
+ );
416
+ }
417
+
418
+ const queryParameters: any = {};
419
+
420
+ const headerParameters: runtime.HTTPHeaders = {};
421
+
422
+ headerParameters['Content-Type'] = 'application/json';
423
+
424
+ if (requestParameters['authorization'] != null) {
425
+ headerParameters['authorization'] = String(requestParameters['authorization']);
426
+ }
427
+
428
+
429
+ let urlPath = `/v1/users/me/onboarding/profile`;
430
+
431
+ return {
432
+ path: urlPath,
433
+ method: 'PATCH',
434
+ headers: headerParameters,
435
+ query: queryParameters,
436
+ body: OnboardingProfileRequestToJSON(requestParameters['onboardingProfileRequest']),
437
+ };
438
+ }
439
+
440
+ /**
441
+ * Step 2 (final) of onboarding: per-user profile for the current tenant. Writes name to the User row (global) and job_title to the TenantUser row (per-tenant), then stamps ``onboarding_completed_at`` on the membership. Returns 409 if onboarding has already been completed or skipped — post-onboarding edits go through PATCH /v1/users (name) or a future per-membership profile endpoint (job_title).
442
+ * Update Onboarding Profile Handler
443
+ */
444
+ async updateOnboardingProfileRaw(requestParameters: UpdateOnboardingProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserResponse>> {
445
+ const requestOptions = await this.updateOnboardingProfileRequestOpts(requestParameters);
446
+ const response = await this.request(requestOptions, initOverrides);
447
+
448
+ return new runtime.JSONApiResponse(response, (jsonValue) => UserResponseFromJSON(jsonValue));
449
+ }
450
+
451
+ /**
452
+ * Step 2 (final) of onboarding: per-user profile for the current tenant. Writes name to the User row (global) and job_title to the TenantUser row (per-tenant), then stamps ``onboarding_completed_at`` on the membership. Returns 409 if onboarding has already been completed or skipped — post-onboarding edits go through PATCH /v1/users (name) or a future per-membership profile endpoint (job_title).
453
+ * Update Onboarding Profile Handler
454
+ */
455
+ async updateOnboardingProfile(requestParameters: UpdateOnboardingProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserResponse> {
456
+ const response = await this.updateOnboardingProfileRaw(requestParameters, initOverrides);
457
+ return await response.value();
458
+ }
459
+
206
460
  }
@@ -0,0 +1,96 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Knowledge Stack API
5
+ * Knowledge Stack backend API for authentication and knowledge management
6
+ *
7
+ * The version of the OpenAPI document: 0.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
+ * Step 1 of onboarding — tenant-wide company info. OWNER/ADMIN only.
18
+ * @export
19
+ * @interface OnboardingCompanyRequest
20
+ */
21
+ export interface OnboardingCompanyRequest {
22
+ /**
23
+ * Brief company description (≤5000 chars)
24
+ * @type {string}
25
+ * @memberof OnboardingCompanyRequest
26
+ */
27
+ description?: string | null;
28
+ /**
29
+ * Industry / company type (free text)
30
+ * @type {string}
31
+ * @memberof OnboardingCompanyRequest
32
+ */
33
+ industry?: string | null;
34
+ }
35
+ export const OnboardingCompanyRequestPropertyValidationAttributesMap: {
36
+ [property: string]: {
37
+ maxLength?: number,
38
+ minLength?: number,
39
+ pattern?: string,
40
+ maximum?: number,
41
+ exclusiveMaximum?: boolean,
42
+ minimum?: number,
43
+ exclusiveMinimum?: boolean,
44
+ multipleOf?: number,
45
+ maxItems?: number,
46
+ minItems?: number,
47
+ uniqueItems?: boolean
48
+ }
49
+ } = {
50
+ description: {
51
+ maxLength: 5000,
52
+ },
53
+ industry: {
54
+ maxLength: 120,
55
+ },
56
+ }
57
+
58
+
59
+ /**
60
+ * Check if a given object implements the OnboardingCompanyRequest interface.
61
+ */
62
+ export function instanceOfOnboardingCompanyRequest(value: object): value is OnboardingCompanyRequest {
63
+ return true;
64
+ }
65
+
66
+ export function OnboardingCompanyRequestFromJSON(json: any): OnboardingCompanyRequest {
67
+ return OnboardingCompanyRequestFromJSONTyped(json, false);
68
+ }
69
+
70
+ export function OnboardingCompanyRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): OnboardingCompanyRequest {
71
+ if (json == null) {
72
+ return json;
73
+ }
74
+ return {
75
+
76
+ 'description': json['description'] == null ? undefined : json['description'],
77
+ 'industry': json['industry'] == null ? undefined : json['industry'],
78
+ };
79
+ }
80
+
81
+ export function OnboardingCompanyRequestToJSON(json: any): OnboardingCompanyRequest {
82
+ return OnboardingCompanyRequestToJSONTyped(json, false);
83
+ }
84
+
85
+ export function OnboardingCompanyRequestToJSONTyped(value?: OnboardingCompanyRequest | null, ignoreDiscriminator: boolean = false): any {
86
+ if (value == null) {
87
+ return value;
88
+ }
89
+
90
+ return {
91
+
92
+ 'description': value['description'],
93
+ 'industry': value['industry'],
94
+ };
95
+ }
96
+
@@ -0,0 +1,101 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Knowledge Stack API
5
+ * Knowledge Stack backend API for authentication and knowledge management
6
+ *
7
+ * The version of the OpenAPI document: 0.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
+ * Step 2 of onboarding — per-user info for the current tenant.
18
+ * @export
19
+ * @interface OnboardingProfileRequest
20
+ */
21
+ export interface OnboardingProfileRequest {
22
+ /**
23
+ * User's first name
24
+ * @type {string}
25
+ * @memberof OnboardingProfileRequest
26
+ */
27
+ firstName?: string | null;
28
+ /**
29
+ * User's last name
30
+ * @type {string}
31
+ * @memberof OnboardingProfileRequest
32
+ */
33
+ lastName?: string | null;
34
+ /**
35
+ * What the user does at this tenant
36
+ * @type {string}
37
+ * @memberof OnboardingProfileRequest
38
+ */
39
+ jobTitle?: string | null;
40
+ }
41
+ export const OnboardingProfileRequestPropertyValidationAttributesMap: {
42
+ [property: string]: {
43
+ maxLength?: number,
44
+ minLength?: number,
45
+ pattern?: string,
46
+ maximum?: number,
47
+ exclusiveMaximum?: boolean,
48
+ minimum?: number,
49
+ exclusiveMinimum?: boolean,
50
+ multipleOf?: number,
51
+ maxItems?: number,
52
+ minItems?: number,
53
+ uniqueItems?: boolean
54
+ }
55
+ } = {
56
+ jobTitle: {
57
+ maxLength: 120,
58
+ },
59
+ }
60
+
61
+
62
+ /**
63
+ * Check if a given object implements the OnboardingProfileRequest interface.
64
+ */
65
+ export function instanceOfOnboardingProfileRequest(value: object): value is OnboardingProfileRequest {
66
+ return true;
67
+ }
68
+
69
+ export function OnboardingProfileRequestFromJSON(json: any): OnboardingProfileRequest {
70
+ return OnboardingProfileRequestFromJSONTyped(json, false);
71
+ }
72
+
73
+ export function OnboardingProfileRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): OnboardingProfileRequest {
74
+ if (json == null) {
75
+ return json;
76
+ }
77
+ return {
78
+
79
+ 'firstName': json['first_name'] == null ? undefined : json['first_name'],
80
+ 'lastName': json['last_name'] == null ? undefined : json['last_name'],
81
+ 'jobTitle': json['job_title'] == null ? undefined : json['job_title'],
82
+ };
83
+ }
84
+
85
+ export function OnboardingProfileRequestToJSON(json: any): OnboardingProfileRequest {
86
+ return OnboardingProfileRequestToJSONTyped(json, false);
87
+ }
88
+
89
+ export function OnboardingProfileRequestToJSONTyped(value?: OnboardingProfileRequest | null, ignoreDiscriminator: boolean = false): any {
90
+ if (value == null) {
91
+ return value;
92
+ }
93
+
94
+ return {
95
+
96
+ 'first_name': value['firstName'],
97
+ 'last_name': value['lastName'],
98
+ 'job_title': value['jobTitle'],
99
+ };
100
+ }
101
+
@@ -46,6 +46,12 @@ export interface TenantSettingsResponse {
46
46
  * @memberof TenantSettingsResponse
47
47
  */
48
48
  description: string;
49
+ /**
50
+ * Industry / company type captured during onboarding
51
+ * @type {string}
52
+ * @memberof TenantSettingsResponse
53
+ */
54
+ industry?: string | null;
49
55
  /**
50
56
  * IANA timezone (e.g. 'America/New_York')
51
57
  * @type {string}
@@ -102,6 +108,7 @@ export function TenantSettingsResponseFromJSONTyped(json: any, ignoreDiscriminat
102
108
 
103
109
  'language': SupportedLanguageFromJSON(json['language']),
104
110
  'description': json['description'],
111
+ 'industry': json['industry'] == null ? undefined : json['industry'],
105
112
  'timezone': json['timezone'],
106
113
  'inviteLink': InviteLinkSettingsResponseFromJSON(json['invite_link']),
107
114
  };
@@ -120,6 +127,7 @@ export function TenantSettingsResponseToJSONTyped(value?: TenantSettingsResponse
120
127
 
121
128
  'language': SupportedLanguageToJSON(value['language']),
122
129
  'description': value['description'],
130
+ 'industry': value['industry'],
123
131
  'timezone': value['timezone'],
124
132
  'invite_link': InviteLinkSettingsResponseToJSON(value['inviteLink']),
125
133
  };
@@ -46,6 +46,12 @@ export interface TenantSettingsUpdate {
46
46
  * @memberof TenantSettingsUpdate
47
47
  */
48
48
  description?: string | null;
49
+ /**
50
+ * Industry / company type captured during onboarding
51
+ * @type {string}
52
+ * @memberof TenantSettingsUpdate
53
+ */
54
+ industry?: string | null;
49
55
  /**
50
56
  * IANA timezone (e.g. 'America/New_York')
51
57
  * @type {string}
@@ -94,6 +100,12 @@ export const TenantSettingsUpdatePropertyValidationAttributesMap: {
94
100
  uniqueItems?: boolean
95
101
  }
96
102
  } = {
103
+ description: {
104
+ maxLength: 5000,
105
+ },
106
+ industry: {
107
+ maxLength: 120,
108
+ },
97
109
  }
98
110
 
99
111
 
@@ -116,6 +128,7 @@ export function TenantSettingsUpdateFromJSONTyped(json: any, ignoreDiscriminator
116
128
 
117
129
  'language': json['language'] == null ? undefined : SupportedLanguageFromJSON(json['language']),
118
130
  'description': json['description'] == null ? undefined : json['description'],
131
+ 'industry': json['industry'] == null ? undefined : json['industry'],
119
132
  'timezone': json['timezone'] == null ? undefined : json['timezone'],
120
133
  'brandName': json['brand_name'] == null ? undefined : json['brand_name'],
121
134
  'brandColor': json['brand_color'] == null ? undefined : json['brand_color'],
@@ -137,6 +150,7 @@ export function TenantSettingsUpdateToJSONTyped(value?: TenantSettingsUpdate | n
137
150
 
138
151
  'language': SupportedLanguageToJSON(value['language']),
139
152
  'description': value['description'],
153
+ 'industry': value['industry'],
140
154
  'timezone': value['timezone'],
141
155
  'brand_name': value['brandName'],
142
156
  'brand_color': value['brandColor'],
@@ -82,6 +82,18 @@ export interface UserResponse {
82
82
  * @memberof UserResponse
83
83
  */
84
84
  defaultTenantId: string;
85
+ /**
86
+ * User's job title at the current tenant (per-membership)
87
+ * @type {string}
88
+ * @memberof UserResponse
89
+ */
90
+ jobTitle?: string | null;
91
+ /**
92
+ * When the user finished onboarding for the current tenant. NULL = wizard should be shown.
93
+ * @type {Date}
94
+ * @memberof UserResponse
95
+ */
96
+ onboardingCompletedAt?: Date | null;
85
97
  }
86
98
 
87
99
 
@@ -136,6 +148,8 @@ export function UserResponseFromJSONTyped(json: any, ignoreDiscriminator: boolea
136
148
  'currentTenantId': json['current_tenant_id'],
137
149
  'currentTenantRole': TenantUserRoleFromJSON(json['current_tenant_role']),
138
150
  'defaultTenantId': json['default_tenant_id'],
151
+ 'jobTitle': json['job_title'] == null ? undefined : json['job_title'],
152
+ 'onboardingCompletedAt': json['onboarding_completed_at'] == null ? undefined : (new Date(json['onboarding_completed_at'])),
139
153
  };
140
154
  }
141
155
 
@@ -158,6 +172,8 @@ export function UserResponseToJSONTyped(value?: UserResponse | null, ignoreDiscr
158
172
  'current_tenant_id': value['currentTenantId'],
159
173
  'current_tenant_role': TenantUserRoleToJSON(value['currentTenantRole']),
160
174
  'default_tenant_id': value['defaultTenantId'],
175
+ 'job_title': value['jobTitle'],
176
+ 'onboarding_completed_at': value['onboardingCompletedAt'] == null ? value['onboardingCompletedAt'] : value['onboardingCompletedAt'].toISOString(),
161
177
  };
162
178
  }
163
179
 
@@ -90,6 +90,8 @@ export * from './MembershipResponse';
90
90
  export * from './MessageRole';
91
91
  export * from './MeteredQuotaStatus';
92
92
  export * from './NonFilesystemReferenceType';
93
+ export * from './OnboardingCompanyRequest';
94
+ export * from './OnboardingProfileRequest';
93
95
  export * from './PaginatedResponseAnnotatedUnionFolderResponseDocumentResponseDiscriminator';
94
96
  export * from './PaginatedResponseAnnotatedUnionSectionContentItemChunkContentItemDiscriminator';
95
97
  export * from './PaginatedResponseDocumentResponse';