gonebusy-ruby-client 0.0.9 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (97) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +29 -68
  3. data/lib/gonebusy/api_helper.rb +181 -149
  4. data/lib/gonebusy/configuration.rb +51 -16
  5. data/lib/gonebusy/controllers/base_controller.rb +46 -45
  6. data/lib/gonebusy/controllers/bookings_controller.rb +257 -293
  7. data/lib/gonebusy/controllers/categories_controller.rb +151 -180
  8. data/lib/gonebusy/controllers/pricing_models_controller.rb +202 -241
  9. data/lib/gonebusy/controllers/resources_controller.rb +295 -355
  10. data/lib/gonebusy/controllers/schedules_controller.rb +361 -428
  11. data/lib/gonebusy/controllers/search_controller.rb +52 -63
  12. data/lib/gonebusy/controllers/services_controller.rb +310 -367
  13. data/lib/gonebusy/controllers/users_controller.rb +199 -239
  14. data/lib/gonebusy/exceptions/api_exception.rb +16 -16
  15. data/lib/gonebusy/exceptions/entities_error_error_exception.rb +27 -0
  16. data/lib/gonebusy/exceptions/entities_error_exception.rb +26 -26
  17. data/lib/gonebusy/gonebusy_client.rb +58 -58
  18. data/lib/gonebusy/http/auth/custom_auth.rb +15 -15
  19. data/lib/gonebusy/http/faraday_client.rb +43 -41
  20. data/lib/gonebusy/http/http_call_back.rb +17 -17
  21. data/lib/gonebusy/http/http_client.rb +84 -82
  22. data/lib/gonebusy/http/http_context.rb +15 -15
  23. data/lib/gonebusy/http/http_method_enum.rb +7 -7
  24. data/lib/gonebusy/http/http_request.rb +44 -44
  25. data/lib/gonebusy/http/http_response.rb +19 -19
  26. data/lib/gonebusy/models/base_model.rb +31 -31
  27. data/lib/gonebusy/models/cancel_booking_by_id_response.rb +35 -35
  28. data/lib/gonebusy/models/create_booking_body.rb +134 -80
  29. data/lib/gonebusy/models/create_booking_response.rb +35 -35
  30. data/lib/gonebusy/models/create_category_body.rb +71 -71
  31. data/lib/gonebusy/models/create_category_response.rb +35 -35
  32. data/lib/gonebusy/models/create_pricing_model_body.rb +80 -80
  33. data/lib/gonebusy/models/create_pricing_model_response.rb +35 -35
  34. data/lib/gonebusy/models/create_resource_body.rb +89 -89
  35. data/lib/gonebusy/models/create_resource_response.rb +35 -35
  36. data/lib/gonebusy/models/create_schedule_body.rb +143 -144
  37. data/lib/gonebusy/models/create_schedule_response.rb +35 -35
  38. data/lib/gonebusy/models/create_schedule_time_window_body.rb +116 -117
  39. data/lib/gonebusy/models/create_schedule_time_window_response.rb +35 -35
  40. data/lib/gonebusy/models/create_service_body.rb +107 -107
  41. data/lib/gonebusy/models/create_service_response.rb +35 -35
  42. data/lib/gonebusy/models/create_user_body.rb +89 -89
  43. data/lib/gonebusy/models/create_user_response.rb +35 -35
  44. data/lib/gonebusy/models/date_recurs_by_enum.rb +12 -12
  45. data/lib/gonebusy/models/delete_resource_by_id_response.rb +35 -35
  46. data/lib/gonebusy/models/delete_schedule_by_id_response.rb +35 -35
  47. data/lib/gonebusy/models/delete_schedule_time_window_by_id_response.rb +35 -35
  48. data/lib/gonebusy/models/delete_service_by_id_response.rb +35 -35
  49. data/lib/gonebusy/models/entities_address_entity.rb +116 -116
  50. data/lib/gonebusy/models/entities_availability_response.rb +58 -58
  51. data/lib/gonebusy/models/entities_booking_response.rb +71 -71
  52. data/lib/gonebusy/models/entities_category_response.rb +98 -98
  53. data/lib/gonebusy/models/entities_pricing_model_response.rb +89 -89
  54. data/lib/gonebusy/models/entities_resource_availabilities.rb +49 -49
  55. data/lib/gonebusy/models/entities_resource_response.rb +107 -107
  56. data/lib/gonebusy/models/entities_schedule_response.rb +76 -76
  57. data/lib/gonebusy/models/entities_search_response.rb +54 -54
  58. data/lib/gonebusy/models/entities_service_response.rb +134 -130
  59. data/lib/gonebusy/models/entities_slots.rb +44 -45
  60. data/lib/gonebusy/models/entities_thing_type_response.rb +44 -44
  61. data/lib/gonebusy/models/entities_time_window_response.rb +134 -135
  62. data/lib/gonebusy/models/entities_user_response.rb +152 -152
  63. data/lib/gonebusy/models/frequency_enum.rb +17 -17
  64. data/lib/gonebusy/models/gender_enum.rb +9 -9
  65. data/lib/gonebusy/models/get_booking_by_id_response.rb +35 -35
  66. data/lib/gonebusy/models/get_bookings_response.rb +40 -40
  67. data/lib/gonebusy/models/get_categories_response.rb +40 -40
  68. data/lib/gonebusy/models/get_category_by_id_response.rb +35 -35
  69. data/lib/gonebusy/models/get_pricing_model_by_id_response.rb +35 -35
  70. data/lib/gonebusy/models/get_pricing_models_response.rb +40 -40
  71. data/lib/gonebusy/models/get_resource_by_id_response.rb +35 -35
  72. data/lib/gonebusy/models/get_resource_things_response.rb +40 -40
  73. data/lib/gonebusy/models/get_resources_response.rb +40 -40
  74. data/lib/gonebusy/models/get_schedule_by_id_response.rb +35 -35
  75. data/lib/gonebusy/models/get_schedules_response.rb +40 -40
  76. data/lib/gonebusy/models/get_service_available_slots_by_id_response.rb +35 -35
  77. data/lib/gonebusy/models/get_service_by_id_response.rb +35 -35
  78. data/lib/gonebusy/models/get_services_response.rb +40 -40
  79. data/lib/gonebusy/models/get_user_by_id_response.rb +35 -35
  80. data/lib/gonebusy/models/get_users_response.rb +40 -40
  81. data/lib/gonebusy/models/occurrence_enum.rb +21 -21
  82. data/lib/gonebusy/models/recurs_by_enum.rb +15 -15
  83. data/lib/gonebusy/models/search_query_response.rb +35 -35
  84. data/lib/gonebusy/models/update_booking_by_id_body.rb +116 -0
  85. data/lib/gonebusy/models/update_booking_by_id_response.rb +35 -35
  86. data/lib/gonebusy/models/update_pricing_model_by_id_body.rb +62 -62
  87. data/lib/gonebusy/models/update_pricing_model_by_id_response.rb +35 -35
  88. data/lib/gonebusy/models/update_resource_by_id_body.rb +71 -71
  89. data/lib/gonebusy/models/update_resource_by_id_response.rb +35 -35
  90. data/lib/gonebusy/models/update_schedule_time_window_by_id_body.rb +116 -117
  91. data/lib/gonebusy/models/update_schedule_time_window_by_id_response.rb +35 -35
  92. data/lib/gonebusy/models/update_service_by_id_body.rb +98 -98
  93. data/lib/gonebusy/models/update_service_by_id_response.rb +35 -35
  94. data/lib/gonebusy/models/update_user_by_id_body.rb +89 -89
  95. data/lib/gonebusy/models/update_user_by_id_response.rb +35 -35
  96. data/lib/gonebusy.rb +108 -104
  97. metadata +53 -17
