helloextend_api_client 1.0.2

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 (102) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +151 -0
  4. data/Rakefile +10 -0
  5. data/docs/Address.md +27 -0
  6. data/docs/Amount.md +19 -0
  7. data/docs/Contract.md +39 -0
  8. data/docs/ContractPlan.md +19 -0
  9. data/docs/ContractProduct.md +27 -0
  10. data/docs/ContractsApi.md +180 -0
  11. data/docs/Customer.md +23 -0
  12. data/docs/Error.md +19 -0
  13. data/docs/Invoice.md +27 -0
  14. data/docs/InvoiceDetails.md +19 -0
  15. data/docs/InvoiceDiscount.md +21 -0
  16. data/docs/InvoiceItems.md +31 -0
  17. data/docs/InvoiceMetadata.md +21 -0
  18. data/docs/InvoiceMetadataProduct.md +21 -0
  19. data/docs/InvoicePayee.md +23 -0
  20. data/docs/InvoicePayer.md +23 -0
  21. data/docs/Offer.md +17 -0
  22. data/docs/OfferPlan.md +23 -0
  23. data/docs/OfferPlanContract.md +27 -0
  24. data/docs/OffersApi.md +58 -0
  25. data/docs/Plan.md +21 -0
  26. data/docs/PlanDetails.md +21 -0
  27. data/docs/PlanPrices.md +21 -0
  28. data/docs/PlansApi.md +61 -0
  29. data/docs/PlansList.md +17 -0
  30. data/docs/Product.md +45 -0
  31. data/docs/ProductIdentifiers.md +25 -0
  32. data/docs/ProductMfrWarranty.md +21 -0
  33. data/docs/ProductsApi.md +241 -0
  34. data/git_push.sh +58 -0
  35. data/helloextend_api_client.gemspec +39 -0
  36. data/lib/helloextend_api_client.rb +68 -0
  37. data/lib/helloextend_api_client/api/contracts_api.rb +229 -0
  38. data/lib/helloextend_api_client/api/offers_api.rb +90 -0
  39. data/lib/helloextend_api_client/api/plans_api.rb +82 -0
  40. data/lib/helloextend_api_client/api/products_api.rb +298 -0
  41. data/lib/helloextend_api_client/api_client.rb +388 -0
  42. data/lib/helloextend_api_client/api_error.rb +57 -0
  43. data/lib/helloextend_api_client/configuration.rb +248 -0
  44. data/lib/helloextend_api_client/models/address.rb +259 -0
  45. data/lib/helloextend_api_client/models/amount.rb +217 -0
  46. data/lib/helloextend_api_client/models/contract.rb +378 -0
  47. data/lib/helloextend_api_client/models/contract_plan.rb +228 -0
  48. data/lib/helloextend_api_client/models/contract_product.rb +268 -0
  49. data/lib/helloextend_api_client/models/customer.rb +245 -0
  50. data/lib/helloextend_api_client/models/error.rb +225 -0
  51. data/lib/helloextend_api_client/models/invoice.rb +254 -0
  52. data/lib/helloextend_api_client/models/invoice_details.rb +216 -0
  53. data/lib/helloextend_api_client/models/invoice_discount.rb +226 -0
  54. data/lib/helloextend_api_client/models/invoice_items.rb +271 -0
  55. data/lib/helloextend_api_client/models/invoice_metadata.rb +226 -0
  56. data/lib/helloextend_api_client/models/invoice_metadata_product.rb +225 -0
  57. data/lib/helloextend_api_client/models/invoice_payee.rb +233 -0
  58. data/lib/helloextend_api_client/models/invoice_payer.rb +233 -0
  59. data/lib/helloextend_api_client/models/offer.rb +208 -0
  60. data/lib/helloextend_api_client/models/offer_plan.rb +236 -0
  61. data/lib/helloextend_api_client/models/offer_plan_contract.rb +258 -0
  62. data/lib/helloextend_api_client/models/plan.rb +225 -0
  63. data/lib/helloextend_api_client/models/plan_details.rb +227 -0
  64. data/lib/helloextend_api_client/models/plan_prices.rb +230 -0
  65. data/lib/helloextend_api_client/models/plans_list.rb +208 -0
  66. data/lib/helloextend_api_client/models/product.rb +429 -0
  67. data/lib/helloextend_api_client/models/product_identifiers.rb +247 -0
  68. data/lib/helloextend_api_client/models/product_mfr_warranty.rb +228 -0
  69. data/lib/helloextend_api_client/version.rb +15 -0
  70. data/spec/api/contracts_api_spec.rb +74 -0
  71. data/spec/api/offers_api_spec.rb +48 -0
  72. data/spec/api/plans_api_spec.rb +46 -0
  73. data/spec/api/products_api_spec.rb +88 -0
  74. data/spec/api_client_spec.rb +226 -0
  75. data/spec/configuration_spec.rb +42 -0
  76. data/spec/models/address_spec.rb +71 -0
  77. data/spec/models/amount_spec.rb +47 -0
  78. data/spec/models/contract_plan_spec.rb +47 -0
  79. data/spec/models/contract_product_spec.rb +71 -0
  80. data/spec/models/contract_spec.rb +111 -0
  81. data/spec/models/customer_spec.rb +59 -0
  82. data/spec/models/error_spec.rb +47 -0
  83. data/spec/models/invoice_details_spec.rb +47 -0
  84. data/spec/models/invoice_discount_spec.rb +53 -0
  85. data/spec/models/invoice_items_spec.rb +83 -0
  86. data/spec/models/invoice_metadata_product_spec.rb +53 -0
  87. data/spec/models/invoice_metadata_spec.rb +53 -0
  88. data/spec/models/invoice_payee_spec.rb +59 -0
  89. data/spec/models/invoice_payer_spec.rb +59 -0
  90. data/spec/models/invoice_spec.rb +71 -0
  91. data/spec/models/offer_plan_contract_spec.rb +71 -0
  92. data/spec/models/offer_plan_spec.rb +59 -0
  93. data/spec/models/offer_spec.rb +41 -0
  94. data/spec/models/plan_details_spec.rb +53 -0
  95. data/spec/models/plan_prices_spec.rb +53 -0
  96. data/spec/models/plan_spec.rb +53 -0
  97. data/spec/models/plans_list_spec.rb +41 -0
  98. data/spec/models/product_identifiers_spec.rb +65 -0
  99. data/spec/models/product_mfr_warranty_spec.rb +53 -0
  100. data/spec/models/product_spec.rb +129 -0
  101. data/spec/spec_helper.rb +111 -0
  102. metadata +235 -0
