square.rb 5.3.0.20200528 → 6.0.0.20200625

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.
@@ -56,4 +56,5 @@ require_relative 'square/api/loyalty_api.rb'
56
56
  require_relative 'square/api/merchants_api.rb'
57
57
  require_relative 'square/api/payments_api.rb'
58
58
  require_relative 'square/api/refunds_api.rb'
59
+ require_relative 'square/api/team_api.rb'
59
60
  require_relative 'square/api/terminal_api.rb'
@@ -8,8 +8,8 @@ module Square
8
8
  @http_call_back = http_call_back
9
9
 
10
10
  @global_headers = {
11
- 'user-agent' => 'Square-Ruby-SDK/5.3.0.20200528',
12
- 'Square-Version' => '2020-05-28'
11
+ 'user-agent' => 'Square-Ruby-SDK/6.0.0.20200625',
12
+ 'Square-Version' => '2020-06-25'
13
13
  }
14
14
  end
15
15
 
@@ -139,34 +139,7 @@ module Square
139
139
  # [CatalogObject](#type-catalogobject) at a later time.
140
140
  # CreateCatalogImage accepts HTTP multipart/form-data requests with a JSON
141
141
  # part and an image file part in
142
- # JPEG, PJPEG, PNG, or GIF format. The maximum file size is 15MB. The
143
- # following is an example of such an HTTP request:
144
- # ```
145
- # POST /v2/catalog/images
146
- # Accept: application/json
147
- # Content-Type: multipart/form-data;boundary="boundary"
148
- # Square-Version: XXXX-XX-XX
149
- # Authorization: Bearer {ACCESS_TOKEN}
150
- # --boundary
151
- # Content-Disposition: form-data; name="request"
152
- # Content-Type: application/json
153
- # {
154
- # "idempotency_key":"528dea59-7bfb-43c1-bd48-4a6bba7dd61f86",
155
- # "object_id": "ND6EA5AAJEO5WL3JNNIAQA32",
156
- # "image":{
157
- # "id":"#TEMP_ID",
158
- # "type":"IMAGE",
159
- # "image_data":{
160
- # "caption":"A picture of a cup of coffee"
161
- # }
162
- # }
163
- # }
164
- # --boundary
165
- # Content-Disposition: form-data; name="image"; filename="Coffee.jpg"
166
- # Content-Type: image/jpeg
167
- # {ACTUAL_IMAGE_BYTES}
168
- # --boundary
169
- # ```
142
+ # JPEG, PJPEG, PNG, or GIF format. The maximum file size is 15MB.
170
143
  # Additional information and an example cURL request can be found in the
171
144
  # [Create a Catalog Image
172
145
  # recipe](https://developer.squareup.com/docs/more-apis/catalog/cookbook/cre
@@ -400,7 +373,7 @@ module Square
400
373
  # `false`
401
374
  # @return [RetrieveCatalogObjectResponse Hash] response from the API call
402
375
  def retrieve_catalog_object(object_id:,
403
- include_related_objects: nil)
376
+ include_related_objects: false)
404
377
  # Prepare query url.
405
378
  _query_builder = config.get_base_uri
406
379
  _query_builder << '/v2/catalog/object/{object_id}'
@@ -433,22 +406,20 @@ module Square
433
406
  ApiResponse.new(_response, data: decoded, errors: _errors)
434
407
  end
435
408
 
436
- # Queries the targeted catalog using a variety of query types:
437
- # [CatalogQuerySortedAttribute](#type-catalogquerysortedattribute),
438
- # [CatalogQueryExact](#type-catalogqueryexact),
439
- # [CatalogQueryRange](#type-catalogqueryrange),
440
- # [CatalogQueryText](#type-catalogquerytext),
441
- # [CatalogQueryItemsForTax](#type-catalogqueryitemsfortax), and
442
- # [CatalogQueryItemsForModifierList](#type-catalogqueryitemsformodifierlist)
443
- # .
444
- # --
445
- # --
446
- # Future end of the above comment:
447
- # [CatalogQueryItemsForTax](#type-catalogqueryitemsfortax),
409
+ # Queries the targeted catalog using a variety of query expressions.
410
+ # Supported query expressions are of the following types:
411
+ # - [CatalogQuerySortedAttribute](#type-catalogquerysortedattribute),
412
+ # - [CatalogQueryExact](#type-catalogqueryexact),
413
+ # - [CatalogQueryRange](#type-catalogqueryrange),
414
+ # - [CatalogQueryText](#type-catalogquerytext),
415
+ # - [CatalogQueryItemsForTax](#type-catalogqueryitemsfortax),
416
+ # -
448
417
  # [CatalogQueryItemsForModifierList](#type-catalogqueryitemsformodifierlist)
