gonebusy-ruby-client 0.1.0 → 0.1.1

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 (77) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +2 -1
  4. data/lib/gonebusy/controllers/bookings_controller.rb +77 -74
  5. data/lib/gonebusy/controllers/categories_controller.rb +29 -29
  6. data/lib/gonebusy/controllers/pricing_models_controller.rb +47 -47
  7. data/lib/gonebusy/controllers/resources_controller.rb +77 -77
  8. data/lib/gonebusy/controllers/schedules_controller.rb +92 -92
  9. data/lib/gonebusy/controllers/services_controller.rb +86 -86
  10. data/lib/gonebusy/controllers/users_controller.rb +56 -56
  11. data/lib/gonebusy/models/cancel_booking_by_id_response.rb +10 -12
  12. data/lib/gonebusy/models/create_booking_body.rb +78 -80
  13. data/lib/gonebusy/models/create_booking_response.rb +10 -12
  14. data/lib/gonebusy/models/create_category_body.rb +34 -36
  15. data/lib/gonebusy/models/create_category_response.rb +10 -12
  16. data/lib/gonebusy/models/create_pricing_model_body.rb +35 -37
  17. data/lib/gonebusy/models/create_pricing_model_response.rb +10 -12
  18. data/lib/gonebusy/models/create_resource_body.rb +39 -41
  19. data/lib/gonebusy/models/create_resource_response.rb +10 -12
  20. data/lib/gonebusy/models/create_schedule_body.rb +92 -94
  21. data/lib/gonebusy/models/create_schedule_response.rb +10 -12
  22. data/lib/gonebusy/models/create_schedule_time_window_body.rb +64 -66
  23. data/lib/gonebusy/models/create_schedule_time_window_response.rb +10 -12
  24. data/lib/gonebusy/models/create_service_body.rb +57 -59
  25. data/lib/gonebusy/models/create_service_response.rb +10 -12
  26. data/lib/gonebusy/models/create_user_body.rb +40 -42
  27. data/lib/gonebusy/models/create_user_response.rb +10 -12
  28. data/lib/gonebusy/models/delete_resource_by_id_response.rb +10 -12
  29. data/lib/gonebusy/models/delete_schedule_by_id_response.rb +10 -12
  30. data/lib/gonebusy/models/delete_schedule_time_window_by_id_response.rb +10 -12
  31. data/lib/gonebusy/models/delete_service_by_id_response.rb +10 -12
  32. data/lib/gonebusy/models/entities_address_entity.rb +69 -71
  33. data/lib/gonebusy/models/entities_availability_response.rb +21 -23
  34. data/lib/gonebusy/models/entities_booking_response.rb +32 -34
  35. data/lib/gonebusy/models/entities_category_response.rb +52 -54
  36. data/lib/gonebusy/models/entities_pricing_model_response.rb +44 -46
  37. data/lib/gonebusy/models/entities_resource_availabilities.rb +24 -26
  38. data/lib/gonebusy/models/entities_resource_response.rb +60 -62
  39. data/lib/gonebusy/models/entities_schedule_response.rb +26 -28
  40. data/lib/gonebusy/models/entities_search_response.rb +29 -31
  41. data/lib/gonebusy/models/entities_service_response.rb +82 -84
  42. data/lib/gonebusy/models/entities_slots.rb +13 -15
  43. data/lib/gonebusy/models/entities_thing_type_response.rb +13 -15
  44. data/lib/gonebusy/models/entities_time_window_response.rb +81 -83
  45. data/lib/gonebusy/models/entities_user_response.rb +95 -97
  46. data/lib/gonebusy/models/get_booking_by_id_response.rb +10 -12
  47. data/lib/gonebusy/models/get_bookings_response.rb +14 -16
  48. data/lib/gonebusy/models/get_categories_response.rb +14 -16
  49. data/lib/gonebusy/models/get_category_by_id_response.rb +10 -12
  50. data/lib/gonebusy/models/get_pricing_model_by_id_response.rb +10 -12
  51. data/lib/gonebusy/models/get_pricing_models_response.rb +14 -16
  52. data/lib/gonebusy/models/get_resource_by_id_response.rb +10 -12
  53. data/lib/gonebusy/models/get_resource_things_response.rb +14 -16
  54. data/lib/gonebusy/models/get_resources_response.rb +14 -16
  55. data/lib/gonebusy/models/get_schedule_by_id_response.rb +10 -12
  56. data/lib/gonebusy/models/get_schedules_response.rb +14 -16
  57. data/lib/gonebusy/models/get_service_available_slots_by_id_response.rb +10 -12
  58. data/lib/gonebusy/models/get_service_by_id_response.rb +10 -12
  59. data/lib/gonebusy/models/get_services_response.rb +14 -16
  60. data/lib/gonebusy/models/get_user_by_id_response.rb +10 -12
  61. data/lib/gonebusy/models/get_users_response.rb +14 -16
  62. data/lib/gonebusy/models/search_query_response.rb +10 -12
  63. data/lib/gonebusy/models/update_booking_by_id_body.rb +58 -60
  64. data/lib/gonebusy/models/update_booking_by_id_response.rb +10 -12
  65. data/lib/gonebusy/models/update_pricing_model_by_id_body.rb +28 -30
  66. data/lib/gonebusy/models/update_pricing_model_by_id_response.rb +10 -12
  67. data/lib/gonebusy/models/update_resource_by_id_body.rb +33 -35
  68. data/lib/gonebusy/models/update_resource_by_id_response.rb +10 -12
  69. data/lib/gonebusy/models/update_schedule_time_window_by_id_body.rb +71 -73
  70. data/lib/gonebusy/models/update_schedule_time_window_by_id_response.rb +10 -12
  71. data/lib/gonebusy/models/update_service_by_id_body.rb +43 -45
  72. data/lib/gonebusy/models/update_service_by_id_response.rb +10 -12
  73. data/lib/gonebusy/models/update_user_by_id_body.rb +41 -43
  74. data/lib/gonebusy/models/update_user_by_id_response.rb +10 -12
  75. data/lib/gonebusy.rb +67 -67
  76. metadata +2 -3
  77. data/lib/gonebusy/exceptions/entities_error_exception.rb +0 -27
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 78b8512a26ebf173b7d5dff019ada61c11f3e537
4
- data.tar.gz: ae3379eb6e60d839b67cf3c9e7e84a2797f9b086
3
+ metadata.gz: c62797dc25aa9288b06855875b09ed9a9f4ad612
4
+ data.tar.gz: 67900e0d872101c9dca554659bc939d1d7639928
5
5
  SHA512:
