ultracart_rest_api_v2_typescript 4.1.67 → 4.1.68

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.
@@ -717,6 +717,7 @@ src/models/Mailgun.ts
717
717
  src/models/Metric.ts
718
718
  src/models/ModelError.ts
719
719
  src/models/Notification.ts
720
+ src/models/OauthDeviceAuthorizationResponse.ts
720
721
  src/models/OauthRevokeSuccessResponse.ts
721
722
  src/models/OauthTokenResponse.ts
722
723
  src/models/Order.ts
package/README.md CHANGED
@@ -1,12 +1,12 @@
1
1
  # UltraCart Typescript SDK
2
- ## ultracart_rest_api_v2_typescript@4.1.67
2
+ ## ultracart_rest_api_v2_typescript@4.1.68
3
3
 
4
4
  Every API method call has a sample for every language SDK. See https://github.com/UltraCart/sdk_samples
5
5
 
6
6
  Installation
7
7
 
8
8
  ```
9
- npm install ultracart_rest_api_v2_typescript@4.1.67 --save
9
+ npm install ultracart_rest_api_v2_typescript@4.1.68 --save
10
10
  ```
11
11
 
12
12
  ```typescript
@@ -85,6 +85,7 @@ Not every change is committed to every SDK.
85
85
 
86
86
  | Version | Date | Comments |
87
87
  | --: | :-: | --- |
88
+ | 4.1.68 | 03/31/2026 | oauth - device support |
88
89
  | 4.1.67 | 02/24/2026 | customer activity - sms and sms_stop fields added |
89
90
  | 4.1.66 | 02/18/2026 | conversations - agent auth customer_profile flag |
90
91
  | 4.1.65 | 02/16/2026 | item - include variant pricing in the response |
@@ -17,6 +17,11 @@ export interface OauthAccessTokenRequest {
17
17
  code?: string;
18
18
  redirectUri?: string;
19
19
  refreshToken?: string;
20
+ deviceCode?: string;
21
+ }
22
+ export interface OauthDeviceAuthorizeRequest {
23
+ clientId: string;
24
+ scope: string;
20
25
  }
21
26
  export interface OauthRevokeRequest {
22
27
  clientId: string;
@@ -37,6 +42,7 @@ export interface OauthApiInterface {
37
42
  * @param {string} [code] Authorization code received back from the browser redirect
38
43
  * @param {string} [redirectUri] The URI that you redirect the browser to start the authorization process
39
44
  * @param {string} [refreshToken] The refresh token received during the original grant_type=authorization_code that can be used to return a new access token
45
+ * @param {string} [deviceCode] The device code received from /oauth/device/authorize
40
46
  * @param {*} [options] Override http request option.
41
47
  * @throws {RequiredError}
42
48
  * @memberof OauthApiInterface
@@ -47,6 +53,21 @@ export interface OauthApiInterface {
47
53
  * Exchange authorization code for access token.
48
54
  */
49
55
  oauthAccessToken(requestParameters: OauthAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<OauthTokenResponse>;
56
+ /**
57
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
58
+ * @summary Initiate a device authorization flow.
59
+ * @param {string} clientId The OAuth application client_id.
60
+ * @param {string} scope The application-level scope (e.g., crm, ultraship).
61
+ * @param {*} [options] Override http request option.
62
+ * @throws {RequiredError}
63
+ * @memberof OauthApiInterface
64
+ */
65
+ oauthDeviceAuthorizeRaw(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
66
+ /**
67
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
68
+ * Initiate a device authorization flow.
69
+ */
70
+ oauthDeviceAuthorize(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
50
71
  /**
51
72
  * Revokes the OAuth application associated with the specified client_id and token.
52
73
  * @summary Revoke this OAuth application.
@@ -77,6 +98,16 @@ export declare class OauthApi extends runtime.BaseAPI implements OauthApiInterfa
77
98
  * Exchange authorization code for access token.
78
99
  */
79
100
  oauthAccessToken(requestParameters: OauthAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<OauthTokenResponse>;
101
+ /**
102
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
103
+ * Initiate a device authorization flow.
104
+ */
105
+ oauthDeviceAuthorizeRaw(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
106
+ /**
107
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
108
+ * Initiate a device authorization flow.
109
+ */
110
+ oauthDeviceAuthorize(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
80
111
  /**
81
112
  * Revokes the OAuth application associated with the specified client_id and token.
82
113
  * Revoke this OAuth application.
@@ -135,6 +135,9 @@ var OauthApi = /** @class */ (function (_super) {
135
135
  if (requestParameters.refreshToken !== undefined) {
136
136
  formParams.append('refresh_token', requestParameters.refreshToken);
137
137
  }
138
+ if (requestParameters.deviceCode !== undefined) {
139
+ formParams.append('device_code', requestParameters.deviceCode);
140
+ }
138
141
  return [4 /*yield*/, this.request({
139
142
  path: "/oauth/token",
140
143
  method: 'POST',
@@ -167,6 +170,87 @@ var OauthApi = /** @class */ (function (_super) {
167
170
  });
168
171
  });
169
172
  };
173
+ /**
174
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
175
+ * Initiate a device authorization flow.
176
+ */
177
+ OauthApi.prototype.oauthDeviceAuthorizeRaw = function (requestParameters, initOverrides) {
178
+ return __awaiter(this, void 0, void 0, function () {
179
+ var queryParameters, headerParameters, _a, _b, consumes, canConsumeForm, formParams, useForm, response;
180
+ return __generator(this, function (_c) {
181
+ switch (_c.label) {
182
+ case 0:
183
+ if (requestParameters.clientId === null || requestParameters.clientId === undefined) {
184
+ throw new runtime.RequiredError('clientId', 'Required parameter requestParameters.clientId was null or undefined when calling oauthDeviceAuthorize.');
185
+ }
186
+ if (requestParameters.scope === null || requestParameters.scope === undefined) {
187
+ throw new runtime.RequiredError('scope', 'Required parameter requestParameters.scope was null or undefined when calling oauthDeviceAuthorize.');
188
+ }
189
+ queryParameters = {};
190
+ headerParameters = {};
191
+ if (this.configuration && this.configuration.apiKey) {
192
+ headerParameters["x-ultracart-browser-key"] = this.configuration.apiKey("x-ultracart-browser-key"); // ultraCartBrowserApiKey authentication
193
+ }
194
+ if (!(this.configuration && this.configuration.accessToken)) return [3 /*break*/, 2];
195
+ // oauth required
196
+ _a = headerParameters;
197
+ _b = "Authorization";
198
+ return [4 /*yield*/, this.configuration.accessToken("ultraCartOauth", ["affiliate_read", "affiliate_write", "auto_order_read", "auto_order_write", "channel_partner_read", "channel_partner_write", "chargeback_read", "chargeback_write", "checkout_read", "checkout_write", "configuration_read", "configuration_write", "conversation_read", "conversation_write", "coupon_read", "coupon_write", "customer_read", "customer_write", "fulfillment_read", "fulfillment_write", "gift_certificate_read", "gift_certificate_write", "integration_log_read", "integration_log_write", "order_read", "order_write", "item_read", "item_write", "storefront_read", "storefront_write", "tax_read", "tax_write", "webhook_read", "webhook_write", "ultrabooks_read", "ultrabooks_write", "user_read", "user_write", "workflow_read", "workflow_write"])];
199
+ case 1:
200
+ // oauth required
201
+ _a[_b] = _c.sent();
202
+ _c.label = 2;
203
+ case 2:
204
+ if (this.configuration && this.configuration.apiKey) {
205
+ headerParameters["x-ultracart-simple-key"] = this.configuration.apiKey("x-ultracart-simple-key"); // ultraCartSimpleApiKey authentication
206
+ }
207
+ consumes = [
208
+ { contentType: 'application/x-www-form-urlencoded' },
209
+ ];
210
+ canConsumeForm = runtime.canConsumeForm(consumes);
211
+ useForm = false;
212
+ if (useForm) {
213
+ formParams = new FormData();
214
+ }
215
+ else {
216
+ formParams = new URLSearchParams();
217
+ }
218
+ if (requestParameters.clientId !== undefined) {
219
+ formParams.append('client_id', requestParameters.clientId);
220
+ }
221
+ if (requestParameters.scope !== undefined) {
222
+ formParams.append('scope', requestParameters.scope);
223
+ }
224
+ return [4 /*yield*/, this.request({
225
+ path: "/oauth/device/authorize",
226
+ method: 'POST',
227
+ headers: headerParameters,
228
+ query: queryParameters,
229
+ body: formParams,
230
+ }, initOverrides)];
231
+ case 3:
232
+ response = _c.sent();
233
+ return [2 /*return*/, new runtime.VoidApiResponse(response)];
234
+ }
235
+ });
236
+ });
237
+ };
238
+ /**
239
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
240
+ * Initiate a device authorization flow.
241
+ */
242
+ OauthApi.prototype.oauthDeviceAuthorize = function (requestParameters, initOverrides) {
243
+ return __awaiter(this, void 0, void 0, function () {
244
+ return __generator(this, function (_a) {
245
+ switch (_a.label) {
246
+ case 0: return [4 /*yield*/, this.oauthDeviceAuthorizeRaw(requestParameters, initOverrides)];
247
+ case 1:
248
+ _a.sent();
249
+ return [2 /*return*/];
250
+ }
251
+ });
252
+ });
253
+ };
170
254
  /**
171
255
  * Revokes the OAuth application associated with the specified client_id and token.
172
256
  * Revoke this OAuth application.
@@ -0,0 +1,61 @@
1
+ /**
2
+ * UltraCart Rest API V2
3
+ * UltraCart REST API Version 2
4
+ *
5
+ * The version of the OpenAPI document: 2.0.0
6
+ * Contact: support@ultracart.com
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 OauthDeviceAuthorizationResponse
16
+ */
17
+ export interface OauthDeviceAuthorizationResponse {
18
+ /**
19
+ * The device verification code
20
+ * @type {string}
21
+ * @memberof OauthDeviceAuthorizationResponse
22
+ */
23
+ device_code?: string;
24
+ /**
25
+ * The lifetime in seconds of the device_code and user_code
26
+ * @type {number}
27
+ * @memberof OauthDeviceAuthorizationResponse
28
+ */
29
+ expires_in?: number;
30
+ /**
31
+ * The minimum amount of time in seconds the client should wait between polling requests
32
+ * @type {number}
33
+ * @memberof OauthDeviceAuthorizationResponse
34
+ */
35
+ interval?: number;
36
+ /**
37
+ * The end-user verification code
38
+ * @type {string}
39
+ * @memberof OauthDeviceAuthorizationResponse
40
+ */
41
+ user_code?: string;
42
+ /**
43
+ * The end-user verification URI on the authorization server
44
+ * @type {string}
45
+ * @memberof OauthDeviceAuthorizationResponse
46
+ */
47
+ verification_uri?: string;
48
+ /**
49
+ * The verification URI with the user code pre-filled
50
+ * @type {string}
51
+ * @memberof OauthDeviceAuthorizationResponse
52
+ */
53
+ verification_uri_complete?: string;
54
+ }
55
+ /**
56
+ * Check if a given object implements the OauthDeviceAuthorizationResponse interface.
57
+ */
58
+ export declare function instanceOfOauthDeviceAuthorizationResponse(value: object): boolean;
59
+ export declare function OauthDeviceAuthorizationResponseFromJSON(json: any): OauthDeviceAuthorizationResponse;
60
+ export declare function OauthDeviceAuthorizationResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): OauthDeviceAuthorizationResponse;
61
+ export declare function OauthDeviceAuthorizationResponseToJSON(value?: OauthDeviceAuthorizationResponse | null): any;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * UltraCart Rest API V2
6
+ * UltraCart REST API Version 2
7
+ *
8
+ * The version of the OpenAPI document: 2.0.0
9
+ * Contact: support@ultracart.com
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.OauthDeviceAuthorizationResponseToJSON = exports.OauthDeviceAuthorizationResponseFromJSONTyped = exports.OauthDeviceAuthorizationResponseFromJSON = exports.instanceOfOauthDeviceAuthorizationResponse = void 0;
17
+ var runtime_1 = require("../runtime");
18
+ /**
19
+ * Check if a given object implements the OauthDeviceAuthorizationResponse interface.
20
+ */
21
+ function instanceOfOauthDeviceAuthorizationResponse(value) {
22
+ var isInstance = true;
23
+ return isInstance;
24
+ }
25
+ exports.instanceOfOauthDeviceAuthorizationResponse = instanceOfOauthDeviceAuthorizationResponse;
26
+ function OauthDeviceAuthorizationResponseFromJSON(json) {
27
+ return OauthDeviceAuthorizationResponseFromJSONTyped(json, false);
28
+ }
29
+ exports.OauthDeviceAuthorizationResponseFromJSON = OauthDeviceAuthorizationResponseFromJSON;
30
+ function OauthDeviceAuthorizationResponseFromJSONTyped(json, ignoreDiscriminator) {
31
+ if ((json === undefined) || (json === null)) {
32
+ return json;
33
+ }
34
+ return {
35
+ 'device_code': !(0, runtime_1.exists)(json, 'device_code') ? undefined : json['device_code'],
36
+ 'expires_in': !(0, runtime_1.exists)(json, 'expires_in') ? undefined : json['expires_in'],
37
+ 'interval': !(0, runtime_1.exists)(json, 'interval') ? undefined : json['interval'],
38
+ 'user_code': !(0, runtime_1.exists)(json, 'user_code') ? undefined : json['user_code'],
39
+ 'verification_uri': !(0, runtime_1.exists)(json, 'verification_uri') ? undefined : json['verification_uri'],
40
+ 'verification_uri_complete': !(0, runtime_1.exists)(json, 'verification_uri_complete') ? undefined : json['verification_uri_complete'],
41
+ };
42
+ }
43
+ exports.OauthDeviceAuthorizationResponseFromJSONTyped = OauthDeviceAuthorizationResponseFromJSONTyped;
44
+ function OauthDeviceAuthorizationResponseToJSON(value) {
45
+ if (value === undefined) {
46
+ return undefined;
47
+ }
48
+ if (value === null) {
49
+ return null;
50
+ }
51
+ return {
52
+ 'device_code': value.device_code,
53
+ 'expires_in': value.expires_in,
54
+ 'interval': value.interval,
55
+ 'user_code': value.user_code,
56
+ 'verification_uri': value.verification_uri,
57
+ 'verification_uri_complete': value.verification_uri_complete,
58
+ };
59
+ }
60
+ exports.OauthDeviceAuthorizationResponseToJSON = OauthDeviceAuthorizationResponseToJSON;
@@ -75,6 +75,12 @@ export interface PointOfSaleLocation {
75
75
  * @memberof PointOfSaleLocation
76
76
  */
77
77
  state_province?: string;
78
+ /**
79
+ * Tax county associated with this address. Need when a self managed tax configuration is being used.
80
+ * @type {string}
81
+ * @memberof PointOfSaleLocation
82
+ */
83
+ tax_county?: string;
78
84
  }
79
85
  /**
80
86
  * Check if a given object implements the PointOfSaleLocation interface.
@@ -42,6 +42,7 @@ function PointOfSaleLocationFromJSONTyped(json, ignoreDiscriminator) {
42
42
  'pos_location_oid': !(0, runtime_1.exists)(json, 'pos_location_oid') ? undefined : json['pos_location_oid'],
43
43
  'postal_code': !(0, runtime_1.exists)(json, 'postal_code') ? undefined : json['postal_code'],
44
44
  'state_province': !(0, runtime_1.exists)(json, 'state_province') ? undefined : json['state_province'],
45
+ 'tax_county': !(0, runtime_1.exists)(json, 'tax_county') ? undefined : json['tax_county'],
45
46
  };
46
47
  }
47
48
  exports.PointOfSaleLocationFromJSONTyped = PointOfSaleLocationFromJSONTyped;
@@ -63,6 +64,7 @@ function PointOfSaleLocationToJSON(value) {
63
64
  'pos_location_oid': value.pos_location_oid,
64
65
  'postal_code': value.postal_code,
65
66
  'state_province': value.state_province,
67
+ 'tax_county': value.tax_county,
66
68
  };
67
69
  }
68
70
  exports.PointOfSaleLocationToJSON = PointOfSaleLocationToJSON;
@@ -691,6 +691,7 @@ export * from './Mailgun';
691
691
  export * from './Metric';
692
692
  export * from './ModelError';
693
693
  export * from './Notification';
694
+ export * from './OauthDeviceAuthorizationResponse';
694
695
  export * from './OauthRevokeSuccessResponse';
695
696
  export * from './OauthTokenResponse';
696
697
  export * from './Order';
@@ -709,6 +709,7 @@ __exportStar(require("./Mailgun"), exports);
709
709
  __exportStar(require("./Metric"), exports);
710
710
  __exportStar(require("./ModelError"), exports);
711
711
  __exportStar(require("./Notification"), exports);
712
+ __exportStar(require("./OauthDeviceAuthorizationResponse"), exports);
712
713
  __exportStar(require("./OauthRevokeSuccessResponse"), exports);
713
714
  __exportStar(require("./OauthTokenResponse"), exports);
714
715
  __exportStar(require("./Order"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ultracart_rest_api_v2_typescript",
3
- "version": "4.1.67",
3
+ "version": "4.1.68",
4
4
  "description": "UltraCart Rest TypeScript SDK",
5
5
  "author": "UltraCart",
6
6
  "repository": {
@@ -32,6 +32,12 @@ export interface OauthAccessTokenRequest {
32
32
  code?: string;
33
33
  redirectUri?: string;
34
34
  refreshToken?: string;
35
+ deviceCode?: string;
36
+ }
37
+
38
+ export interface OauthDeviceAuthorizeRequest {
39
+ clientId: string;
40
+ scope: string;
35
41
  }
36
42
 
37
43
  export interface OauthRevokeRequest {
@@ -54,6 +60,7 @@ export interface OauthApiInterface {
54
60
  * @param {string} [code] Authorization code received back from the browser redirect
55
61
  * @param {string} [redirectUri] The URI that you redirect the browser to start the authorization process
56
62
  * @param {string} [refreshToken] The refresh token received during the original grant_type&#x3D;authorization_code that can be used to return a new access token
63
+ * @param {string} [deviceCode] The device code received from /oauth/device/authorize
57
64
  * @param {*} [options] Override http request option.
58
65
  * @throws {RequiredError}
59
66
  * @memberof OauthApiInterface
@@ -66,6 +73,23 @@ export interface OauthApiInterface {
66
73
  */
67
74
  oauthAccessToken(requestParameters: OauthAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<OauthTokenResponse>;
68
75
 
76
+ /**
77
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
78
+ * @summary Initiate a device authorization flow.
79
+ * @param {string} clientId The OAuth application client_id.
80
+ * @param {string} scope The application-level scope (e.g., crm, ultraship).
81
+ * @param {*} [options] Override http request option.
82
+ * @throws {RequiredError}
83
+ * @memberof OauthApiInterface
84
+ */
85
+ oauthDeviceAuthorizeRaw(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
86
+
87
+ /**
88
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
89
+ * Initiate a device authorization flow.
90
+ */
91
+ oauthDeviceAuthorize(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
92
+
69
93
  /**
70
94
  * Revokes the OAuth application associated with the specified client_id and token.
71
95
  * @summary Revoke this OAuth application.
@@ -154,6 +178,10 @@ export class OauthApi extends runtime.BaseAPI implements OauthApiInterface {
154
178
  formParams.append('refresh_token', requestParameters.refreshToken as any);
155
179
  }
156
180
 
181
+ if (requestParameters.deviceCode !== undefined) {
182
+ formParams.append('device_code', requestParameters.deviceCode as any);
183
+ }
184
+
157
185
  const response = await this.request({
158
186
  path: `/oauth/token`,
159
187
  method: 'POST',
@@ -174,6 +202,77 @@ export class OauthApi extends runtime.BaseAPI implements OauthApiInterface {
174
202
  return await response.value();
175
203
  }
176
204
 
205
+ /**
206
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
207
+ * Initiate a device authorization flow.
208
+ */
209
+ async oauthDeviceAuthorizeRaw(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
210
+ if (requestParameters.clientId === null || requestParameters.clientId === undefined) {
211
+ throw new runtime.RequiredError('clientId','Required parameter requestParameters.clientId was null or undefined when calling oauthDeviceAuthorize.');
212
+ }
213
+
214
+ if (requestParameters.scope === null || requestParameters.scope === undefined) {
215
+ throw new runtime.RequiredError('scope','Required parameter requestParameters.scope was null or undefined when calling oauthDeviceAuthorize.');
216
+ }
217
+
218
+ const queryParameters: any = {};
219
+
220
+ const headerParameters: runtime.HTTPHeaders = {};
221
+
222
+ if (this.configuration && this.configuration.apiKey) {
223
+ headerParameters["x-ultracart-browser-key"] = this.configuration.apiKey("x-ultracart-browser-key"); // ultraCartBrowserApiKey authentication
224
+ }
225
+
226
+ if (this.configuration && this.configuration.accessToken) {
227
+ // oauth required
228
+ headerParameters["Authorization"] = await this.configuration.accessToken("ultraCartOauth", ["affiliate_read", "affiliate_write", "auto_order_read", "auto_order_write", "channel_partner_read", "channel_partner_write", "chargeback_read", "chargeback_write", "checkout_read", "checkout_write", "configuration_read", "configuration_write", "conversation_read", "conversation_write", "coupon_read", "coupon_write", "customer_read", "customer_write", "fulfillment_read", "fulfillment_write", "gift_certificate_read", "gift_certificate_write", "integration_log_read", "integration_log_write", "order_read", "order_write", "item_read", "item_write", "storefront_read", "storefront_write", "tax_read", "tax_write", "webhook_read", "webhook_write", "ultrabooks_read", "ultrabooks_write", "user_read", "user_write", "workflow_read", "workflow_write"]);
229
+ }
230
+
231
+ if (this.configuration && this.configuration.apiKey) {
232
+ headerParameters["x-ultracart-simple-key"] = this.configuration.apiKey("x-ultracart-simple-key"); // ultraCartSimpleApiKey authentication
233
+ }
234
+
235
+ const consumes: runtime.Consume[] = [
236
+ { contentType: 'application/x-www-form-urlencoded' },
237
+ ];
238
+ // @ts-ignore: canConsumeForm may be unused
239
+ const canConsumeForm = runtime.canConsumeForm(consumes);
240
+
241
+ let formParams: { append(param: string, value: any): any };
242
+ let useForm = false;
243
+ if (useForm) {
244
+ formParams = new FormData();
245
+ } else {
246
+ formParams = new URLSearchParams();
247
+ }
248
+
249
+ if (requestParameters.clientId !== undefined) {
250
+ formParams.append('client_id', requestParameters.clientId as any);
251
+ }
252
+
253
+ if (requestParameters.scope !== undefined) {
254
+ formParams.append('scope', requestParameters.scope as any);
255
+ }
256
+
257
+ const response = await this.request({
258
+ path: `/oauth/device/authorize`,
259
+ method: 'POST',
260
+ headers: headerParameters,
261
+ query: queryParameters,
262
+ body: formParams,
263
+ }, initOverrides);
264
+
265
+ return new runtime.VoidApiResponse(response);
266
+ }
267
+
268
+ /**
269
+ * Initiates the device authorization flow by returning a device code and user code. The device displays the user code to the merchant, who visits the verification URI to approve the request. RFC 8628.
270
+ * Initiate a device authorization flow.
271
+ */
272
+ async oauthDeviceAuthorize(requestParameters: OauthDeviceAuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
273
+ await this.oauthDeviceAuthorizeRaw(requestParameters, initOverrides);
274
+ }
275
+
177
276
  /**
178
277
  * Revokes the OAuth application associated with the specified client_id and token.
179
278
  * Revoke this OAuth application.
@@ -0,0 +1,107 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * UltraCart Rest API V2
5
+ * UltraCart REST API Version 2
6
+ *
7
+ * The version of the OpenAPI document: 2.0.0
8
+ * Contact: support@ultracart.com
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 { exists, mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface OauthDeviceAuthorizationResponse
20
+ */
21
+ export interface OauthDeviceAuthorizationResponse {
22
+ /**
23
+ * The device verification code
24
+ * @type {string}
25
+ * @memberof OauthDeviceAuthorizationResponse
26
+ */
27
+ device_code?: string;
28
+ /**
29
+ * The lifetime in seconds of the device_code and user_code
30
+ * @type {number}
31
+ * @memberof OauthDeviceAuthorizationResponse
32
+ */
33
+ expires_in?: number;
34
+ /**
35
+ * The minimum amount of time in seconds the client should wait between polling requests
36
+ * @type {number}
37
+ * @memberof OauthDeviceAuthorizationResponse
38
+ */
39
+ interval?: number;
40
+ /**
41
+ * The end-user verification code
42
+ * @type {string}
43
+ * @memberof OauthDeviceAuthorizationResponse
44
+ */
45
+ user_code?: string;
46
+ /**
47
+ * The end-user verification URI on the authorization server
48
+ * @type {string}
49
+ * @memberof OauthDeviceAuthorizationResponse
50
+ */
51
+ verification_uri?: string;
52
+ /**
53
+ * The verification URI with the user code pre-filled
54
+ * @type {string}
55
+ * @memberof OauthDeviceAuthorizationResponse
56
+ */
57
+ verification_uri_complete?: string;
58
+ }
59
+
60
+
61
+
62
+ /**
63
+ * Check if a given object implements the OauthDeviceAuthorizationResponse interface.
64
+ */
65
+ export function instanceOfOauthDeviceAuthorizationResponse(value: object): boolean {
66
+ let isInstance = true;
67
+
68
+ return isInstance;
69
+ }
70
+
71
+ export function OauthDeviceAuthorizationResponseFromJSON(json: any): OauthDeviceAuthorizationResponse {
72
+ return OauthDeviceAuthorizationResponseFromJSONTyped(json, false);
73
+ }
74
+
75
+ export function OauthDeviceAuthorizationResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): OauthDeviceAuthorizationResponse {
76
+ if ((json === undefined) || (json === null)) {
77
+ return json;
78
+ }
79
+ return {
80
+
81
+ 'device_code': !exists(json, 'device_code') ? undefined : json['device_code'],
82
+ 'expires_in': !exists(json, 'expires_in') ? undefined : json['expires_in'],
83
+ 'interval': !exists(json, 'interval') ? undefined : json['interval'],
84
+ 'user_code': !exists(json, 'user_code') ? undefined : json['user_code'],
85
+ 'verification_uri': !exists(json, 'verification_uri') ? undefined : json['verification_uri'],
86
+ 'verification_uri_complete': !exists(json, 'verification_uri_complete') ? undefined : json['verification_uri_complete'],
87
+ };
88
+ }
89
+
90
+ export function OauthDeviceAuthorizationResponseToJSON(value?: OauthDeviceAuthorizationResponse | null): any {
91
+ if (value === undefined) {
92
+ return undefined;
93
+ }
94
+ if (value === null) {
95
+ return null;
96
+ }
97
+ return {
98
+
99
+ 'device_code': value.device_code,
100
+ 'expires_in': value.expires_in,
101
+ 'interval': value.interval,
102
+ 'user_code': value.user_code,
103
+ 'verification_uri': value.verification_uri,
104
+ 'verification_uri_complete': value.verification_uri_complete,
105
+ };
106
+ }
107
+
@@ -79,6 +79,12 @@ export interface PointOfSaleLocation {
79
79
  * @memberof PointOfSaleLocation
80
80
  */
81
81
  state_province?: string;
82
+ /**
83
+ * Tax county associated with this address. Need when a self managed tax configuration is being used.
84
+ * @type {string}
85
+ * @memberof PointOfSaleLocation
86
+ */
87
+ tax_county?: string;
82
88
  }
83
89
 
84
90
 
@@ -112,6 +118,7 @@ export function PointOfSaleLocationFromJSONTyped(json: any, ignoreDiscriminator:
112
118
  'pos_location_oid': !exists(json, 'pos_location_oid') ? undefined : json['pos_location_oid'],
113
119
  'postal_code': !exists(json, 'postal_code') ? undefined : json['postal_code'],
114
120
  'state_province': !exists(json, 'state_province') ? undefined : json['state_province'],
121
+ 'tax_county': !exists(json, 'tax_county') ? undefined : json['tax_county'],
115
122
  };
116
123
  }
117
124
 
@@ -134,6 +141,7 @@ export function PointOfSaleLocationToJSON(value?: PointOfSaleLocation | null): a
134
141
  'pos_location_oid': value.pos_location_oid,
135
142
  'postal_code': value.postal_code,
136
143
  'state_province': value.state_province,
144
+ 'tax_county': value.tax_county,
137
145
  };
138
146
  }
139
147
 
@@ -693,6 +693,7 @@ export * from './Mailgun';
693
693
  export * from './Metric';
694
694
  export * from './ModelError';
695
695
  export * from './Notification';
696
+ export * from './OauthDeviceAuthorizationResponse';
696
697
  export * from './OauthRevokeSuccessResponse';
697
698
  export * from './OauthTokenResponse';
698
699
  export * from './Order';