ultracart_api 4.0.81.rc → 4.0.83.rc
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +10 -4
- data/docs/ConversationEventAddCoupon.md +18 -0
- data/docs/ConversationEventAddItem.md +18 -0
- data/docs/ConversationWebsocketMessage.md +4 -0
- data/docs/OrderApi.md +72 -0
- data/docs/OrderRefundableResponse.md +26 -0
- data/lib/ultracart_api/api/order_api.rb +64 -0
- data/lib/ultracart_api/models/conversation_event_add_coupon.rb +219 -0
- data/lib/ultracart_api/models/conversation_event_add_item.rb +219 -0
- data/lib/ultracart_api/models/conversation_websocket_message.rb +21 -3
- data/lib/ultracart_api/models/order_refundable_response.rb +257 -0
- data/lib/ultracart_api/version.rb +1 -1
- data/lib/ultracart_api.rb +3 -0
- metadata +7 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5fdd3ce8a29d7c1f7312d1cc2274b8bbea74e9eeb1e545edc2ed692bff94dc91
|
4
|
+
data.tar.gz: abe729b9070c392197dcbfe4d89b40f4f4df3ae4ba3455927e80c0ec60fc4146
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '068caf120e755f19278af83dbda6965ad41f543652635b8f1c9edbb46d4945d06638678766967ebd21f0a30eaf2116369f7d1fe1a99c49f4762d37c7974256d3'
|
7
|
+
data.tar.gz: b8375ded518f8054e0345a08c8526f8b93adb8af81e82d975789f5d89554ee07b0e44affe1da6b2c14761f2543c15d098bfe381c36c14555bec4688d4a0adfc7
|
data/README.md
CHANGED
@@ -7,7 +7,7 @@ UltraCart REST API Version 2
|
|
7
7
|
This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
8
8
|
|
9
9
|
- API version: 2.0.0
|
10
|
-
- Package version: 4.0.
|
10
|
+
- Package version: 4.0.83.rc
|
11
11
|
- Build package: org.openapitools.codegen.languages.RubyClientCodegen
|
12
12
|
For more information, please visit [http://www.ultracart.com](http://www.ultracart.com)
|
13
13
|
|
@@ -24,16 +24,16 @@ gem build ultracart_api.gemspec
|
|
24
24
|
Then either install the gem locally:
|
25
25
|
|
26
26
|
```shell
|
27
|
-
gem install ./ultracart_api-4.0.
|
27
|
+
gem install ./ultracart_api-4.0.83.rc.gem
|
28
28
|
```
|
29
29
|
|
30
|
-
(for development, run `gem install --dev ./ultracart_api-4.0.
|
30
|
+
(for development, run `gem install --dev ./ultracart_api-4.0.83.rc.gem` to install the development dependencies)
|
31
31
|
|
32
32
|
or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
|
33
33
|
|
34
34
|
Finally add this to the Gemfile:
|
35
35
|
|
36
|
-
gem 'ultracart_api', '~> 4.0.
|
36
|
+
gem 'ultracart_api', '~> 4.0.83.rc'
|
37
37
|
|
38
38
|
### Install from Git
|
39
39
|
|
@@ -233,6 +233,7 @@ Class | Method | HTTP request | Description
|
|
233
233
|
*UltracartClient::OrderApi* | [**get_orders_batch**](docs/OrderApi.md#get_orders_batch) | **POST** /order/orders/batch | Retrieve order batch
|
234
234
|
*UltracartClient::OrderApi* | [**get_orders_by_query**](docs/OrderApi.md#get_orders_by_query) | **POST** /order/orders/query | Retrieve orders by query
|
235
235
|
*UltracartClient::OrderApi* | [**insert_order**](docs/OrderApi.md#insert_order) | **POST** /order/orders | Insert an order
|
236
|
+
*UltracartClient::OrderApi* | [**is_refundable_order**](docs/OrderApi.md#is_refundable_order) | **GET** /order/orders/{order_id}/refundable | Determine if an order can be refunded
|
236
237
|
*UltracartClient::OrderApi* | [**process_payment**](docs/OrderApi.md#process_payment) | **POST** /order/orders/{order_id}/process_payment | Process payment
|
237
238
|
*UltracartClient::OrderApi* | [**refund_order**](docs/OrderApi.md#refund_order) | **PUT** /order/orders/{order_id}/refund | Refund an order
|
238
239
|
*UltracartClient::OrderApi* | [**replacement**](docs/OrderApi.md#replacement) | **POST** /order/orders/{order_id}/replacement | Replacement order
|
@@ -587,6 +588,8 @@ Class | Method | HTTP request | Description
|
|
587
588
|
- [UltracartClient::Conversation](docs/Conversation.md)
|
588
589
|
- [UltracartClient::ConversationAgentAuth](docs/ConversationAgentAuth.md)
|
589
590
|
- [UltracartClient::ConversationAgentAuthResponse](docs/ConversationAgentAuthResponse.md)
|
591
|
+
- [UltracartClient::ConversationEventAddCoupon](docs/ConversationEventAddCoupon.md)
|
592
|
+
- [UltracartClient::ConversationEventAddItem](docs/ConversationEventAddItem.md)
|
590
593
|
- [UltracartClient::ConversationEventQueuePosition](docs/ConversationEventQueuePosition.md)
|
591
594
|
- [UltracartClient::ConversationEventRRWeb](docs/ConversationEventRRWeb.md)
|
592
595
|
- [UltracartClient::ConversationEventReadMessage](docs/ConversationEventReadMessage.md)
|
@@ -1009,6 +1012,7 @@ Class | Method | HTTP request | Description
|
|
1009
1012
|
- [UltracartClient::OrderQuery](docs/OrderQuery.md)
|
1010
1013
|
- [UltracartClient::OrderQueryBatch](docs/OrderQueryBatch.md)
|
1011
1014
|
- [UltracartClient::OrderQuote](docs/OrderQuote.md)
|
1015
|
+
- [UltracartClient::OrderRefundableResponse](docs/OrderRefundableResponse.md)
|
1012
1016
|
- [UltracartClient::OrderReplacement](docs/OrderReplacement.md)
|
1013
1017
|
- [UltracartClient::OrderReplacementItem](docs/OrderReplacementItem.md)
|
1014
1018
|
- [UltracartClient::OrderReplacementResponse](docs/OrderReplacementResponse.md)
|
@@ -1222,6 +1226,8 @@ Not every change is committed to every SDK.
|
|
1222
1226
|
|
1223
1227
|
| Version | Date | Comments |
|
1224
1228
|
| --: | :-: | --- |
|
1229
|
+
| 4.0.83-RC | 11/15/2022 | conversations - enw events for add coupon and items |
|
1230
|
+
| 4.0.82-RC | 11/15/2022 | order api new method is order refundable |
|
1225
1231
|
| 4.0.81-RC | 11/15/2022 | increase order property length to 10k char |
|
1226
1232
|
| 4.0.80-RC | 11/14/2022 | conversations - add allowed values for update agent status |
|
1227
1233
|
| 4.0.79-RC | 11/09/2022 | conversations - add an enum of event typing |
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# UltracartClient::ConversationEventAddCoupon
|
2
|
+
|
3
|
+
## Properties
|
4
|
+
|
5
|
+
| Name | Type | Description | Notes |
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
7
|
+
| **coupon_code** | **String** | | [optional] |
|
8
|
+
|
9
|
+
## Example
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
require 'ultracart_api'
|
13
|
+
|
14
|
+
instance = UltracartClient::ConversationEventAddCoupon.new(
|
15
|
+
coupon_code: null
|
16
|
+
)
|
17
|
+
```
|
18
|
+
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# UltracartClient::ConversationEventAddItem
|
2
|
+
|
3
|
+
## Properties
|
4
|
+
|
5
|
+
| Name | Type | Description | Notes |
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
7
|
+
| **item_id** | **String** | | [optional] |
|
8
|
+
|
9
|
+
## Example
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
require 'ultracart_api'
|
13
|
+
|
14
|
+
instance = UltracartClient::ConversationEventAddItem.new(
|
15
|
+
item_id: null
|
16
|
+
)
|
17
|
+
```
|
18
|
+
|
@@ -5,6 +5,8 @@
|
|
5
5
|
| Name | Type | Description | Notes |
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
7
7
|
| **conversation_uuid** | **String** | Conversation UUID if the websocket message is tied to a specific conversation | [optional] |
|
8
|
+
| **event_add_coupon** | [**ConversationEventAddCoupon**](ConversationEventAddCoupon.md) | | [optional] |
|
9
|
+
| **event_add_item** | [**ConversationEventAddItem**](ConversationEventAddItem.md) | | [optional] |
|
8
10
|
| **event_conversation_closed** | [**ConversationSummary**](ConversationSummary.md) | | [optional] |
|
9
11
|
| **event_new_conversation** | [**ConversationSummary**](ConversationSummary.md) | | [optional] |
|
10
12
|
| **event_new_message** | [**ConversationSummary**](ConversationSummary.md) | | [optional] |
|
@@ -26,6 +28,8 @@ require 'ultracart_api'
|
|
26
28
|
|
27
29
|
instance = UltracartClient::ConversationWebsocketMessage.new(
|
28
30
|
conversation_uuid: null,
|
31
|
+
event_add_coupon: null,
|
32
|
+
event_add_item: null,
|
29
33
|
event_conversation_closed: null,
|
30
34
|
event_new_conversation: null,
|
31
35
|
event_new_message: null,
|
data/docs/OrderApi.md
CHANGED
@@ -20,6 +20,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
|
|
20
20
|
| [**get_orders_batch**](OrderApi.md#get_orders_batch) | **POST** /order/orders/batch | Retrieve order batch |
|
21
21
|
| [**get_orders_by_query**](OrderApi.md#get_orders_by_query) | **POST** /order/orders/query | Retrieve orders by query |
|
22
22
|
| [**insert_order**](OrderApi.md#insert_order) | **POST** /order/orders | Insert an order |
|
23
|
+
| [**is_refundable_order**](OrderApi.md#is_refundable_order) | **GET** /order/orders/{order_id}/refundable | Determine if an order can be refunded |
|
23
24
|
| [**process_payment**](OrderApi.md#process_payment) | **POST** /order/orders/{order_id}/process_payment | Process payment |
|
24
25
|
| [**refund_order**](OrderApi.md#refund_order) | **PUT** /order/orders/{order_id}/refund | Refund an order |
|
25
26
|
| [**replacement**](OrderApi.md#replacement) | **POST** /order/orders/{order_id}/replacement | Replacement order |
|
@@ -1263,6 +1264,77 @@ end
|
|
1263
1264
|
- **Accept**: application/json
|
1264
1265
|
|
1265
1266
|
|
1267
|
+
## is_refundable_order
|
1268
|
+
|
1269
|
+
> <OrderRefundableResponse> is_refundable_order(order_id)
|
1270
|
+
|
1271
|
+
Determine if an order can be refunded
|
1272
|
+
|
1273
|
+
Determine if an order can be refunded based upon payment method and age
|
1274
|
+
|
1275
|
+
### Examples
|
1276
|
+
|
1277
|
+
```ruby
|
1278
|
+
require 'time'
|
1279
|
+
require 'ultracart_api'
|
1280
|
+
require 'json'
|
1281
|
+
require 'yaml'
|
1282
|
+
require_relative '../constants' # https://github.com/UltraCart/sdk_samples/blob/master/ruby/constants.rb
|
1283
|
+
|
1284
|
+
# This example is based on our samples_sdk project, but still contains auto-generated content from our sdk generators.
|
1285
|
+
# As such, this might not be the best way to use this object.
|
1286
|
+
# Please see https://github.com/UltraCart/sdk_samples for working examples.
|
1287
|
+
|
1288
|
+
api = UltracartClient::OrderApi.new_using_api_key(Constants::API_KEY, Constants::VERIFY_SSL, Constants::DEBUG_MODE)
|
1289
|
+
order_id = 'order_id_example' # String | The order id to check for refundable order.
|
1290
|
+
|
1291
|
+
begin
|
1292
|
+
# Determine if an order can be refunded
|
1293
|
+
result = api_instance.is_refundable_order(order_id)
|
1294
|
+
p result
|
1295
|
+
rescue UltracartClient::ApiError => e
|
1296
|
+
puts "Error when calling OrderApi->is_refundable_order: #{e}"
|
1297
|
+
end
|
1298
|
+
```
|
1299
|
+
|
1300
|
+
#### Using the is_refundable_order_with_http_info variant
|
1301
|
+
|
1302
|
+
This returns an Array which contains the response data, status code and headers.
|
1303
|
+
|
1304
|
+
> <Array(<OrderRefundableResponse>, Integer, Hash)> is_refundable_order_with_http_info(order_id)
|
1305
|
+
|
1306
|
+
```ruby
|
1307
|
+
begin
|
1308
|
+
# Determine if an order can be refunded
|
1309
|
+
data, status_code, headers = api_instance.is_refundable_order_with_http_info(order_id)
|
1310
|
+
p status_code # => 2xx
|
1311
|
+
p headers # => { ... }
|
1312
|
+
p data # => <OrderRefundableResponse>
|
1313
|
+
rescue UltracartClient::ApiError => e
|
1314
|
+
puts "Error when calling OrderApi->is_refundable_order_with_http_info: #{e}"
|
1315
|
+
end
|
1316
|
+
```
|
1317
|
+
|
1318
|
+
### Parameters
|
1319
|
+
|
1320
|
+
| Name | Type | Description | Notes |
|
1321
|
+
| ---- | ---- | ----------- | ----- |
|
1322
|
+
| **order_id** | **String** | The order id to check for refundable order. | |
|
1323
|
+
|
1324
|
+
### Return type
|
1325
|
+
|
1326
|
+
[**OrderRefundableResponse**](OrderRefundableResponse.md)
|
1327
|
+
|
1328
|
+
### Authorization
|
1329
|
+
|
1330
|
+
[ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
|
1331
|
+
|
1332
|
+
### HTTP request headers
|
1333
|
+
|
1334
|
+
- **Content-Type**: Not defined
|
1335
|
+
- **Accept**: application/json
|
1336
|
+
|
1337
|
+
|
1266
1338
|
## process_payment
|
1267
1339
|
|
1268
1340
|
> <OrderProcessPaymentResponse> process_payment(order_id, process_payment_request)
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# UltracartClient::OrderRefundableResponse
|
2
|
+
|
3
|
+
## Properties
|
4
|
+
|
5
|
+
| Name | Type | Description | Notes |
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
7
|
+
| **error** | [**Error**](Error.md) | | [optional] |
|
8
|
+
| **metadata** | [**ResponseMetadata**](ResponseMetadata.md) | | [optional] |
|
9
|
+
| **refundable** | **Boolean** | Whether the order is refundable or not. Null should be interpreted as false. | [optional] |
|
10
|
+
| **success** | **Boolean** | Indicates if API call was successful | [optional] |
|
11
|
+
| **warning** | [**Warning**](Warning.md) | | [optional] |
|
12
|
+
|
13
|
+
## Example
|
14
|
+
|
15
|
+
```ruby
|
16
|
+
require 'ultracart_api'
|
17
|
+
|
18
|
+
instance = UltracartClient::OrderRefundableResponse.new(
|
19
|
+
error: null,
|
20
|
+
metadata: null,
|
21
|
+
refundable: null,
|
22
|
+
success: null,
|
23
|
+
warning: null
|
24
|
+
)
|
25
|
+
```
|
26
|
+
|
@@ -1207,6 +1207,70 @@ module UltracartClient
|
|
1207
1207
|
return data, status_code, headers
|
1208
1208
|
end
|
1209
1209
|
|
1210
|
+
# Determine if an order can be refunded
|
1211
|
+
# Determine if an order can be refunded based upon payment method and age
|
1212
|
+
# @param order_id [String] The order id to check for refundable order.
|
1213
|
+
# @param [Hash] opts the optional parameters
|
1214
|
+
# @return [OrderRefundableResponse]
|
1215
|
+
def is_refundable_order(order_id, opts = {})
|
1216
|
+
data, _status_code, _headers = is_refundable_order_with_http_info(order_id, opts)
|
1217
|
+
data
|
1218
|
+
end
|
1219
|
+
|
1220
|
+
# Determine if an order can be refunded
|
1221
|
+
# Determine if an order can be refunded based upon payment method and age
|
1222
|
+
# @param order_id [String] The order id to check for refundable order.
|
1223
|
+
# @param [Hash] opts the optional parameters
|
1224
|
+
# @return [Array<(OrderRefundableResponse, Integer, Hash)>] OrderRefundableResponse data, response status code and response headers
|
1225
|
+
def is_refundable_order_with_http_info(order_id, opts = {})
|
1226
|
+
if @api_client.config.debugging
|
1227
|
+
@api_client.config.logger.debug 'Calling API: OrderApi.is_refundable_order ...'
|
1228
|
+
end
|
1229
|
+
# verify the required parameter 'order_id' is set
|
1230
|
+
if @api_client.config.client_side_validation && order_id.nil?
|
1231
|
+
fail ArgumentError, "Missing the required parameter 'order_id' when calling OrderApi.is_refundable_order"
|
1232
|
+
end
|
1233
|
+
# resource path
|
1234
|
+
local_var_path = '/order/orders/{order_id}/refundable'.sub('{' + 'order_id' + '}', CGI.escape(order_id.to_s))
|
1235
|
+
|
1236
|
+
# query parameters
|
1237
|
+
query_params = opts[:query_params] || {}
|
1238
|
+
|
1239
|
+
# header parameters
|
1240
|
+
header_params = opts[:header_params] || {}
|
1241
|
+
header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
|
1242
|
+
# HTTP header 'Accept' (if needed)
|
1243
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
1244
|
+
|
1245
|
+
# form parameters
|
1246
|
+
form_params = opts[:form_params] || {}
|
1247
|
+
|
1248
|
+
# http body (model)
|
1249
|
+
post_body = opts[:debug_body]
|
1250
|
+
|
1251
|
+
# return_type
|
1252
|
+
return_type = opts[:debug_return_type] || 'OrderRefundableResponse'
|
1253
|
+
|
1254
|
+
# auth_names
|
1255
|
+
auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
|
1256
|
+
|
1257
|
+
new_options = opts.merge(
|
1258
|
+
:operation => :"OrderApi.is_refundable_order",
|
1259
|
+
:header_params => header_params,
|
1260
|
+
:query_params => query_params,
|
1261
|
+
:form_params => form_params,
|
1262
|
+
:body => post_body,
|
1263
|
+
:auth_names => auth_names,
|
1264
|
+
:return_type => return_type
|
1265
|
+
)
|
1266
|
+
|
1267
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
1268
|
+
if @api_client.config.debugging
|
1269
|
+
@api_client.config.logger.debug "API called: OrderApi#is_refundable_order\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
1270
|
+
end
|
1271
|
+
return data, status_code, headers
|
1272
|
+
end
|
1273
|
+
|
1210
1274
|
# Process payment
|
1211
1275
|
# Process payment on order
|
1212
1276
|
# @param order_id [String] The order id to process payment on
|
@@ -0,0 +1,219 @@
|
|
1
|
+
=begin
|
2
|
+
#UltraCart Rest API V2
|
3
|
+
|
4
|
+
#UltraCart REST API Version 2
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.0.0
|
7
|
+
Contact: support@ultracart.com
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 6.0.1-SNAPSHOT
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
require 'time'
|
15
|
+
|
16
|
+
module UltracartClient
|
17
|
+
class ConversationEventAddCoupon
|
18
|
+
attr_accessor :coupon_code
|
19
|
+
|
20
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
21
|
+
def self.attribute_map
|
22
|
+
{
|
23
|
+
:'coupon_code' => :'coupon_code'
|
24
|
+
}
|
25
|
+
end
|
26
|
+
|
27
|
+
# Returns all the JSON keys this model knows about
|
28
|
+
def self.acceptable_attributes
|
29
|
+
attribute_map.values
|
30
|
+
end
|
31
|
+
|
32
|
+
# Attribute type mapping.
|
33
|
+
def self.openapi_types
|
34
|
+
{
|
35
|
+
:'coupon_code' => :'String'
|
36
|
+
}
|
37
|
+
end
|
38
|
+
|
39
|
+
# List of attributes with nullable: true
|
40
|
+
def self.openapi_nullable
|
41
|
+
Set.new([
|
42
|
+
])
|
43
|
+
end
|
44
|
+
|
45
|
+
# Initializes the object
|
46
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
47
|
+
def initialize(attributes = {})
|
48
|
+
if (!attributes.is_a?(Hash))
|
49
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `UltracartClient::ConversationEventAddCoupon` initialize method"
|
50
|
+
end
|
51
|
+
|
52
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
53
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
54
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
55
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `UltracartClient::ConversationEventAddCoupon`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
56
|
+
end
|
57
|
+
h[k.to_sym] = v
|
58
|
+
}
|
59
|
+
|
60
|
+
if attributes.key?(:'coupon_code')
|
61
|
+
self.coupon_code = attributes[:'coupon_code']
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
66
|
+
# @return Array for valid properties with the reasons
|
67
|
+
def list_invalid_properties
|
68
|
+
invalid_properties = Array.new
|
69
|
+
invalid_properties
|
70
|
+
end
|
71
|
+
|
72
|
+
# Check to see if the all the properties in the model are valid
|
73
|
+
# @return true if the model is valid
|
74
|
+
def valid?
|
75
|
+
true
|
76
|
+
end
|
77
|
+
|
78
|
+
# Checks equality by comparing each attribute.
|
79
|
+
# @param [Object] Object to be compared
|
80
|
+
def ==(o)
|
81
|
+
return true if self.equal?(o)
|
82
|
+
self.class == o.class &&
|
83
|
+
coupon_code == o.coupon_code
|
84
|
+
end
|
85
|
+
|
86
|
+
# @see the `==` method
|
87
|
+
# @param [Object] Object to be compared
|
88
|
+
def eql?(o)
|
89
|
+
self == o
|
90
|
+
end
|
91
|
+
|
92
|
+
# Calculates hash code according to all attributes.
|
93
|
+
# @return [Integer] Hash code
|
94
|
+
def hash
|
95
|
+
[coupon_code].hash
|
96
|
+
end
|
97
|
+
|
98
|
+
# Builds the object from hash
|
99
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
100
|
+
# @return [Object] Returns the model itself
|
101
|
+
def self.build_from_hash(attributes)
|
102
|
+
new.build_from_hash(attributes)
|
103
|
+
end
|
104
|
+
|
105
|
+
# Builds the object from hash
|
106
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
107
|
+
# @return [Object] Returns the model itself
|
108
|
+
def build_from_hash(attributes)
|
109
|
+
return nil unless attributes.is_a?(Hash)
|
110
|
+
attributes = attributes.transform_keys(&:to_sym)
|
111
|
+
self.class.openapi_types.each_pair do |key, type|
|
112
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
113
|
+
self.send("#{key}=", nil)
|
114
|
+
elsif type =~ /\AArray<(.*)>/i
|
115
|
+
# check to ensure the input is an array given that the attribute
|
116
|
+
# is documented as an array but the input is not
|
117
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
118
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
119
|
+
end
|
120
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
121
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
125
|
+
self
|
126
|
+
end
|
127
|
+
|
128
|
+
# Deserializes the data based on type
|
129
|
+
# @param string type Data type
|
130
|
+
# @param string value Value to be deserialized
|
131
|
+
# @return [Object] Deserialized data
|
132
|
+
def _deserialize(type, value)
|
133
|
+
case type.to_sym
|
134
|
+
when :Time
|
135
|
+
Time.parse(value)
|
136
|
+
when :Date
|
137
|
+
Date.parse(value)
|
138
|
+
when :String
|
139
|
+
value.to_s
|
140
|
+
when :Integer
|
141
|
+
value.to_i
|
142
|
+
when :Float
|
143
|
+
value.to_f
|
144
|
+
when :Boolean
|
145
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
146
|
+
true
|
147
|
+
else
|
148
|
+
false
|
149
|
+
end
|
150
|
+
when :Object
|
151
|
+
# generic object (usually a Hash), return directly
|
152
|
+
value
|
153
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
154
|
+
inner_type = Regexp.last_match[:inner_type]
|
155
|
+
value.map { |v| _deserialize(inner_type, v) }
|
156
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
157
|
+
k_type = Regexp.last_match[:k_type]
|
158
|
+
v_type = Regexp.last_match[:v_type]
|
159
|
+
{}.tap do |hash|
|
160
|
+
value.each do |k, v|
|
161
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
162
|
+
end
|
163
|
+
end
|
164
|
+
else # model
|
165
|
+
# models (e.g. Pet) or oneOf
|
166
|
+
klass = UltracartClient.const_get(type)
|
167
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
168
|
+
end
|
169
|
+
end
|
170
|
+
|
171
|
+
# Returns the string representation of the object
|
172
|
+
# @return [String] String presentation of the object
|
173
|
+
def to_s
|
174
|
+
to_hash.to_s
|
175
|
+
end
|
176
|
+
|
177
|
+
# to_body is an alias to to_hash (backward compatibility)
|
178
|
+
# @return [Hash] Returns the object in the form of hash
|
179
|
+
def to_body
|
180
|
+
to_hash
|
181
|
+
end
|
182
|
+
|
183
|
+
# Returns the object in the form of hash
|
184
|
+
# @return [Hash] Returns the object in the form of hash
|
185
|
+
def to_hash
|
186
|
+
hash = {}
|
187
|
+
self.class.attribute_map.each_pair do |attr, param|
|
188
|
+
value = self.send(attr)
|
189
|
+
if value.nil?
|
190
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
191
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
192
|
+
end
|
193
|
+
|
194
|
+
hash[param] = _to_hash(value)
|
195
|
+
end
|
196
|
+
hash
|
197
|
+
end
|
198
|
+
|
199
|
+
# Outputs non-array value in the form of hash
|
200
|
+
# For object, use to_hash. Otherwise, just return the value
|
201
|
+
# @param [Object] value Any valid value
|
202
|
+
# @return [Hash] Returns the value in the form of hash
|
203
|
+
def _to_hash(value)
|
204
|
+
if value.is_a?(Array)
|
205
|
+
value.compact.map { |v| _to_hash(v) }
|
206
|
+
elsif value.is_a?(Hash)
|
207
|
+
{}.tap do |hash|
|
208
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
209
|
+
end
|
210
|
+
elsif value.respond_to? :to_hash
|
211
|
+
value.to_hash
|
212
|
+
else
|
213
|
+
value
|
214
|
+
end
|
215
|
+
end
|
216
|
+
|
217
|
+
end
|
218
|
+
|
219
|
+
end
|
@@ -0,0 +1,219 @@
|
|
1
|
+
=begin
|
2
|
+
#UltraCart Rest API V2
|
3
|
+
|
4
|
+
#UltraCart REST API Version 2
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.0.0
|
7
|
+
Contact: support@ultracart.com
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 6.0.1-SNAPSHOT
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
require 'time'
|
15
|
+
|
16
|
+
module UltracartClient
|
17
|
+
class ConversationEventAddItem
|
18
|
+
attr_accessor :item_id
|
19
|
+
|
20
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
21
|
+
def self.attribute_map
|
22
|
+
{
|
23
|
+
:'item_id' => :'item_id'
|
24
|
+
}
|
25
|
+
end
|
26
|
+
|
27
|
+
# Returns all the JSON keys this model knows about
|
28
|
+
def self.acceptable_attributes
|
29
|
+
attribute_map.values
|
30
|
+
end
|
31
|
+
|
32
|
+
# Attribute type mapping.
|
33
|
+
def self.openapi_types
|
34
|
+
{
|
35
|
+
:'item_id' => :'String'
|
36
|
+
}
|
37
|
+
end
|
38
|
+
|
39
|
+
# List of attributes with nullable: true
|
40
|
+
def self.openapi_nullable
|
41
|
+
Set.new([
|
42
|
+
])
|
43
|
+
end
|
44
|
+
|
45
|
+
# Initializes the object
|
46
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
47
|
+
def initialize(attributes = {})
|
48
|
+
if (!attributes.is_a?(Hash))
|
49
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `UltracartClient::ConversationEventAddItem` initialize method"
|
50
|
+
end
|
51
|
+
|
52
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
53
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
54
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
55
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `UltracartClient::ConversationEventAddItem`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
56
|
+
end
|
57
|
+
h[k.to_sym] = v
|
58
|
+
}
|
59
|
+
|
60
|
+
if attributes.key?(:'item_id')
|
61
|
+
self.item_id = attributes[:'item_id']
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
66
|
+
# @return Array for valid properties with the reasons
|
67
|
+
def list_invalid_properties
|
68
|
+
invalid_properties = Array.new
|
69
|
+
invalid_properties
|
70
|
+
end
|
71
|
+
|
72
|
+
# Check to see if the all the properties in the model are valid
|
73
|
+
# @return true if the model is valid
|
74
|
+
def valid?
|
75
|
+
true
|
76
|
+
end
|
77
|
+
|
78
|
+
# Checks equality by comparing each attribute.
|
79
|
+
# @param [Object] Object to be compared
|
80
|
+
def ==(o)
|
81
|
+
return true if self.equal?(o)
|
82
|
+
self.class == o.class &&
|
83
|
+
item_id == o.item_id
|
84
|
+
end
|
85
|
+
|
86
|
+
# @see the `==` method
|
87
|
+
# @param [Object] Object to be compared
|
88
|
+
def eql?(o)
|
89
|
+
self == o
|
90
|
+
end
|
91
|
+
|
92
|
+
# Calculates hash code according to all attributes.
|
93
|
+
# @return [Integer] Hash code
|
94
|
+
def hash
|
95
|
+
[item_id].hash
|
96
|
+
end
|
97
|
+
|
98
|
+
# Builds the object from hash
|
99
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
100
|
+
# @return [Object] Returns the model itself
|
101
|
+
def self.build_from_hash(attributes)
|
102
|
+
new.build_from_hash(attributes)
|
103
|
+
end
|
104
|
+
|
105
|
+
# Builds the object from hash
|
106
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
107
|
+
# @return [Object] Returns the model itself
|
108
|
+
def build_from_hash(attributes)
|
109
|
+
return nil unless attributes.is_a?(Hash)
|
110
|
+
attributes = attributes.transform_keys(&:to_sym)
|
111
|
+
self.class.openapi_types.each_pair do |key, type|
|
112
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
113
|
+
self.send("#{key}=", nil)
|
114
|
+
elsif type =~ /\AArray<(.*)>/i
|
115
|
+
# check to ensure the input is an array given that the attribute
|
116
|
+
# is documented as an array but the input is not
|
117
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
118
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
119
|
+
end
|
120
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
121
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
125
|
+
self
|
126
|
+
end
|
127
|
+
|
128
|
+
# Deserializes the data based on type
|
129
|
+
# @param string type Data type
|
130
|
+
# @param string value Value to be deserialized
|
131
|
+
# @return [Object] Deserialized data
|
132
|
+
def _deserialize(type, value)
|
133
|
+
case type.to_sym
|
134
|
+
when :Time
|
135
|
+
Time.parse(value)
|
136
|
+
when :Date
|
137
|
+
Date.parse(value)
|
138
|
+
when :String
|
139
|
+
value.to_s
|
140
|
+
when :Integer
|
141
|
+
value.to_i
|
142
|
+
when :Float
|
143
|
+
value.to_f
|
144
|
+
when :Boolean
|
145
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
146
|
+
true
|
147
|
+
else
|
148
|
+
false
|
149
|
+
end
|
150
|
+
when :Object
|
151
|
+
# generic object (usually a Hash), return directly
|
152
|
+
value
|
153
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
154
|
+
inner_type = Regexp.last_match[:inner_type]
|
155
|
+
value.map { |v| _deserialize(inner_type, v) }
|
156
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
157
|
+
k_type = Regexp.last_match[:k_type]
|
158
|
+
v_type = Regexp.last_match[:v_type]
|
159
|
+
{}.tap do |hash|
|
160
|
+
value.each do |k, v|
|
161
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
162
|
+
end
|
163
|
+
end
|
164
|
+
else # model
|
165
|
+
# models (e.g. Pet) or oneOf
|
166
|
+
klass = UltracartClient.const_get(type)
|
167
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
168
|
+
end
|
169
|
+
end
|
170
|
+
|
171
|
+
# Returns the string representation of the object
|
172
|
+
# @return [String] String presentation of the object
|
173
|
+
def to_s
|
174
|
+
to_hash.to_s
|
175
|
+
end
|
176
|
+
|
177
|
+
# to_body is an alias to to_hash (backward compatibility)
|
178
|
+
# @return [Hash] Returns the object in the form of hash
|
179
|
+
def to_body
|
180
|
+
to_hash
|
181
|
+
end
|
182
|
+
|
183
|
+
# Returns the object in the form of hash
|
184
|
+
# @return [Hash] Returns the object in the form of hash
|
185
|
+
def to_hash
|
186
|
+
hash = {}
|
187
|
+
self.class.attribute_map.each_pair do |attr, param|
|
188
|
+
value = self.send(attr)
|
189
|
+
if value.nil?
|
190
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
191
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
192
|
+
end
|
193
|
+
|
194
|
+
hash[param] = _to_hash(value)
|
195
|
+
end
|
196
|
+
hash
|
197
|
+
end
|
198
|
+
|
199
|
+
# Outputs non-array value in the form of hash
|
200
|
+
# For object, use to_hash. Otherwise, just return the value
|
201
|
+
# @param [Object] value Any valid value
|
202
|
+
# @return [Hash] Returns the value in the form of hash
|
203
|
+
def _to_hash(value)
|
204
|
+
if value.is_a?(Array)
|
205
|
+
value.compact.map { |v| _to_hash(v) }
|
206
|
+
elsif value.is_a?(Hash)
|
207
|
+
{}.tap do |hash|
|
208
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
209
|
+
end
|
210
|
+
elsif value.respond_to? :to_hash
|
211
|
+
value.to_hash
|
212
|
+
else
|
213
|
+
value
|
214
|
+
end
|
215
|
+
end
|
216
|
+
|
217
|
+
end
|
218
|
+
|
219
|
+
end
|
@@ -18,6 +18,10 @@ module UltracartClient
|
|
18
18
|
# Conversation UUID if the websocket message is tied to a specific conversation
|
19
19
|
attr_accessor :conversation_uuid
|
20
20
|
|
21
|
+
attr_accessor :event_add_coupon
|
22
|
+
|
23
|
+
attr_accessor :event_add_item
|
24
|
+
|
21
25
|
attr_accessor :event_conversation_closed
|
22
26
|
|
23
27
|
attr_accessor :event_new_conversation
|
@@ -72,6 +76,8 @@ module UltracartClient
|
|
72
76
|
def self.attribute_map
|
73
77
|
{
|
74
78
|
:'conversation_uuid' => :'conversation_uuid',
|
79
|
+
:'event_add_coupon' => :'event_add_coupon',
|
80
|
+
:'event_add_item' => :'event_add_item',
|
75
81
|
:'event_conversation_closed' => :'event_conversation_closed',
|
76
82
|
:'event_new_conversation' => :'event_new_conversation',
|
77
83
|
:'event_new_message' => :'event_new_message',
|
@@ -97,6 +103,8 @@ module UltracartClient
|
|
97
103
|
def self.openapi_types
|
98
104
|
{
|
99
105
|
:'conversation_uuid' => :'String',
|
106
|
+
:'event_add_coupon' => :'ConversationEventAddCoupon',
|
107
|
+
:'event_add_item' => :'ConversationEventAddItem',
|
100
108
|
:'event_conversation_closed' => :'ConversationSummary',
|
101
109
|
:'event_new_conversation' => :'ConversationSummary',
|
102
110
|
:'event_new_message' => :'ConversationSummary',
|
@@ -138,6 +146,14 @@ module UltracartClient
|
|
138
146
|
self.conversation_uuid = attributes[:'conversation_uuid']
|
139
147
|
end
|
140
148
|
|
149
|
+
if attributes.key?(:'event_add_coupon')
|
150
|
+
self.event_add_coupon = attributes[:'event_add_coupon']
|
151
|
+
end
|
152
|
+
|
153
|
+
if attributes.key?(:'event_add_item')
|
154
|
+
self.event_add_item = attributes[:'event_add_item']
|
155
|
+
end
|
156
|
+
|
141
157
|
if attributes.key?(:'event_conversation_closed')
|
142
158
|
self.event_conversation_closed = attributes[:'event_conversation_closed']
|
143
159
|
end
|
@@ -201,7 +217,7 @@ module UltracartClient
|
|
201
217
|
# Check to see if the all the properties in the model are valid
|
202
218
|
# @return true if the model is valid
|
203
219
|
def valid?
|
204
|
-
event_type_validator = EnumAttributeValidator.new('String', ["queue position", "webchat start conversation", "conversation closed", "new conversation", "new message", "updated message", "queue status update", "rrweb", "participant update", "read message", "typing"])
|
220
|
+
event_type_validator = EnumAttributeValidator.new('String', ["queue position", "webchat start conversation", "conversation closed", "new conversation", "new message", "updated message", "queue status update", "rrweb", "participant update", "read message", "typing", "add coupon", "add item"])
|
205
221
|
return false unless event_type_validator.valid?(@event_type)
|
206
222
|
type_validator = EnumAttributeValidator.new('String', ["message", "event", "ping", "check queue position"])
|
207
223
|
return false unless type_validator.valid?(@type)
|
@@ -211,7 +227,7 @@ module UltracartClient
|
|
211
227
|
# Custom attribute writer method checking allowed values (enum).
|
212
228
|
# @param [Object] event_type Object to be assigned
|
213
229
|
def event_type=(event_type)
|
214
|
-
validator = EnumAttributeValidator.new('String', ["queue position", "webchat start conversation", "conversation closed", "new conversation", "new message", "updated message", "queue status update", "rrweb", "participant update", "read message", "typing"])
|
230
|
+
validator = EnumAttributeValidator.new('String', ["queue position", "webchat start conversation", "conversation closed", "new conversation", "new message", "updated message", "queue status update", "rrweb", "participant update", "read message", "typing", "add coupon", "add item"])
|
215
231
|
unless validator.valid?(event_type)
|
216
232
|
fail ArgumentError, "invalid value for \"event_type\", must be one of #{validator.allowable_values}."
|
217
233
|
end
|
@@ -234,6 +250,8 @@ module UltracartClient
|
|
234
250
|
return true if self.equal?(o)
|
235
251
|
self.class == o.class &&
|
236
252
|
conversation_uuid == o.conversation_uuid &&
|
253
|
+
event_add_coupon == o.event_add_coupon &&
|
254
|
+
event_add_item == o.event_add_item &&
|
237
255
|
event_conversation_closed == o.event_conversation_closed &&
|
238
256
|
event_new_conversation == o.event_new_conversation &&
|
239
257
|
event_new_message == o.event_new_message &&
|
@@ -258,7 +276,7 @@ module UltracartClient
|
|
258
276
|
# Calculates hash code according to all attributes.
|
259
277
|
# @return [Integer] Hash code
|
260
278
|
def hash
|
261
|
-
[conversation_uuid, event_conversation_closed, event_new_conversation, event_new_message, event_participant_update, event_queue_position, event_queue_status_update, event_read_message, event_rrweb, event_type, event_typing, event_updated_message, message, type].hash
|
279
|
+
[conversation_uuid, event_add_coupon, event_add_item, event_conversation_closed, event_new_conversation, event_new_message, event_participant_update, event_queue_position, event_queue_status_update, event_read_message, event_rrweb, event_type, event_typing, event_updated_message, message, type].hash
|
262
280
|
end
|
263
281
|
|
264
282
|
# Builds the object from hash
|
@@ -0,0 +1,257 @@
|
|
1
|
+
=begin
|
2
|
+
#UltraCart Rest API V2
|
3
|
+
|
4
|
+
#UltraCart REST API Version 2
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.0.0
|
7
|
+
Contact: support@ultracart.com
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 6.0.1-SNAPSHOT
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
require 'time'
|
15
|
+
|
16
|
+
module UltracartClient
|
17
|
+
class OrderRefundableResponse
|
18
|
+
attr_accessor :error
|
19
|
+
|
20
|
+
attr_accessor :metadata
|
21
|
+
|
22
|
+
# Whether the order is refundable or not. Null should be interpreted as false.
|
23
|
+
attr_accessor :refundable
|
24
|
+
|
25
|
+
# Indicates if API call was successful
|
26
|
+
attr_accessor :success
|
27
|
+
|
28
|
+
attr_accessor :warning
|
29
|
+
|
30
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
31
|
+
def self.attribute_map
|
32
|
+
{
|
33
|
+
:'error' => :'error',
|
34
|
+
:'metadata' => :'metadata',
|
35
|
+
:'refundable' => :'refundable',
|
36
|
+
:'success' => :'success',
|
37
|
+
:'warning' => :'warning'
|
38
|
+
}
|
39
|
+
end
|
40
|
+
|
41
|
+
# Returns all the JSON keys this model knows about
|
42
|
+
def self.acceptable_attributes
|
43
|
+
attribute_map.values
|
44
|
+
end
|
45
|
+
|
46
|
+
# Attribute type mapping.
|
47
|
+
def self.openapi_types
|
48
|
+
{
|
49
|
+
:'error' => :'Error',
|
50
|
+
:'metadata' => :'ResponseMetadata',
|
51
|
+
:'refundable' => :'Boolean',
|
52
|
+
:'success' => :'Boolean',
|
53
|
+
:'warning' => :'Warning'
|
54
|
+
}
|
55
|
+
end
|
56
|
+
|
57
|
+
# List of attributes with nullable: true
|
58
|
+
def self.openapi_nullable
|
59
|
+
Set.new([
|
60
|
+
])
|
61
|
+
end
|
62
|
+
|
63
|
+
# Initializes the object
|
64
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
65
|
+
def initialize(attributes = {})
|
66
|
+
if (!attributes.is_a?(Hash))
|
67
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `UltracartClient::OrderRefundableResponse` initialize method"
|
68
|
+
end
|
69
|
+
|
70
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
71
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
72
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
73
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `UltracartClient::OrderRefundableResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
74
|
+
end
|
75
|
+
h[k.to_sym] = v
|
76
|
+
}
|
77
|
+
|
78
|
+
if attributes.key?(:'error')
|
79
|
+
self.error = attributes[:'error']
|
80
|
+
end
|
81
|
+
|
82
|
+
if attributes.key?(:'metadata')
|
83
|
+
self.metadata = attributes[:'metadata']
|
84
|
+
end
|
85
|
+
|
86
|
+
if attributes.key?(:'refundable')
|
87
|
+
self.refundable = attributes[:'refundable']
|
88
|
+
end
|
89
|
+
|
90
|
+
if attributes.key?(:'success')
|
91
|
+
self.success = attributes[:'success']
|
92
|
+
end
|
93
|
+
|
94
|
+
if attributes.key?(:'warning')
|
95
|
+
self.warning = attributes[:'warning']
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
100
|
+
# @return Array for valid properties with the reasons
|
101
|
+
def list_invalid_properties
|
102
|
+
invalid_properties = Array.new
|
103
|
+
invalid_properties
|
104
|
+
end
|
105
|
+
|
106
|
+
# Check to see if the all the properties in the model are valid
|
107
|
+
# @return true if the model is valid
|
108
|
+
def valid?
|
109
|
+
true
|
110
|
+
end
|
111
|
+
|
112
|
+
# Checks equality by comparing each attribute.
|
113
|
+
# @param [Object] Object to be compared
|
114
|
+
def ==(o)
|
115
|
+
return true if self.equal?(o)
|
116
|
+
self.class == o.class &&
|
117
|
+
error == o.error &&
|
118
|
+
metadata == o.metadata &&
|
119
|
+
refundable == o.refundable &&
|
120
|
+
success == o.success &&
|
121
|
+
warning == o.warning
|
122
|
+
end
|
123
|
+
|
124
|
+
# @see the `==` method
|
125
|
+
# @param [Object] Object to be compared
|
126
|
+
def eql?(o)
|
127
|
+
self == o
|
128
|
+
end
|
129
|
+
|
130
|
+
# Calculates hash code according to all attributes.
|
131
|
+
# @return [Integer] Hash code
|
132
|
+
def hash
|
133
|
+
[error, metadata, refundable, success, warning].hash
|
134
|
+
end
|
135
|
+
|
136
|
+
# Builds the object from hash
|
137
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
138
|
+
# @return [Object] Returns the model itself
|
139
|
+
def self.build_from_hash(attributes)
|
140
|
+
new.build_from_hash(attributes)
|
141
|
+
end
|
142
|
+
|
143
|
+
# Builds the object from hash
|
144
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
145
|
+
# @return [Object] Returns the model itself
|
146
|
+
def build_from_hash(attributes)
|
147
|
+
return nil unless attributes.is_a?(Hash)
|
148
|
+
attributes = attributes.transform_keys(&:to_sym)
|
149
|
+
self.class.openapi_types.each_pair do |key, type|
|
150
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
151
|
+
self.send("#{key}=", nil)
|
152
|
+
elsif type =~ /\AArray<(.*)>/i
|
153
|
+
# check to ensure the input is an array given that the attribute
|
154
|
+
# is documented as an array but the input is not
|
155
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
156
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
157
|
+
end
|
158
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
159
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
160
|
+
end
|
161
|
+
end
|
162
|
+
|
163
|
+
self
|
164
|
+
end
|
165
|
+
|
166
|
+
# Deserializes the data based on type
|
167
|
+
# @param string type Data type
|
168
|
+
# @param string value Value to be deserialized
|
169
|
+
# @return [Object] Deserialized data
|
170
|
+
def _deserialize(type, value)
|
171
|
+
case type.to_sym
|
172
|
+
when :Time
|
173
|
+
Time.parse(value)
|
174
|
+
when :Date
|
175
|
+
Date.parse(value)
|
176
|
+
when :String
|
177
|
+
value.to_s
|
178
|
+
when :Integer
|
179
|
+
value.to_i
|
180
|
+
when :Float
|
181
|
+
value.to_f
|
182
|
+
when :Boolean
|
183
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
184
|
+
true
|
185
|
+
else
|
186
|
+
false
|
187
|
+
end
|
188
|
+
when :Object
|
189
|
+
# generic object (usually a Hash), return directly
|
190
|
+
value
|
191
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
192
|
+
inner_type = Regexp.last_match[:inner_type]
|
193
|
+
value.map { |v| _deserialize(inner_type, v) }
|
194
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
195
|
+
k_type = Regexp.last_match[:k_type]
|
196
|
+
v_type = Regexp.last_match[:v_type]
|
197
|
+
{}.tap do |hash|
|
198
|
+
value.each do |k, v|
|
199
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
200
|
+
end
|
201
|
+
end
|
202
|
+
else # model
|
203
|
+
# models (e.g. Pet) or oneOf
|
204
|
+
klass = UltracartClient.const_get(type)
|
205
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
206
|
+
end
|
207
|
+
end
|
208
|
+
|
209
|
+
# Returns the string representation of the object
|
210
|
+
# @return [String] String presentation of the object
|
211
|
+
def to_s
|
212
|
+
to_hash.to_s
|
213
|
+
end
|
214
|
+
|
215
|
+
# to_body is an alias to to_hash (backward compatibility)
|
216
|
+
# @return [Hash] Returns the object in the form of hash
|
217
|
+
def to_body
|
218
|
+
to_hash
|
219
|
+
end
|
220
|
+
|
221
|
+
# Returns the object in the form of hash
|
222
|
+
# @return [Hash] Returns the object in the form of hash
|
223
|
+
def to_hash
|
224
|
+
hash = {}
|
225
|
+
self.class.attribute_map.each_pair do |attr, param|
|
226
|
+
value = self.send(attr)
|
227
|
+
if value.nil?
|
228
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
229
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
230
|
+
end
|
231
|
+
|
232
|
+
hash[param] = _to_hash(value)
|
233
|
+
end
|
234
|
+
hash
|
235
|
+
end
|
236
|
+
|
237
|
+
# Outputs non-array value in the form of hash
|
238
|
+
# For object, use to_hash. Otherwise, just return the value
|
239
|
+
# @param [Object] value Any valid value
|
240
|
+
# @return [Hash] Returns the value in the form of hash
|
241
|
+
def _to_hash(value)
|
242
|
+
if value.is_a?(Array)
|
243
|
+
value.compact.map { |v| _to_hash(v) }
|
244
|
+
elsif value.is_a?(Hash)
|
245
|
+
{}.tap do |hash|
|
246
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
247
|
+
end
|
248
|
+
elsif value.respond_to? :to_hash
|
249
|
+
value.to_hash
|
250
|
+
else
|
251
|
+
value
|
252
|
+
end
|
253
|
+
end
|
254
|
+
|
255
|
+
end
|
256
|
+
|
257
|
+
end
|
data/lib/ultracart_api.rb
CHANGED
@@ -137,6 +137,8 @@ require 'ultracart_api/models/city_state_zip'
|
|
137
137
|
require 'ultracart_api/models/conversation'
|
138
138
|
require 'ultracart_api/models/conversation_agent_auth'
|
139
139
|
require 'ultracart_api/models/conversation_agent_auth_response'
|
140
|
+
require 'ultracart_api/models/conversation_event_add_coupon'
|
141
|
+
require 'ultracart_api/models/conversation_event_add_item'
|
140
142
|
require 'ultracart_api/models/conversation_event_queue_position'
|
141
143
|
require 'ultracart_api/models/conversation_event_rr_web'
|
142
144
|
require 'ultracart_api/models/conversation_event_read_message'
|
@@ -559,6 +561,7 @@ require 'ultracart_api/models/order_property'
|
|
559
561
|
require 'ultracart_api/models/order_query'
|
560
562
|
require 'ultracart_api/models/order_query_batch'
|
561
563
|
require 'ultracart_api/models/order_quote'
|
564
|
+
require 'ultracart_api/models/order_refundable_response'
|
562
565
|
require 'ultracart_api/models/order_replacement'
|
563
566
|
require 'ultracart_api/models/order_replacement_item'
|
564
567
|
require 'ultracart_api/models/order_replacement_response'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ultracart_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.
|
4
|
+
version: 4.0.83.rc
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- UltraCart
|
@@ -187,6 +187,8 @@ files:
|
|
187
187
|
- docs/ConversationAgentAuth.md
|
188
188
|
- docs/ConversationAgentAuthResponse.md
|
189
189
|
- docs/ConversationApi.md
|
190
|
+
- docs/ConversationEventAddCoupon.md
|
191
|
+
- docs/ConversationEventAddItem.md
|
190
192
|
- docs/ConversationEventQueuePosition.md
|
191
193
|
- docs/ConversationEventRRWeb.md
|
192
194
|
- docs/ConversationEventReadMessage.md
|
@@ -617,6 +619,7 @@ files:
|
|
617
619
|
- docs/OrderQuery.md
|
618
620
|
- docs/OrderQueryBatch.md
|
619
621
|
- docs/OrderQuote.md
|
622
|
+
- docs/OrderRefundableResponse.md
|
620
623
|
- docs/OrderReplacement.md
|
621
624
|
- docs/OrderReplacementItem.md
|
622
625
|
- docs/OrderReplacementResponse.md
|
@@ -906,6 +909,8 @@ files:
|
|
906
909
|
- lib/ultracart_api/models/conversation.rb
|
907
910
|
- lib/ultracart_api/models/conversation_agent_auth.rb
|
908
911
|
- lib/ultracart_api/models/conversation_agent_auth_response.rb
|
912
|
+
- lib/ultracart_api/models/conversation_event_add_coupon.rb
|
913
|
+
- lib/ultracart_api/models/conversation_event_add_item.rb
|
909
914
|
- lib/ultracart_api/models/conversation_event_queue_position.rb
|
910
915
|
- lib/ultracart_api/models/conversation_event_read_message.rb
|
911
916
|
- lib/ultracart_api/models/conversation_event_rr_web.rb
|
@@ -1328,6 +1333,7 @@ files:
|
|
1328
1333
|
- lib/ultracart_api/models/order_query.rb
|
1329
1334
|
- lib/ultracart_api/models/order_query_batch.rb
|
1330
1335
|
- lib/ultracart_api/models/order_quote.rb
|
1336
|
+
- lib/ultracart_api/models/order_refundable_response.rb
|
1331
1337
|
- lib/ultracart_api/models/order_replacement.rb
|
1332
1338
|
- lib/ultracart_api/models/order_replacement_item.rb
|
1333
1339
|
- lib/ultracart_api/models/order_replacement_response.rb
|