6
- metadata.gz: b95d3c6c28de64dd0ebe9b514abf93a5f205ab93421b99c507ec5bd2b8e03b57064a4891085f1d6b3cf5a88ed79f7af0792055b21ff33fc573eb9a5fbf532dcf
7
- data.tar.gz: 2d18a850c595ac5593a207ffc100d7bc23beb2f39ac39678a654ddbf833b12e2bb39d842ca36f5a087fefd194376156d56d1abcaeb7a26960ce8060733602669
6
+ metadata.gz: 30828290bb4650af1c282ccac9b978ea4a72db5586e15020546d3986371b6b0777d6956ed1748450e96f178721c50679c9767c56554e1e1c1119f2f04a27fad3
7
+ data.tar.gz: c34051538ef315e41336239b538ccc66418c68d47193b1cdc288bc7b99e913cab704533b862f4e295adb65c825158bc567c3adcf66bf0f9472e1a5bb533e9835
data/LICENSE CHANGED
@@ -3,7 +3,7 @@
3
3
  The MIT License (MIT)
4
4
  http://opensource.org/licenses/MIT
5
5
 
6
- Copyright (c) 2016 - GoneBusy Inc.
6
+ Copyright (c) 2016-2017 - GoneBusy Inc.
7
7
 
8
8
  Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -139,7 +139,8 @@ def get_bookings(options = Hash.new); end
139
139
  | page | ``` Optional ``` ``` DefaultValue ``` | Page offset to fetch. |
140
140
  | per_page | ``` Optional ``` ``` DefaultValue ``` | Number of results to return per page. |
141
141
  | states | ``` Optional ``` | Comma-separated list of Booking states to retrieve only Bookings in those states. Leave blank to retrieve all Bookings. |
142
- | user_id | ``` Optional ``` | Retrieve Bookings owned only by this User Id. You must be authorized to manage this User Id. |
142
+ | user_id | ``` Optional ``` | Retrieve Bookings for Resources/Services owned by this User Id. You must be authorized to manage this User Id. |
143
+ | booker_id | ``` Optional ``` | Retrieve Bookings make by Booker Id. |
143
144
 
