square.rb 5.3.0.20200528 → 6.0.0.20200625

Sign up to get free protection for your applications and to get access to all the features.
@@ -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