449
418
  # ,
419
+ # -
450
420
  # [CatalogQueryItemsForItemOptions](#type-catalogqueryitemsforitemoptions),
451
421
  # and
422
+ # -
452
423
  # [CatalogQueryItemVariationsForItemOptionValues](#type-catalogqueryitemvari
453
424
  # ationsforitemoptionvalues).
454
425
  # @param [SearchCatalogObjectsRequest] body Required parameter: An object
@@ -244,17 +244,7 @@ module Square
244
244
  # Uploads a file to use as evidence in a dispute challenge. The endpoint
245
245
  # accepts
246
246
  # HTTP multipart/form-data file uploads in HEIC, HEIF, JPEG, PDF, PNG,
247
- # and TIFF formats. The following is an example of such an HTTP request:
248
- # ```
249
- # curl -X POST \
250
- # -H 'Accept: application/json' \
251
- # -H 'Authorization: Bearer {{ACCESS_TOKEN}}' \
252
- # -H 'Content-Type: multipart/form-data' \
253
- # -F 'evidence=@/path/to/file/filename.tiff' \
254
- # -F 'request={ "idempotency_key":"{{UNIQUE_KEY}}",
255
- # "evidence_type":"{{EVIDENCE_TYPE}}", "content_type":"image/tiff" }' \
256
- # 'https://connect.squareup.com/v2/disputes/{{DISPUTE_ID}}/evidence_file'
257
- # ```
247
+ # and TIFF formats.
258
248
  # For more information, see [Challenge a
259
249
  # Dispute](https://developer.squareup.com/docs/docs/disputes-api/process-dis
260
250
  # putes#challenge-a-dispute).
@@ -246,12 +246,8 @@ module Square
246
246
  # elayed-payments).
247
247
  # @param [String] payment_id Required parameter: Unique ID identifying the
248
248
  # payment to be completed.
249
- # @param [Object] body Required parameter: An object containing the fields
250
- # to POST for the request. See the corresponding object definition for
251
- # field details.
252
249
  # @return [CompletePaymentResponse Hash] response from the API call
253
- def complete_payment(payment_id:,
254
- body:)
250
+ def complete_payment(payment_id:)
255
251
  # Prepare query url.
256
252
  _query_builder = config.get_base_uri
257
253
  _query_builder << '/v2/payments/{payment_id}/complete'
@@ -263,15 +259,13 @@ module Square
263
259
 
264
260
  # Prepare headers.
265
261
  _headers = {
266
- 'accept' => 'application/json',
267
- 'content-type' => 'application/json; charset=utf-8'
262
+ 'accept' => 'application/json'
268
263
  }
269
264
 
270
265
  # Prepare and execute HttpRequest.
271
266
  _request = config.http_client.post(
272
267
  _query_url,
273
- headers: _headers,
274
- parameters: body.to_json
268
+ headers: _headers
275
269
  )
276
270
  OAuth2.apply(config, _request)
277
271
  _response = execute_request(_request)
@@ -21,8 +21,9 @@ module Square
21
21
  # results for the original query. See
22
22
  # [Pagination](https://developer.squareup.com/docs/basics/api101/pagination)
23
23
  # for more information.
24
- # @param [String] location_id Optional parameter: ID of location associated
25
- # with payment.
24
+ # @param [String] location_id Optional parameter: Limit results to the
25
+ # location supplied. By default, results are returned for all locations
26
+ # associated with the merchant.
26
27
  # @param [String] status Optional parameter: If provided, only refunds with
27
28
  # the given status are returned. For a list of refund status values, see
28
29
  # [PaymentRefund](#type-paymentrefund). Default: If omitted refunds are