144
145
 
145
146
  #### Example Usage
@@ -8,27 +8,29 @@ module Gonebusy
8
8
  @@instance
9
9
  end
10
10
 
11
- # Return list of Bookings.
11
+ # Cancel a Booking by id
12
12
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
13
- # @param [Integer] page Optional parameter: Page offset to fetch.
14
- # @param [Integer] per_page Optional parameter: Number of results to return per page.
15
- # @param [String] states Optional parameter: Comma-separated list of Booking states to retrieve only Bookings in those states. Leave blank to retrieve all Bookings.
16
- # @param [Integer] user_id Optional parameter: Retrieve Bookings owned only by this User Id. You must be authorized to manage this User Id.
17
- # @return GetBookingsResponse response from the API call
18
- def get_bookings(authorization,
19
- page = 1,
20
- per_page = 10,
21
- states = nil,
22
- user_id = nil)
13
+ # @param [String] id Required parameter: Example:
14
+ # @param [Date] date Optional parameter: If a recurring booking, the date of an instance to cancel. Several formats are supported: '2014-10-31', 'October 31, 2014'
15
+ # @param [Date] end_date Optional parameter: If recurring, cancel up to :end_date or leave blank for infinite booking. Several formats are supported: '2014-10-31', 'October 31, 2014'.
16
+ # @param [String] cancel_recurring Optional parameter: When a recurring booking, one of: ['instance', 'all', 'infinite']
17
+ # @return CancelBookingByIdResponse response from the API call
18
+ def cancel_booking_by_id(authorization,
19
+ id,
20
+ date = nil,
21
+ end_date = nil,
22
+ cancel_recurring = nil)
23
23
 
24
24
  # prepare query url
25
25
  _query_builder = Configuration.get_base_uri()
26
- _query_builder << '/bookings'
26
+ _query_builder << '/bookings/{id}'
27
+ _query_builder = APIHelper.append_url_with_template_parameters _query_builder, {
28
+ 'id' => id
29
+ }
27
30
  _query_builder = APIHelper.append_url_with_query_parameters _query_builder, {
28
- 'page' => page,
29
- 'per_page' => per_page,
30
- 'states' => states,
31
- 'user_id' => user_id
31
+ 'date' => date,
32
+ 'end_date' => end_date,
33
+ 'cancel_recurring' => cancel_recurring
32
34
  }, array_serialization: Configuration.array_serialization
33
35
  _query_url = APIHelper.clean_url _query_builder
34
36
 
@@ -40,12 +42,14 @@ module Gonebusy
40
42
  }
41
43
 
42
44
  # prepare and execute HttpRequest
43
- _request = @http_client.get _query_url, headers: _headers
45
+ _request = @http_client.delete _query_url, headers: _headers
44
46
  CustomAuth.apply(_request)
45
47
  _context = execute_request(_request)
46
48
 
47
49
  # validate response against endpoint and global error codes
48
- if _context.response.status_code == 401
50
+ if _context.response.status_code == 400
51
+ raise EntitiesErrorErrorException.new 'Bad Request', _context
52
+ elsif _context.response.status_code == 401
49
53
  raise EntitiesErrorErrorException.new 'Unauthorized/Missing Token', _context
50
54
  elsif _context.response.status_code == 403
51
55
  raise EntitiesErrorErrorException.new 'Forbidden', _context
@@ -58,43 +62,55 @@ module Gonebusy
58
62
 
59
63
  # return appropriate response type
60
64
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
61
- return GetBookingsResponse.from_hash(decoded)
65
+ return CancelBookingByIdResponse.from_hash(decoded)
62
66
  end
63
67
 