@@ -0,0 +1,17 @@
1
+ # HelloextendApiClient::PlansList
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **plans** | [**Array<Plan>**](Plan.md) | | [optional]
8
+
9
+ ## Code Sample
10
+
11
+ ```ruby
12
+ require 'HelloextendApiClient'
13
+
14
+ instance = HelloextendApiClient::PlansList.new(plans: null)
15
+ ```
16
+
17
+
@@ -0,0 +1,45 @@
1
+ # HelloextendApiClient::Product
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **brand** | **String** | Product Brand, Manufacturer or Vendor | [optional]
8
+ **category** | **String** | Product category. Can be any value and may be used by Extend to map the product to warranty plans. | [optional]
9
+ **created_at** | **Float** | The timestamp when the object was created (internal) | [optional] [readonly]
10
+ **description** | **String** | Product description | [optional]
11
+ **enabled** | **Boolean** | Enable/disable selling of warranties on this product | [optional]
12
+ **image_url** | **String** | A url pointing to the primary image for the product | [optional]
13
+ **mfr_warranty** | [**ProductMfrWarranty**](ProductMfrWarranty.md) | | [optional]
14
+ **price** | **Float** | The base retail price of the product (in cents) |
15
+ **title** | **String** | Product name |
16
+ **updated_at** | **Float** | The timestamp when the object was last updated (internal) | [optional] [readonly]
17
+ **status** | **String** | | [optional] [readonly]
18
+ **reference_id** | **String** | This is the unique identifier that identifies the product. This can be a product SKU, or variant id. |
19
+ **parent_reference_id** | **String** | This is the id of the parent product, if there is one. This allows nesting of a single parent product with multiple variants (such as multiple color options for the same product) | [optional]
20
+ **plans** | **Array<String>** | A list of all extended warranty plans for which the product is eligible, listed by planId. The Offers SDK or Offers API will provide more detail about which plan options to display for a given product at a given time. | [optional]
21
+ **identifiers** | [**ProductIdentifiers**](ProductIdentifiers.md) | | [optional]
22
+
23
+ ## Code Sample
24
+
25
+ ```ruby
26
+ require 'HelloextendApiClient'
27
+
28
+ instance = HelloextendApiClient::Product.new(brand: ACME,
29
+ category: sports,
30
+ created_at: 1557267465,
31
+ description: One Dozen. Tickle your friends! Suprise your opponent!,
32
+ enabled: true,
33
+ image_url: https://bit.ly/2VN88Jf,
34
+ mfr_warranty: null,
35
+ price: 2599,
36
+ title: Explosive Tennis Balls,
37
+ updated_at: 1557267465,
38
+ status: new,
39
+ reference_id: 2324f800-7575-4c65-bd2c-588c89e8ab7f,
40
+ parent_reference_id: 2324f800-7575-4c65-bd2c-588c89e8ab7f,
41
+ plans: null,
42
+ identifiers: null)
43
+ ```
44
+
45
+
@@ -0,0 +1,25 @@
1
+ # HelloextendApiClient::ProductIdentifiers
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **sku** | **String** | A unique identifier for the product that is specific to your store | [optional]
8
+ **gtin** | **String** | <p>Global Trade Item Number (GTIN) - A unique identifier for trade items, developed by GS1. <a href='https://www.gs1.org/standards/id-keys/gtin'>Learn more here</a></p> | [optional]
9
+ **upc** | **String** | The Universal Product Code (UPC) barcode | [optional]
10
+ **asin** | **String** | The Amazon Standard Identification Number (ASIN) | [optional]
11
+ **barcode** | **String** | The product's barcode. Non-Standard | [optional]
12
+
13
+ ## Code Sample
14
+
15
+ ```ruby
16
+ require 'HelloextendApiClient'
17
+
18
+ instance = HelloextendApiClient::ProductIdentifiers.new(sku: KS944RUR,
19
+ gtin: 012345678901234,
20
+ upc: 0123456789012,
21
+ asin: 0123456789,
22
+ barcode: 123)
23
+ ```
24
+
25
+
@@ -0,0 +1,21 @@
1
+ # HelloextendApiClient::ProductMfrWarranty
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **parts** | **Float** | Length of the manufacturers warranty for parts in months. | [optional]
8
+ **labor** | **Float** | Length of the manufacturers warranty for labor in months. | [optional]
9
+ **url** | **String** | Link to the manufacturers warranty for this product. | [optional]
10
+
11
+ ## Code Sample
12
+
13
+ ```ruby
14
+ require 'HelloextendApiClient'
15
+
16
+ instance = HelloextendApiClient::ProductMfrWarranty.new(parts: 12,
17
+ labor: 12,
18
+ url: http://example.com)
19
+ ```
20
+
21
+
@@ -0,0 +1,241 @@
1
+ # HelloextendApiClient::ProductsApi
2
+
3
+ All URIs are relative to *https://api-demo.helloextend.com*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**stores_store_id_products_post**](ProductsApi.md#stores_store_id_products_post) | **POST** /stores/{storeId}/products | Create a product
8
+ [**stores_store_id_products_product_id_delete**](ProductsApi.md#stores_store_id_products_product_id_delete) | **DELETE** /stores/{storeId}/products/{productId} | Delete a product
9
+ [**stores_store_id_products_product_id_get**](ProductsApi.md#stores_store_id_products_product_id_get) | **GET** /stores/{storeId}/products/{productId} | Get a product
10
+ [**stores_store_id_products_product_id_put**](ProductsApi.md#stores_store_id_products_product_id_put) | **PUT** /stores/{storeId}/products/{productId} | Update a product
11
+
12
+
13
+
14
+ ## stores_store_id_products_post
15
+
16
+ > Product stores_store_id_products_post(store_id, opts)
17
+
18
+ Create a product
19
+
20
+ ### Example
21
+
22
+ ```ruby
23
+ # load the gem
24
+ require 'helloextend_api_client'
25
+ # setup authorization
26
+ HelloextendApiClient.configure do |config|
27
+ # Configure API key authorization: ExtendAccessToken
28
+ config.api_key['X-Extend-Access-Token'] = 'YOUR API KEY'
29
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
30
+ #config.api_key_prefix['X-Extend-Access-Token'] = 'Bearer'
31
+ end
32
+
33
+ api_instance = HelloextendApiClient::ProductsApi.new
34
+ store_id = 'c57ed096-24ef-49a4-a20a-d1b8bf770980' # String | Unique identifier for a Store on Extend
35
+ opts = {
36
+ batch: true, # Boolean | Use the value true if passing a batch of products.
37
+ upsert: true, # Boolean | If true, will update products that already exist.
38
+ product: HelloextendApiClient::Product.new # Product |
39
+ }
40
+
41
+ begin
42
+ #Create a product
43
+ result = api_instance.stores_store_id_products_post(store_id, opts)
44
+ p result
45
+ rescue HelloextendApiClient::ApiError => e
46
+ puts "Exception when calling ProductsApi->stores_store_id_products_post: #{e}"
47
+ end
48
+ ```
49
+
50
+ ### Parameters
51
+
52
+
53
+ Name | Type | Description | Notes
54
+ ------------- | ------------- | ------------- | -------------
55
+ **store_id** | [**String**](.md)| Unique identifier for a Store on Extend |
56
+ **batch** | **Boolean**| Use the value true if passing a batch of products. | [optional]
57
+ **upsert** | **Boolean**| If true, will update products that already exist. | [optional]
58
+ **product** | [**Product**](Product.md)| | [optional]
59
+
60
+ ### Return type
61
+
62
+ [**Product**](Product.md)
63
+
64
+ ### Authorization
65
+
66
+ [ExtendAccessToken](../README.md#ExtendAccessToken)
67
+
68
+ ### HTTP request headers
69
+
70
+ - **Content-Type**: application/json
71
+ - **Accept**: application/json
72
+
73
+
74
+ ## stores_store_id_products_product_id_delete
75
+
76
+ > stores_store_id_products_product_id_delete(store_id, product_id)
77
+
78
+ Delete a product
79
+
80
+ ### Example
81
+
82
+ ```ruby
83
+ # load the gem
84
+ require 'helloextend_api_client'
85
+ # setup authorization
86
+ HelloextendApiClient.configure do |config|
87
+ # Configure API key authorization: ExtendAccessToken
88
+ config.api_key['X-Extend-Access-Token'] = 'YOUR API KEY'
89
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
90
+ #config.api_key_prefix['X-Extend-Access-Token'] = 'Bearer'
91
+ end
92
+
93
+ api_instance = HelloextendApiClient::ProductsApi.new
94
+ store_id = 'c57ed096-24ef-49a4-a20a-d1b8bf770980' # String | Unique identifier for a Store on Extend
95
+ product_id = 'product_id_example' # String | The unique referenceId passed to extend when creating a product.
96
+
97
+ begin
98
+ #Delete a product
99
+ api_instance.stores_store_id_products_product_id_delete(store_id, product_id)
100
+ rescue HelloextendApiClient::ApiError => e
101
+ puts "Exception when calling ProductsApi->stores_store_id_products_product_id_delete: #{e}"
102
+ end
103
+ ```
104
+
105
+ ### Parameters
106
+
107
+
108
+ Name | Type | Description | Notes
109
+ ------------- | ------------- | ------------- | -------------
110
+ **store_id** | [**String**](.md)| Unique identifier for a Store on Extend |
111
+ **product_id** | [**String**](.md)| The unique referenceId passed to extend when creating a product. |
112
+
113
+ ### Return type
114
+
115
+ nil (empty response body)
116
+
117
+ ### Authorization
118
+
119
+ [ExtendAccessToken](../README.md#ExtendAccessToken)
120
+
121
+ ### HTTP request headers
122
+
123
+ - **Content-Type**: Not defined
124
+ - **Accept**: application/json
125
+
126
+
127
+ ## stores_store_id_products_product_id_get
128
+
129
+ > Product stores_store_id_products_product_id_get(store_id, product_id)
130
+
131
+ Get a product
132
+
133
+ Returns information about a product
134
+
135
+ ### Example
136
+
137
+ ```ruby
138
+ # load the gem
139
+ require 'helloextend_api_client'
140
+ # setup authorization
141
+ HelloextendApiClient.configure do |config|
142
+ # Configure API key authorization: ExtendAccessToken
143
+ config.api_key['X-Extend-Access-Token'] = 'YOUR API KEY'
144
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
145
+ #config.api_key_prefix['X-Extend-Access-Token'] = 'Bearer'
146
+ end
147
+
148
+ api_instance = HelloextendApiClient::ProductsApi.new
149
+ store_id = 'c57ed096-24ef-49a4-a20a-d1b8bf770980' # String | Unique identifier for a Store on Extend
150
+ product_id = 'product_id_example' # String | The unique referenceId passed to extend when creating a product.
151
+
152
+ begin
153
+ #Get a product
154
+ result = api_instance.stores_store_id_products_product_id_get(store_id, product_id)
155
+ p result
156
+ rescue HelloextendApiClient::ApiError => e
157
+ puts "Exception when calling ProductsApi->stores_store_id_products_product_id_get: #{e}"
158
+ end
159
+ ```
160
+
161
+ ### Parameters
162
+
163
+
164
+ Name | Type | Description | Notes
165
+ ------------- | ------------- | ------------- | -------------
166
+ **store_id** | [**String**](.md)| Unique identifier for a Store on Extend |
167
+ **product_id** | [**String**](.md)| The unique referenceId passed to extend when creating a product. |
168
+
169
+ ### Return type
170
+
171
+ [**Product**](Product.md)
172
+
173
+ ### Authorization
174
+
175
+ [ExtendAccessToken](../README.md#ExtendAccessToken)
176
+
177
+ ### HTTP request headers
178
+
179
+ - **Content-Type**: Not defined
180
+ - **Accept**: application/json
181
+
182
+
183
+ ## stores_store_id_products_product_id_put
184
+
185
+ > Product stores_store_id_products_product_id_put(store_id, product_id, opts)
186
+
187
+ Update a product
188
+
189
+ When you update a product, you may not update the referenceId.
190
+
191
+ ### Example
192
+
193
+ ```ruby
194
+ # load the gem
195
+ require 'helloextend_api_client'
196
+ # setup authorization
197
+ HelloextendApiClient.configure do |config|
198
+ # Configure API key authorization: ExtendAccessToken
199
+ config.api_key['X-Extend-Access-Token'] = 'YOUR API KEY'
200
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
201
+ #config.api_key_prefix['X-Extend-Access-Token'] = 'Bearer'
202
+ end
203
+
204
+ api_instance = HelloextendApiClient::ProductsApi.new
205
+ store_id = 'c57ed096-24ef-49a4-a20a-d1b8bf770980' # String | Unique identifier for a Store on Extend
206
+ product_id = 'product_id_example' # String | The unique referenceId passed to extend when creating a product.
207
+ opts = {
208
+ unknown_base_type: HelloextendApiClient::UNKNOWN_BASE_TYPE.new # UNKNOWN_BASE_TYPE |
209
+ }
210
+
211
+ begin
212
+ #Update a product
213
+ result = api_instance.stores_store_id_products_product_id_put(store_id, product_id, opts)
214
+ p result
215
+ rescue HelloextendApiClient::ApiError => e
216
+ puts "Exception when calling ProductsApi->stores_store_id_products_product_id_put: #{e}"
217
+ end
218
+ ```
219
+
220
+ ### Parameters
221
+
222
+
223
+ Name | Type | Description | Notes
224
+ ------------- | ------------- | ------------- | -------------
225
+ **store_id** | [**String**](.md)| Unique identifier for a Store on Extend |
226
+ **product_id** | [**String**](.md)| The unique referenceId passed to extend when creating a product. |
227
+ **unknown_base_type** | [**UNKNOWN_BASE_TYPE**](UNKNOWN_BASE_TYPE.md)| | [optional]
228
+
229
+ ### Return type
230
+
231
+ [**Product**](Product.md)
232
+
233
+ ### Authorization
234
+
235
+ [ExtendAccessToken](../README.md#ExtendAccessToken)
236
+
237
+ ### HTTP request headers
238
+
239
+ - **Content-Type**: application/json
240
+ - **Accept**: application/json
241
+
@@ -0,0 +1,58 @@
1
+ #!/bin/sh
2
+ # ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/
3
+ #
4
+ # Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-perl "minor update" "gitlab.com"
5
+
6
+ git_user_id=$1
7
+ git_repo_id=$2
8
+ release_note=$3
9
+ git_host=$4
10
+
11
+ if [ "$git_host" = "" ]; then
12
+ git_host="github.com"
13
+ echo "[INFO] No command line input provided. Set \$git_host to $git_host"
14
+ fi
15
+
16
+ if [ "$git_user_id" = "" ]; then
17
+ git_user_id="GIT_USER_ID"
18
+ echo "[INFO] No command line input provided. Set \$git_user_id to $git_user_id"
19
+ fi
20
+
21
+ if [ "$git_repo_id" = "" ]; then
22
+ git_repo_id="GIT_REPO_ID"
23
+ echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id"
24
+ fi
25
+
26
+ if [ "$release_note" = "" ]; then
27
+ release_note="Minor update"
28
+ echo "[INFO] No command line input provided. Set \$release_note to $release_note"
29
+ fi
30
+
31
+ # Initialize the local directory as a Git repository
32
+ git init
33
+
34
+ # Adds the files in the local repository and stages them for commit.
35
+ git add .
36
+
37
+ # Commits the tracked changes and prepares them to be pushed to a remote repository.
38
+ git commit -m "$release_note"
39
+
40
+ # Sets the new remote
41
+ git_remote=`git remote`
42
+ if [ "$git_remote" = "" ]; then # git remote not defined
43
+
44
+ if [ "$GIT_TOKEN" = "" ]; then
45
+ echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment."
46
+ git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git
47
+ else
48
+ git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git
49
+ fi
50
+
51
+ fi
52
+
53
+ git pull origin master
54
+
55
+ # Pushes (Forces) the changes in the local repository up to the remote repository
56
+ echo "Git pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git"
57
+ git push origin master 2>&1 | grep -v 'To https'
58
+
@@ -0,0 +1,39 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ =begin
4
+ #Extend API Reference
5
+
6
+ ## Introduction Welcome to the Extend API Documentation! Our goal is to make your integration as clear and easy as possible, so if you have feedback or suggestions for our API or reference docs, [please let us know](mailto:devs@helloextend.com). If you are implementing the API for the first time, please use the latest \"2019-08-01\" API version. If you have already implemented the API and haven't specified a version, you are on the \"Default\" API version. #### You can get up and running with Extend with just 5 simple steps: * Create an account with Extend, and get an access token from your Extend merchant portal * Sync your store's products to Extend * Get the relevant Extend warranty SKUs and add them to your store * Add the JS SDK snippets to your store's website, which will enable warranty offers to be displayed in your store * Record warranty purchases with Extend so we can create a new contract and deliver it to the customer, or record warranty returns / refunds so we can cancel the contract and account for the refunded amount <div class='wrapper tip'><h2>Pro Tip! Keep your store's products up to date</h2><p>To make sure you are selling warranty plans on all eligible products (and not selling them on ineligible ones), it is best to keep your store's products in sync with Extend. If you update your products infrequently, it might be easiest to manually upload or edit products in your merchant portal. If you do update frequently, though, consider integrating with our Products API resource.</p><p>Need help? <a href='mailto:devs@helloextend.com'>Contact us!</a> We love to help!</p></div>
7
+
8
+ The version of the OpenAPI document: Default
9
+
10
+ Generated by: https://openapi-generator.tech
11
+ OpenAPI Generator version: 4.3.1-SNAPSHOT
12
+
13
+ =end
14
+
15
+ $:.push File.expand_path("../lib", __FILE__)
16
+ require "helloextend_api_client/version"
17
+
18
+ Gem::Specification.new do |s|
19
+ s.name = "helloextend_api_client"
20
+ s.version = HelloextendApiClient::VERSION
21
+ s.platform = Gem::Platform::RUBY
22
+ s.authors = ["Daniel Pritchett"]
23
+ s.email = ["daniel@dpritchett.net"]
24
+ s.homepage = "https://github.com/dpritchett/helloextend-ruby-client"
25
+ s.summary = "REST API Client for the helloextend.com ecommerce warranty API"
26
+ s.description = "REST API Client for the helloextend.com ecommerce warranty API"
27
+ s.license = 'MIT'
28
+ s.required_ruby_version = "~> 2.7.1"
29
+
30
+ s.add_runtime_dependency 'typhoeus', '~> 1.0', '>= 1.0.1'
31
+ s.add_runtime_dependency 'json', '~> 2.1', '>= 2.1.0'
32
+
33
+ s.add_development_dependency 'rspec', '~> 3.6', '>= 3.6.0'
34
+
35
+ s.files = `find *`.split("\n").uniq.sort.select { |f| !f.empty? }
36
+ s.test_files = `find spec/*`.split("\n")
37
+ s.executables = []
38
+ s.require_paths = ["lib"]
39
+ end