@@ -0,0 +1,116 @@
1
+ # This file was automatically generated by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class UpdateBookingByIdBody < BaseModel
5
+ # New date of booking. If a recurring booking, must be a date of an instance. Several formats are supported: '2014-10-31', 'October 31, 2014'
6
+ # @return [Date]
7
+ attr_accessor :date
8
+
9
+ # Required only when :recurs_by is 'monthly' or 'yearly' to differentiate between exact date or 'day in month/year'. See Recurring Booking examples.
10
+ # @return [DateRecursByEnum]
11
+ attr_accessor :date_recurs_by
12
+
13
+ # List of comma-separated days of the week this Booking falls on. Useful for recurring Bookings. If provided, at least one must be specified.
14
+ # @return [String]
15
+ attr_accessor :days
16
+
17
+ # New length of time, in minutes, for the desired booking - if Service allows requesting a variable amount of time
18
+ # @return [Integer]
19
+ attr_accessor :duration
20
+
21
+ # New end date of a recurring booking. If recurring, leave blank for infinite booking. Several formats are supported: '2014-10-31', 'October 31, 2014'.
22
+ # @return [Date]
23
+ attr_accessor :end_date
24
+
25
+ # Optional frequency of recurrence as specified by :recurs_by. E.g, :single, :every, :every_other, etc.
26
+ # @return [FrequencyEnum]
27
+ attr_accessor :frequency
28
+
29
+ # Optional occurrence of frequency. E.g, :first, :2nd, :last, :2nd_to_last, etc.
30
+ # @return [OccurrenceEnum]
31
+ attr_accessor :occurrence
32
+
33
+ # One of the possible recurrence values.
34
+ # @return [RecursByEnum]
35
+ attr_accessor :recurs_by
36
+
37
+ # New time of booking. Several formats are supported: '9am', '09:00', '9:00', '0900'
38
+ # @return [String]
39
+ attr_accessor :time
40
+
41
+ # When a recurring booking, one of: ['instance', 'all', 'infinite']
42
+ # @return [String]
43
+ attr_accessor :update_recurring
44
+
45
+ # A mapping from model property names to API property names
46
+ def self.names
47
+ if @hash.nil?
48
+ @hash = {}
49
+ @hash["date"] = "date"
50
+ @hash["date_recurs_by"] = "date_recurs_by"
51
+ @hash["days"] = "days"
52
+ @hash["duration"] = "duration"
53
+ @hash["end_date"] = "end_date"
54
+ @hash["frequency"] = "frequency"
55
+ @hash["occurrence"] = "occurrence"
56
+ @hash["recurs_by"] = "recurs_by"
57
+ @hash["time"] = "time"
58
+ @hash["update_recurring"] = "update_recurring"
59
+ end
60
+ @hash
61
+ end
62
+
63
+ def initialize(date = nil,
64
+ date_recurs_by = nil,
65
+ days = nil,
66
+ duration = nil,
67
+ end_date = nil,
68
+ frequency = nil,
69
+ occurrence = nil,
70
+ recurs_by = nil,
71
+ time = nil,
72
+ update_recurring = nil)
73
+ @date = date
74
+ @date_recurs_by = date_recurs_by
75
+ @days = days
76
+ @duration = duration
77
+ @end_date = end_date
78
+ @frequency = frequency
79
+ @occurrence = occurrence
80
+ @recurs_by = recurs_by
81
+ @time = time
82
+ @update_recurring = update_recurring
83
+ end
84
+
85
+ # Creates an instance of the object from a hash
86
+ def self.from_hash(hash)
87
+ if hash == nil
88
+ nil
89
+ else
90
+ # Extract variables from the hash
91
+ date = hash['date']
92
+ date_recurs_by = hash['date_recurs_by']
93
+ days = hash['days']
94
+ duration = hash['duration']
95
+ end_date = hash['end_date']
96
+ frequency = hash['frequency']
97
+ occurrence = hash['occurrence']
98
+ recurs_by = hash['recurs_by']
99
+ time = hash['time']
100
+ update_recurring = hash['update_recurring']
101
+
102
+ # Create object from extracted values
103
+ UpdateBookingByIdBody.new(date,
104
+ date_recurs_by,
105
+ days,
106
+ duration,
107
+ end_date,
108
+ frequency,
109
+ occurrence,
110
+ recurs_by,
111
+ time,
112
+ update_recurring)
113
+ end
114
+ end
115
+ end
116
+ end
@@ -1,35 +1,35 @@
1
- # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
-
3
- module Gonebusy
4
- class UpdateBookingByIdResponse < BaseModel
5
- # TODO: Write general description for this method
6
- # @return [EntitiesBookingResponse]
7
- attr_accessor :booking
8
-
9
- # A mapping from model property names to API property names
10
- def self.names
11
- if @hash.nil?
12
- @hash = {}
13
- @hash["booking"] = "booking"
14
- end
15
- @hash
16
- end
17
-
18
- def initialize(booking = nil)
19
- @booking = booking
20
- end
21
-
22
- # Creates an instance of the object from a hash
23
- def self.from_hash(hash)
24
- if hash == nil
25
- nil
26
- else
27
- # Extract variables from the hash
28
- booking = EntitiesBookingResponse.from_hash(hash["booking"]) if hash["booking"]
29
-
30
- # Create object from extracted values
31
- UpdateBookingByIdResponse.new(booking)
32
- end
33
- end
34
- end
35
- end
1
+ # This file was automatically generated by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class UpdateBookingByIdResponse < BaseModel
5
+ # TODO: Write general description for this method
6
+ # @return [EntitiesBookingResponse]
7
+ attr_accessor :booking
8
+
9
+ # A mapping from model property names to API property names
10
+ def self.names
11
+ if @hash.nil?
12
+ @hash = {}
13
+ @hash["booking"] = "booking"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(booking = nil)
19
+ @booking = booking
20
+ end
21
+
22
+ # Creates an instance of the object from a hash
23
+ def self.from_hash(hash)
24
+ if hash == nil
25
+ nil
26
+ else
27
+ # Extract variables from the hash
28
+ booking = EntitiesBookingResponse.from_hash(hash['booking']) if hash['booking']
29
+
30
+ # Create object from extracted values
31
+ UpdateBookingByIdResponse.new(booking)
32
+ end
33
+ end
34
+ end
35
+ end
@@ -1,62 +1,62 @@
1
- # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
-
3
- module Gonebusy
4
- class UpdatePricingModelByIdBody < BaseModel
5
- # 3 Letter ISO Currency Code
6
- # @return [String]
7
- attr_accessor :currency
8
-
9
- # PricingModel Name
10
- # @return [String]
11
- attr_accessor :name
12
-
13
- # Optional Notes Field
14
- # @return [String]
15
- attr_accessor :notes
16
-
17
- # Price
18
- # @return [Float]
19
- attr_accessor :price
20
-
21
- # A mapping from model property names to API property names
22
- def self.names
23
- if @hash.nil?
24
- @hash = {}
25
- @hash["currency"] = "currency"
26
- @hash["name"] = "name"
27
- @hash["notes"] = "notes"
28
- @hash["price"] = "price"
29
- end
30
- @hash
31
- end
32
-
33
- def initialize(currency = nil,
34
- name = nil,
35
- notes = nil,
36
- price = nil)
37
- @currency = currency
38
- @name = name
39
- @notes = notes
40
- @price = price
41
- end
42
-
43
- # Creates an instance of the object from a hash
44
- def self.from_hash(hash)
45
- if hash == nil
46
- nil
47
- else
48
- # Extract variables from the hash
49
- currency = hash["currency"]
50
- name = hash["name"]
51
- notes = hash["notes"]
52
- price = hash["price"]
53
-
54
- # Create object from extracted values
55
- UpdatePricingModelByIdBody.new(currency,
56
- name,
57
- notes,
58
- price)
59
- end
60
- end
61
- end
62
- end
1
+ # This file was automatically generated by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class UpdatePricingModelByIdBody < BaseModel
5
+ # 3 Letter ISO Currency Code
6
+ # @return [String]
7
+ attr_accessor :currency
8
+
9
+ # PricingModel Name
10
+ # @return [String]
11
+ attr_accessor :name
12
+
13
+ # Optional Notes Field
14
+ # @return [String]
15
+ attr_accessor :notes
16
+
17
+ # Price
18
+ # @return [Float]
19
+ attr_accessor :price
20
+
21
+ # A mapping from model property names to API property names
22
+ def self.names
23
+ if @hash.nil?
24
+ @hash = {}
25
+ @hash["currency"] = "currency"
26
+ @hash["name"] = "name"
27
+ @hash["notes"] = "notes"
28
+ @hash["price"] = "price"
29
+ end
30
+ @hash
31
+ end
32
+
33
+ def initialize(currency = nil,
34
+ name = nil,
35
+ notes = nil,
36
+ price = nil)
37
+ @currency = currency
38
+ @name = name
39
+ @notes = notes
40
+ @price = price
41
+ end
42
+
43
+ # Creates an instance of the object from a hash
44
+ def self.from_hash(hash)
45
+ if hash == nil
46
+ nil
47
+ else
48
+ # Extract variables from the hash
49
+ currency = hash['currency']
50
+ name = hash['name']
51
+ notes = hash['notes']
52
+ price = hash['price']
53
+
54
+ # Create object from extracted values
55
+ UpdatePricingModelByIdBody.new(currency,
56
+ name,
57
+ notes,
58
+ price)
59
+ end
60
+ end
61
+ end
62
+ end
@@ -1,35 +1,35 @@
1
- # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
-
3
- module Gonebusy
4
- class UpdatePricingModelByIdResponse < BaseModel
5
- # TODO: Write general description for this method
6
- # @return [EntitiesPricingModelResponse]
7
- attr_accessor :pricing_model
8
-
9
- # A mapping from model property names to API property names
10
- def self.names
11
- if @hash.nil?
12
- @hash = {}
13
- @hash["pricing_model"] = "pricing_model"
14
- end
15
- @hash
16
- end
17
-
18
- def initialize(pricing_model = nil)
19
- @pricing_model = pricing_model
20
- end
21
-
22
- # Creates an instance of the object from a hash
23
- def self.from_hash(hash)
24
- if hash == nil
25
- nil
26
- else
27
- # Extract variables from the hash
28
- pricing_model = EntitiesPricingModelResponse.from_hash(hash["pricing_model"]) if hash["pricing_model"]
29
-
30
- # Create object from extracted values
31
- UpdatePricingModelByIdResponse.new(pricing_model)
32
- end
33
- end
34
- end
35
- end
1
+ # This file was automatically generated by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class UpdatePricingModelByIdResponse < BaseModel
5
+ # TODO: Write general description for this method
6
+ # @return [EntitiesPricingModelResponse]
7
+ attr_accessor :pricing_model
8
+
9
+ # A mapping from model property names to API property names
10
+ def self.names
11
+ if @hash.nil?
12
+ @hash = {}
13
+ @hash["pricing_model"] = "pricing_model"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(pricing_model = nil)
19
+ @pricing_model = pricing_model
20
+ end
21
+
22
+ # Creates an instance of the object from a hash
23
+ def self.from_hash(hash)
24
+ if hash == nil
25
+ nil
26
+ else
27
+ # Extract variables from the hash
28
+ pricing_model = EntitiesPricingModelResponse.from_hash(hash['pricing_model']) if hash['pricing_model']
29
+
30
+ # Create object from extracted values
31
+ UpdatePricingModelByIdResponse.new(pricing_model)
32
+ end
33
+ end
34
+ end
35
+ end
@@ -1,71 +1,71 @@
1
- # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
-
3
- module Gonebusy
4
- class UpdateResourceByIdBody < BaseModel
5
- # Optional Capacity
6
- # @return [Integer]
7
- attr_accessor :capacity
8
-
9
- # Optional Description
10
- # @return [String]
11
- attr_accessor :description
12
-
13
- # Optional Gender
14
- # @return [GenderEnum]
15
- attr_accessor :gender
16
-
17
- # Resource Name
18
- # @return [String]
19
- attr_accessor :name
20
-
21
- # When Resource is a Thing, the type Id
22
- # @return [Integer]
23
- attr_accessor :thing_type_id
24
-
25
- # A mapping from model property names to API property names
26
- def self.names
27
- if @hash.nil?
28
- @hash = {}
29
- @hash["capacity"] = "capacity"
30
- @hash["description"] = "description"
31
- @hash["gender"] = "gender"
32
- @hash["name"] = "name"
33
- @hash["thing_type_id"] = "thing_type_id"
34
- end
35
- @hash
36
- end
37
-
38
- def initialize(capacity = nil,
39
- description = nil,
40
- gender = nil,
41
- name = nil,
42
- thing_type_id = nil)
43
- @capacity = capacity
44
- @description = description
45
- @gender = gender
46
- @name = name
47
- @thing_type_id = thing_type_id
48
- end
49
-
50
- # Creates an instance of the object from a hash
51
- def self.from_hash(hash)
52
- if hash == nil
53
- nil
54
- else
55
- # Extract variables from the hash
56
- capacity = hash["capacity"]
57
- description = hash["description"]
58
- gender = hash["gender"]
59
- name = hash["name"]
60
- thing_type_id = hash["thing_type_id"]
61
-
62
- # Create object from extracted values
63
- UpdateResourceByIdBody.new(capacity,
64
- description,
65
- gender,
66
- name,
67
- thing_type_id)
68
- end
69
- end
70
- end
71
- end
1
+ # This file was automatically generated by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class UpdateResourceByIdBody < BaseModel
5
+ # Optional Capacity
6
+ # @return [Integer]
7
+ attr_accessor :capacity
8
+
9
+ # Optional Description
10
+ # @return [String]
11
+ attr_accessor :description
12
+
13
+ # Optional Gender
14
+ # @return [GenderEnum]
15
+ attr_accessor :gender
16
+
17
+ # Resource Name
18
+ # @return [String]
19
+ attr_accessor :name
20
+
21
+ # When Resource is a Thing, the type Id
22
+ # @return [Integer]
23
+ attr_accessor :thing_type_id
24
+
25
+ # A mapping from model property names to API property names
26
+ def self.names
27
+ if @hash.nil?
28
+ @hash = {}
29
+ @hash["capacity"] = "capacity"
30
+ @hash["description"] = "description"
31
+ @hash["gender"] = "gender"
32
+ @hash["name"] = "name"
33
+ @hash["thing_type_id"] = "thing_type_id"
34
+ end
35
+ @hash
36
+ end
37
+
38
+ def initialize(capacity = nil,
39
+ description = nil,
40
+ gender = nil,
41
+ name = nil,
42
+ thing_type_id = nil)
43
+ @capacity = capacity
44
+ @description = description
45
+ @gender = gender
46
+ @name = name
47
+ @thing_type_id = thing_type_id
48
+ end
49
+
50
+ # Creates an instance of the object from a hash
51
+ def self.from_hash(hash)
52
+ if hash == nil
53
+ nil
54
+ else
55
+ # Extract variables from the hash
56
+ capacity = hash['capacity']
57
+ description = hash['description']
58
+ gender = hash['gender']
59
+ name = hash['name']
60
+ thing_type_id = hash['thing_type_id']
61
+
62
+ # Create object from extracted values
63
+ UpdateResourceByIdBody.new(capacity,
64
+ description,
65
+ gender,
66
+ name,
67
+ thing_type_id)
68
+ end
69
+ end
70
+ end
71
+ end