64
- # Create a Booking with params
68
+ # Return list of Bookings.
65
69
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
66
- # @param [CreateBookingBody] create_booking_body Optional parameter: the content of the request
67
- # @return CreateBookingResponse response from the API call
68
- def create_booking(authorization,
69
- create_booking_body = nil)
70
+ # @param [Integer] user_id Optional parameter: Retrieve Bookings for Resources/Services owned by this User Id. You must be authorized to manage this User Id.
71
+ # @param [String] states Optional parameter: Comma-separated list of Booking states to retrieve only Bookings in those states. Leave blank to retrieve all Bookings.
72
+ # @param [Integer] booker_id Optional parameter: Retrieve Bookings made by Booker Id. Only Bookings for Services/Resources you are authorized to manage will be returned.
73
+ # @param [Integer] page Optional parameter: Page offset to fetch.
74
+ # @param [Integer] per_page Optional parameter: Number of results to return per page.
75
+ # @return GetBookingsResponse response from the API call
76
+ def get_bookings(authorization,
77
+ user_id = nil,
78
+ states = nil,
79
+ booker_id = nil,
80
+ page = 1,
81
+ per_page = 10)
70
82
 
71
83
  # prepare query url
72
84
  _query_builder = Configuration.get_base_uri()
73
- _query_builder << '/bookings/new'
85
+ _query_builder << '/bookings'
86
+ _query_builder = APIHelper.append_url_with_query_parameters _query_builder, {
87
+ 'user_id' => user_id,
88
+ 'states' => states,
89
+ 'booker_id' => booker_id,
90
+ 'page' => page,
91
+ 'per_page' => per_page
92
+ }, array_serialization: Configuration.array_serialization
74
93
  _query_url = APIHelper.clean_url _query_builder
75
94
 
76
95
  # prepare headers
77
96
  _headers = {
78
97
  'accept' => 'application/json',
79
- 'content-type' => 'application/json; charset=utf-8',
80
98
  'Authorization' => Configuration.authorization,
81
99
  'Authorization' => authorization
82
100
  }
83
101
 
84
102
  # prepare and execute HttpRequest
85
- _request = @http_client.post _query_url, headers: _headers, parameters: create_booking_body.to_json
103
+ _request = @http_client.get _query_url, headers: _headers
86
104
  CustomAuth.apply(_request)
87
105
  _context = execute_request(_request)
88
106
 
89
107
  # validate response against endpoint and global error codes
90
- if _context.response.status_code == 400
91
- raise EntitiesErrorErrorException.new 'Bad Request', _context
92
- elsif _context.response.status_code == 401
108
+ if _context.response.status_code == 401
93
109
  raise EntitiesErrorErrorException.new 'Unauthorized/Missing Token', _context
94
110
  elsif _context.response.status_code == 403
95
111
  raise EntitiesErrorErrorException.new 'Forbidden', _context
96
- elsif _context.response.status_code == 422
97
- raise EntitiesErrorErrorException.new 'Unprocessable Entity', _context
112
+ elsif _context.response.status_code == 404
113
+ raise EntitiesErrorErrorException.new 'Not Found', _context
98
114
  elsif !_context.response.status_code.between?(200, 208)
99
115
  raise APIException.new 'Unexpected error', _context
100
116
  end
@@ -102,15 +118,17 @@ module Gonebusy
102
118
 
103
119
  # return appropriate response type
104
120
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
105
- return CreateBookingResponse.from_hash(decoded)
121
+ return GetBookingsResponse.from_hash(decoded)
106
122
  end
107
123
 
108
- # Return a Booking by id.
124
+ # Update a Booking by id
109
125
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
110
126
  # @param [String] id Required parameter: Example:
111
- # @return GetBookingByIdResponse response from the API call
112
- def get_booking_by_id(authorization,
113
- id)
127
+ # @param [UpdateBookingByIdBody] update_booking_by_id_body Optional parameter: the content of the request
128
+ # @return UpdateBookingByIdResponse response from the API call
129
+ def update_booking_by_id(authorization,
130
+ id,
131
+ update_booking_by_id_body = nil)
114
132
 
115
133
  # prepare query url
116
134
  _query_builder = Configuration.get_base_uri()
@@ -123,12 +141,13 @@ module Gonebusy
123
141
  # prepare headers
124
142
  _headers = {
125
143
  'accept' => 'application/json',
144
+ 'content-type' => 'application/json; charset=utf-8',
126
145
  'Authorization' => Configuration.authorization,
127
146
  'Authorization' => authorization
128
147
  }
129
148
 
130
149
  # prepare and execute HttpRequest
131
- _request = @http_client.get _query_url, headers: _headers
150
+ _request = @http_client.put _query_url, headers: _headers, parameters: update_booking_by_id_body.to_json
132
151
  CustomAuth.apply(_request)
133
152
  _context = execute_request(_request)