@@ -0,0 +1,326 @@
1
+ module Square
2
+ # TeamApi
3
+ class TeamApi < BaseApi
4
+ def initialize(config, http_call_back: nil)
5
+ super(config, http_call_back: http_call_back)
6
+ end
7
+
8
+ # Creates a single `TeamMember` object. The `TeamMember` will be returned on
9
+ # successful creates.
10
+ # You must provide the following values in your request to this endpoint:
11
+ # - `first_name`
12
+ # - `last_name`
13
+ # Learn about [Troubleshooting the Teams
14
+ # API](https://developer.squareup.com/docs/docs/team/troubleshooting#createt
15
+ # eammember).
16
+ # @param [CreateTeamMemberRequest] body Required parameter: An object
17
+ # containing the fields to POST for the request. See the corresponding
18
+ # object definition for field details.
19
+ # @return [CreateTeamMemberResponse Hash] response from the API call
20
+ def create_team_member(body:)
21
+ # Prepare query url.
22
+ _query_builder = config.get_base_uri
23
+ _query_builder << '/v2/team-members'
24
+ _query_url = APIHelper.clean_url _query_builder
25
+
26
+ # Prepare headers.
27
+ _headers = {
28
+ 'accept' => 'application/json',
29
+ 'content-type' => 'application/json; charset=utf-8'
30
+ }
31
+
32
+ # Prepare and execute HttpRequest.
33
+ _request = config.http_client.post(
34
+ _query_url,
35
+ headers: _headers,
36
+ parameters: body.to_json
37
+ )
38
+ OAuth2.apply(config, _request)
39
+ _response = execute_request(_request)
40
+
41
+ # Return appropriate response type.
42
+ decoded = APIHelper.json_deserialize(_response.raw_body)
43
+ _errors = APIHelper.map_response(decoded, ['errors'])
44
+ ApiResponse.new(_response, data: decoded, errors: _errors)
45
+ end
46
+
47
+ # Creates multiple `TeamMember` objects. The created `TeamMember` objects
48
+ # will be returned on successful creates.
49
+ # This process is non-transactional and will process as much of the request
50
+ # as is possible. If one of the creates in
51
+ # the request cannot be successfully processed, the request will NOT be
52
+ # marked as failed, but the body of the response
53
+ # will contain explicit error information for this particular create.
54
+ # Learn about [Troubleshooting the Teams
55
+ # API](https://developer.squareup.com/docs/docs/team/troubleshooting#bulkcre
56
+ # ateteammembers).
57
+ # @param [BulkCreateTeamMembersRequest] body Required parameter: An object
58
+ # containing the fields to POST for the request. See the corresponding
59
+ # object definition for field details.
60
+ # @return [BulkCreateTeamMembersResponse Hash] response from the API call
61
+ def bulk_create_team_members(body:)
62
+ # Prepare query url.
63
+ _query_builder = config.get_base_uri
64
+ _query_builder << '/v2/team-members/bulk-create'
65
+ _query_url = APIHelper.clean_url _query_builder
66
+
67
+ # Prepare headers.
68
+ _headers = {
69
+ 'accept' => 'application/json',
70
+ 'content-type' => 'application/json; charset=utf-8'
71
+ }
72
+
73
+ # Prepare and execute HttpRequest.
74
+ _request = config.http_client.post(
75
+ _query_url,
76
+ headers: _headers,
77
+ parameters: body.to_json
78
+ )
79
+ OAuth2.apply(config, _request)
80
+ _response = execute_request(_request)
81
+
82
+ # Return appropriate response type.
83
+ decoded = APIHelper.json_deserialize(_response.raw_body)
84
+ _errors = APIHelper.map_response(decoded, ['errors'])
85
+ ApiResponse.new(_response, data: decoded, errors: _errors)
86
+ end
87
+
88
+ # Updates multiple `TeamMember` objects. The updated `TeamMember` objects
89
+ # will be returned on successful updates.
90
+ # This process is non-transactional and will process as much of the request
91
+ # as is possible. If one of the updates in
92
+ # the request cannot be successfully processed, the request will NOT be
93
+ # marked as failed, but the body of the response
94
+ # will contain explicit error information for this particular update.
95
+ # Learn about [Troubleshooting the Teams
96
+ # API](https://developer.squareup.com/docs/docs/team/troubleshooting#bulkupd
97
+ # ateteammembers).
98
+ # @param [BulkUpdateTeamMembersRequest] body Required parameter: An object
99
+ # containing the fields to POST for the request. See the corresponding
100
+ # object definition for field details.
101
+ # @return [BulkUpdateTeamMembersResponse Hash] response from the API call
102
+ def bulk_update_team_members(body:)
103
+ # Prepare query url.
104
+ _query_builder = config.get_base_uri
105
+ _query_builder << '/v2/team-members/bulk-update'
106
+ _query_url = APIHelper.clean_url _query_builder
107
+
108
+ # Prepare headers.
109
+ _headers = {
110
+ 'accept' => 'application/json',
111
+ 'content-type' => 'application/json; charset=utf-8'
112
+ }
113
+
114
+ # Prepare and execute HttpRequest.
115
+ _request = config.http_client.post(
116
+ _query_url,
117
+ headers: _headers,
118
+ parameters: body.to_json
119
+ )
120
+ OAuth2.apply(config, _request)
121
+ _response = execute_request(_request)
122
+
123
+ # Return appropriate response type.
124
+ decoded = APIHelper.json_deserialize(_response.raw_body)
125
+ _errors = APIHelper.map_response(decoded, ['errors'])
126
+ ApiResponse.new(_response, data: decoded, errors: _errors)
127
+ end
128
+
129
+ # Returns a paginated list of `TeamMember` objects for a business.
130
+ # The list to be returned can be filtered by:
131
+ # - location IDs **and**
132
+ # - `is_active`
133
+ # @param [SearchTeamMembersRequest] body Required parameter: An object
134
+ # containing the fields to POST for the request. See the corresponding
135
+ # object definition for field details.
136
+ # @return [SearchTeamMembersResponse Hash] response from the API call
137
+ def search_team_members(body:)
138
+ # Prepare query url.
139
+ _query_builder = config.get_base_uri
140
+ _query_builder << '/v2/team-members/search'
141
+ _query_url = APIHelper.clean_url _query_builder
142
+
143
+ # Prepare headers.
144
+ _headers = {
145
+ 'accept' => 'application/json',
146
+ 'content-type' => 'application/json; charset=utf-8'
147
+ }
148
+
149
+ # Prepare and execute HttpRequest.
150
+ _request = config.http_client.post(
151
+ _query_url,
152
+ headers: _headers,
153
+ parameters: body.to_json
154
+ )
155
+ OAuth2.apply(config, _request)
156
+ _response = execute_request(_request)
157
+
158
+ # Return appropriate response type.
159
+ decoded = APIHelper.json_deserialize(_response.raw_body)
160
+ _errors = APIHelper.map_response(decoded, ['errors'])
161
+ ApiResponse.new(_response, data: decoded, errors: _errors)
162
+ end
163
+
164
+ # Retrieve a `TeamMember` object for the given `TeamMember.id`
165
+ # Learn about [Troubleshooting the Teams
166
+ # API](https://developer.squareup.com/docs/docs/team/troubleshooting#retriev
167
+ # eteammember).
168
+ # @param [String] team_member_id Required parameter: The ID of the team
169
+ # member to retrieve.
170
+ # @return [RetrieveTeamMemberResponse Hash] response from the API call
171
+ def retrieve_team_member(team_member_id:)
172
+ # Prepare query url.
173
+ _query_builder = config.get_base_uri
174
+ _query_builder << '/v2/team-members/{team_member_id}'
175
+ _query_builder = APIHelper.append_url_with_template_parameters(
176
+ _query_builder,
177
+ 'team_member_id' => team_member_id
178
+ )
179
+ _query_url = APIHelper.clean_url _query_builder
180
+
181
+ # Prepare headers.
182
+ _headers = {
183
+ 'accept' => 'application/json'
184
+ }
185
+
186
+ # Prepare and execute HttpRequest.
187
+ _request = config.http_client.get(
188
+ _query_url,
189
+ headers: _headers
190
+ )
191
+ OAuth2.apply(config, _request)
192
+ _response = execute_request(_request)
193
+
194
+ # Return appropriate response type.
195
+ decoded = APIHelper.json_deserialize(_response.raw_body)
196
+ _errors = APIHelper.map_response(decoded, ['errors'])
197
+ ApiResponse.new(_response, data: decoded, errors: _errors)
198
+ end
199
+
200
+ # Updates a single `TeamMember` object. The `TeamMember` will be returned on
201
+ # successful updates.
202
+ # Learn about [Troubleshooting the Teams
203
+ # API](https://developer.squareup.com/docs/docs/team/troubleshooting#updatet
204
+ # eammember).
205
+ # @param [String] team_member_id Required parameter: The ID of the team
206
+ # member to update.
207
+ # @param [UpdateTeamMemberRequest] body Required parameter: An object
208
+ # containing the fields to POST for the request. See the corresponding
209
+ # object definition for field details.
210
+ # @return [UpdateTeamMemberResponse Hash] response from the API call
211
+ def update_team_member(team_member_id:,
212
+ body:)
213
+ # Prepare query url.
214
+ _query_builder = config.get_base_uri
215
+ _query_builder << '/v2/team-members/{team_member_id}'
216
+ _query_builder = APIHelper.append_url_with_template_parameters(
217
+ _query_builder,
218
+ 'team_member_id' => team_member_id
219
+ )
220
+ _query_url = APIHelper.clean_url _query_builder
221
+
222
+ # Prepare headers.
223
+ _headers = {
224
+ 'accept' => 'application/json',
225
+ 'content-type' => 'application/json; charset=utf-8'
226
+ }
227
+
228
+ # Prepare and execute HttpRequest.
229
+ _request = config.http_client.put(
230
+ _query_url,
231
+ headers: _headers,
232
+ parameters: body.to_json
233
+ )
234
+ OAuth2.apply(config, _request)
235
+ _response = execute_request(_request)
236
+
237
+ # Return appropriate response type.
238
+ decoded = APIHelper.json_deserialize(_response.raw_body)
239
+ _errors = APIHelper.map_response(decoded, ['errors'])
240
+ ApiResponse.new(_response, data: decoded, errors: _errors)
241
+ end
242
+
243
+ # Retrieve a `WageSetting` object for a team member specified
244
+ # by `TeamMember.id`.
245
+ # Learn about [Troubleshooting the Teams
246
+ # API](https://developer.squareup.com/docs/docs/team/troubleshooting#retriev
247
+ # ewagesetting).
248
+ # @param [String] team_member_id Required parameter: The ID of the team
249
+ # member to retrieve wage setting for
250
+ # @return [RetrieveWageSettingResponse Hash] response from the API call
251
+ def retrieve_wage_setting(team_member_id:)
252
+ # Prepare query url.
253
+ _query_builder = config.get_base_uri
254
+ _query_builder << '/v2/team-members/{team_member_id}/wage-setting'
255
+ _query_builder = APIHelper.append_url_with_template_parameters(
256
+ _query_builder,
257
+ 'team_member_id' => team_member_id
258
+ )
259
+ _query_url = APIHelper.clean_url _query_builder
260
+
261
+ # Prepare headers.
262
+ _headers = {
263
+ 'accept' => 'application/json'
264
+ }
265
+
266
+ # Prepare and execute HttpRequest.
267
+ _request = config.http_client.get(
268
+ _query_url,
269
+ headers: _headers
270
+ )
271
+ OAuth2.apply(config, _request)
272
+ _response = execute_request(_request)
273
+
274
+ # Return appropriate response type.
275
+ decoded = APIHelper.json_deserialize(_response.raw_body)
276
+ _errors = APIHelper.map_response(decoded, ['errors'])
277
+ ApiResponse.new(_response, data: decoded, errors: _errors)
278
+ end
279
+
280
+ # Creates or updates a `WageSetting` object. The object is created if a
281
+ # `WageSetting` with the specified `team_member_id` does not exist.
282
+ # Otherwise,
283
+ # it fully replaces the `WageSetting` object for the team member.
284
+ # The `WageSetting` will be returned upon successful update.
285
+ # Learn about [Troubleshooting the Teams
286
+ # API](https://developer.squareup.com/docs/docs/team/troubleshooting#updatew
287
+ # agesetting).
288
+ # @param [String] team_member_id Required parameter: The ID of the team
289
+ # member to update the `WageSetting` object for.
290
+ # @param [UpdateWageSettingRequest] body Required parameter: An object
291
+ # containing the fields to POST for the request. See the corresponding
292
+ # object definition for field details.
293
+ # @return [UpdateWageSettingResponse Hash] response from the API call
294
+ def update_wage_setting(team_member_id:,
295
+ body:)
296
+ # Prepare query url.
297
+ _query_builder = config.get_base_uri
298
+ _query_builder << '/v2/team-members/{team_member_id}/wage-setting'
299
+ _query_builder = APIHelper.append_url_with_template_parameters(
300
+ _query_builder,
301
+ 'team_member_id' => team_member_id
302
+ )
303
+ _query_url = APIHelper.clean_url _query_builder
304
+
305
+ # Prepare headers.
306
+ _headers = {
307
+ 'accept' => 'application/json',
308
+ 'content-type' => 'application/json; charset=utf-8'
309
+ }
310
+
311
+ # Prepare and execute HttpRequest.
312
+ _request = config.http_client.put(
313
+ _query_url,
314
+ headers: _headers,
315
+ parameters: body.to_json
316
+ )
317
+ OAuth2.apply(config, _request)
318
+ _response = execute_request(_request)
319
+
320
+ # Return appropriate response type.
321
+ decoded = APIHelper.json_deserialize(_response.raw_body)
322
+ _errors = APIHelper.map_response(decoded, ['errors'])
323
+ ApiResponse.new(_response, data: decoded, errors: _errors)
324
+ end
325
+ end
326
+ end