134
153
 
@@ -141,6 +160,8 @@ module Gonebusy
141
160
  raise EntitiesErrorErrorException.new 'Forbidden', _context
142
161
  elsif _context.response.status_code == 404
143
162
  raise EntitiesErrorErrorException.new 'Not Found', _context
163
+ elsif _context.response.status_code == 422
164
+ raise EntitiesErrorErrorException.new 'Unprocessable Entity', _context
144
165
  elsif !_context.response.status_code.between?(200, 208)
145
166
  raise APIException.new 'Unexpected error', _context
146
167
  end
@@ -148,17 +169,15 @@ module Gonebusy
148
169
 
149
170
  # return appropriate response type
150
171
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
151
- return GetBookingByIdResponse.from_hash(decoded)
172
+ return UpdateBookingByIdResponse.from_hash(decoded)
152
173
  end
153
174
 
154
- # Update a Booking by id
175
+ # Return a Booking by id.
155
176
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
156
177
  # @param [String] id Required parameter: Example:
157
- # @param [UpdateBookingByIdBody] update_booking_by_id_body Optional parameter: the content of the request
158
- # @return UpdateBookingByIdResponse response from the API call
159
- def update_booking_by_id(authorization,
160
- id,
161
- update_booking_by_id_body = nil)
178
+ # @return GetBookingByIdResponse response from the API call
179
+ def get_booking_by_id(authorization,
180
+ id)
162
181
 
163
182
  # prepare query url
164
183
  _query_builder = Configuration.get_base_uri()
@@ -171,13 +190,12 @@ module Gonebusy
171
190
  # prepare headers
172
191
  _headers = {
173
192
  'accept' => 'application/json',
174
- 'content-type' => 'application/json; charset=utf-8',
175
193
  'Authorization' => Configuration.authorization,
176
194
  'Authorization' => authorization
177
195
  }
178
196
 
179
197
  # prepare and execute HttpRequest
180
- _request = @http_client.put _query_url, headers: _headers, parameters: update_booking_by_id_body.to_json
198
+ _request = @http_client.get _query_url, headers: _headers
181
199
  CustomAuth.apply(_request)
182
200
  _context = execute_request(_request)
183
201
 
@@ -190,8 +208,6 @@ module Gonebusy
190
208
  raise EntitiesErrorErrorException.new 'Forbidden', _context
191
209
  elsif _context.response.status_code == 404
192
210
  raise EntitiesErrorErrorException.new 'Not Found', _context
193
- elsif _context.response.status_code == 422
194
- raise EntitiesErrorErrorException.new 'Unprocessable Entity', _context
195
211
  elsif !_context.response.status_code.between?(200, 208)
196
212
  raise APIException.new 'Unexpected error', _context
197
213
  end
@@ -199,44 +215,31 @@ module Gonebusy
199
215
 
200
216
  # return appropriate response type
201
217
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
202
- return UpdateBookingByIdResponse.from_hash(decoded)
218
+ return GetBookingByIdResponse.from_hash(decoded)
203
219
  end
204
220
 
205
- # Cancel a Booking by id
221
+ # Create a Booking with params
206
222
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
207
- # @param [String] id Required parameter: Example:
208
- # @param [String] cancel_recurring Optional parameter: When a recurring booking, one of: ['instance', 'all', 'infinite']
209
- # @param [Date] date Optional parameter: If a recurring booking, the date of an instance to cancel. Several formats are supported: '2014-10-31', 'October 31, 2014'
210
- # @param [Date] end_date Optional parameter: If recurring, cancel up to :end_date or leave blank for infinite booking. Several formats are supported: '2014-10-31', 'October 31, 2014'.
211
- # @return CancelBookingByIdResponse response from the API call
212
- def cancel_booking_by_id(authorization,
213
- id,
214
- cancel_recurring = nil,
215
- date = nil,
216
- end_date = nil)
223
+ # @param [CreateBookingBody] create_booking_body Optional parameter: the content of the request
224
+ # @return CreateBookingResponse response from the API call
225
+ def create_booking(authorization,
226
+ create_booking_body = nil)
217
227
 
218
228
  # prepare query url
219
229
  _query_builder = Configuration.get_base_uri()
220
- _query_builder << '/bookings/{id}'
221
- _query_builder = APIHelper.append_url_with_template_parameters _query_builder, {
222
- 'id' => id
223
- }
224
- _query_builder = APIHelper.append_url_with_query_parameters _query_builder, {
225
- 'cancel_recurring' => cancel_recurring,
226
- 'date' => date,
227
- 'end_date' => end_date
228
- }, array_serialization: Configuration.array_serialization
230
+ _query_builder << '/bookings/new'
229
231
  _query_url = APIHelper.clean_url _query_builder
230
232
 
231
233
  # prepare headers
232
234
  _headers = {
233
235
  'accept' => 'application/json',
236
+ 'content-type' => 'application/json; charset=utf-8',
234
237
  'Authorization' => Configuration.authorization,
235
238
  'Authorization' => authorization
236
239
  }
237
240
 
238
241
  # prepare and execute HttpRequest
239
- _request = @http_client.delete _query_url, headers: _headers
242
+ _request = @http_client.post _query_url, headers: _headers, parameters: create_booking_body.to_json
240
243
  CustomAuth.apply(_request)
241
244
  _context = execute_request(_request)
242
245
 
@@ -247,8 +250,8 @@ module Gonebusy
247
250
  raise EntitiesErrorErrorException.new 'Unauthorized/Missing Token', _context
248
251
  elsif _context.response.status_code == 403
249
252
  raise EntitiesErrorErrorException.new 'Forbidden', _context
250
- elsif _context.response.status_code == 404
251
- raise EntitiesErrorErrorException.new 'Not Found', _context
253
+ elsif _context.response.status_code == 422
254
+ raise EntitiesErrorErrorException.new 'Unprocessable Entity', _context
252
255
  elsif !_context.response.status_code.between?(200, 208)
253
256
  raise APIException.new 'Unexpected error', _context
254
257
  end
@@ -256,7 +259,7 @@ module Gonebusy
256
259
 
257
260
  # return appropriate response type
258
261
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
259
- return CancelBookingByIdResponse.from_hash(decoded)
262
+ return CreateBookingResponse.from_hash(decoded)
260
263
  end
261
264
  end
262
265
  end
@@ -10,22 +10,22 @@ module Gonebusy
10
10
 
11
11
  # Return list of Categories.
12
12
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
13
+ # @param [Integer] user_id Optional parameter: Retrieve Categories of all services provided by this User Id. You must be authorized to manage this User Id.
13
14
  # @param [Integer] page Optional parameter: Page offset to fetch.
14
15
  # @param [Integer] per_page Optional parameter: Number of results to return per page.
15
- # @param [Integer] user_id Optional parameter: Retrieve Categories of all services provided by this User Id. You must be authorized to manage this User Id.
16
16
  # @return GetCategoriesResponse response from the API call
17
17
  def get_categories(authorization,
18
+ user_id = nil,
18
19
  page = 1,
19
- per_page = 10,
20
- user_id = nil)
20
+ per_page = 10)
21
21
 
22
22
  # prepare query url
23
23
  _query_builder = Configuration.get_base_uri()
24
24
  _query_builder << '/categories'
25
25
  _query_builder = APIHelper.append_url_with_query_parameters _query_builder, {
26
+ 'user_id' => user_id,
26
27
  'page' => page,
27
- 'per_page' => per_page,
28
- 'user_id' => user_id
28
+ 'per_page' => per_page
29
29
  }, array_serialization: Configuration.array_serialization
30
30
  _query_url = APIHelper.clean_url _query_builder
31
31
 
@@ -58,28 +58,30 @@ module Gonebusy
58
58
  return GetCategoriesResponse.from_hash(decoded)
59
59
  end
60
60
 
61
- # Create a Category
61
+ # Return a Category by id.
62
62
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
63
- # @param [CreateCategoryBody] create_category_body Optional parameter: the content of the request
64
- # @return CreateCategoryResponse response from the API call
65
- def create_category(authorization,
66
- create_category_body = nil)
63
+ # @param [String] id Required parameter: Example:
64
+ # @return GetCategoryByIdResponse response from the API call
65
+ def get_category_by_id(authorization,
66
+ id)
67
67
 
68
68
  # prepare query url
69
69
  _query_builder = Configuration.get_base_uri()
70
- _query_builder << '/categories/new'
70
+ _query_builder << '/categories/{id}'
71
+ _query_builder = APIHelper.append_url_with_template_parameters _query_builder, {
72
+ 'id' => id
73
+ }
71
74
  _query_url = APIHelper.clean_url _query_builder
72
75
 
73
76
  # prepare headers
74
77
  _headers = {
75
78
  'accept' => 'application/json',
76
- 'content-type' => 'application/json; charset=utf-8',
77
79
  'Authorization' => Configuration.authorization,
78
80
  'Authorization' => authorization
79
81
  }
80
82
 
81
83
  # prepare and execute HttpRequest
82
- _request = @http_client.post _query_url, headers: _headers, parameters: create_category_body.to_json
84
+ _request = @http_client.get _query_url, headers: _headers
83
85
  CustomAuth.apply(_request)
84
86
  _context = execute_request(_request)
85
87
 
@@ -90,8 +92,8 @@ module Gonebusy
90
92
  raise EntitiesErrorErrorException.new 'Unauthorized/Missing Token', _context
91
93
  elsif _context.response.status_code == 403
92
94
  raise EntitiesErrorErrorException.new 'Forbidden', _context
93
- elsif _context.response.status_code == 422
94
- raise EntitiesErrorErrorException.new 'Unprocessable Entity', _context
95
+ elsif _context.response.status_code == 404
96
+ raise EntitiesErrorErrorException.new 'Not Found', _context
95
97
  elsif !_context.response.status_code.between?(200, 208)
96
98
  raise APIException.new 'Unexpected error', _context
97
99
  end
@@ -99,33 +101,31 @@ module Gonebusy
99
101
 
100
102
  # return appropriate response type
101
103
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
102
- return CreateCategoryResponse.from_hash(decoded)
104
+ return GetCategoryByIdResponse.from_hash(decoded)
103
105
  end
104
106
 
105
- # Return a Category by id.
107
+ # Create a Category
106
108
  # @param [String] authorization Required parameter: A valid API key, in the format 'Token API_KEY'
107
- # @param [String] id Required parameter: Example:
108
- # @return GetCategoryByIdResponse response from the API call
109
- def get_category_by_id(authorization,
110
- id)
109
+ # @param [CreateCategoryBody] create_category_body Optional parameter: the content of the request
110
+ # @return CreateCategoryResponse response from the API call
111
+ def create_category(authorization,
112
+ create_category_body = nil)
111
113
 
112
114
  # prepare query url
113
115
  _query_builder = Configuration.get_base_uri()
114
- _query_builder << '/categories/{id}'
115
- _query_builder = APIHelper.append_url_with_template_parameters _query_builder, {
116
- 'id' => id
117
- }
116
+ _query_builder << '/categories/new'
118
117
  _query_url = APIHelper.clean_url _query_builder
119
118
 
120
119
  # prepare headers
121
120
  _headers = {
122
121
  'accept' => 'application/json',
122
+ 'content-type' => 'application/json; charset=utf-8',
123
123
  'Authorization' => Configuration.authorization,
124
124
  'Authorization' => authorization
125
125
  }
126
126
 
127
127
  # prepare and execute HttpRequest
128
- _request = @http_client.get _query_url, headers: _headers
128
+ _request = @http_client.post _query_url, headers: _headers, parameters: create_category_body.to_json
129
129
  CustomAuth.apply(_request)
130
130
  _context = execute_request(_request)
131
131
 
@@ -136,8 +136,8 @@ module Gonebusy
136
136
  raise EntitiesErrorErrorException.new 'Unauthorized/Missing Token', _context
137
137
  elsif _context.response.status_code == 403
138
138
  raise EntitiesErrorErrorException.new 'Forbidden', _context
139
- elsif _context.response.status_code == 404
140
- raise EntitiesErrorErrorException.new 'Not Found', _context
139
+ elsif _context.response.status_code == 422
140
+ raise EntitiesErrorErrorException.new 'Unprocessable Entity', _context
141
141
  elsif !_context.response.status_code.between?(200, 208)
142
142
  raise APIException.new 'Unexpected error', _context
143
143
  end
@@ -145,7 +145,7 @@ module Gonebusy
145
145
 
146
146
  # return appropriate response type
147
147
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
148
- return GetCategoryByIdResponse.from_hash(decoded)
148
+ return CreateCategoryResponse.from_hash(decoded)
149
149
  end
150
150
  end
151
151
  end