gonebusy-ruby-client 0.0.2

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 +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +1963 -0
  4. data/lib/gonebusy/api_helper.rb +149 -0
  5. data/lib/gonebusy/configuration.rb +16 -0
  6. data/lib/gonebusy/controllers/base_controller.rb +45 -0
  7. data/lib/gonebusy/controllers/bookings_controller.rb +298 -0
  8. data/lib/gonebusy/controllers/categories_controller.rb +180 -0
  9. data/lib/gonebusy/controllers/pricing_models_controller.rb +241 -0
  10. data/lib/gonebusy/controllers/resources_controller.rb +355 -0
  11. data/lib/gonebusy/controllers/schedules_controller.rb +426 -0
  12. data/lib/gonebusy/controllers/search_controller.rb +64 -0
  13. data/lib/gonebusy/controllers/services_controller.rb +367 -0
  14. data/lib/gonebusy/controllers/users_controller.rb +288 -0
  15. data/lib/gonebusy/exceptions/api_exception.rb +16 -0
  16. data/lib/gonebusy/exceptions/entities_error_exception.rb +27 -0
  17. data/lib/gonebusy/gonebusy_client.rb +58 -0
  18. data/lib/gonebusy/http/auth/custom_auth.rb +16 -0
  19. data/lib/gonebusy/http/faraday_client.rb +41 -0
  20. data/lib/gonebusy/http/http_call_back.rb +17 -0
  21. data/lib/gonebusy/http/http_client.rb +82 -0
  22. data/lib/gonebusy/http/http_context.rb +15 -0
  23. data/lib/gonebusy/http/http_method_enum.rb +7 -0
  24. data/lib/gonebusy/http/http_request.rb +44 -0
  25. data/lib/gonebusy/http/http_response.rb +19 -0
  26. data/lib/gonebusy/models/base_model.rb +32 -0
  27. data/lib/gonebusy/models/cancel_booking_by_id_response.rb +35 -0
  28. data/lib/gonebusy/models/create_booking_body.rb +80 -0
  29. data/lib/gonebusy/models/create_booking_response.rb +35 -0
  30. data/lib/gonebusy/models/create_category_body.rb +71 -0
  31. data/lib/gonebusy/models/create_category_response.rb +35 -0
  32. data/lib/gonebusy/models/create_pricing_model_body.rb +80 -0
  33. data/lib/gonebusy/models/create_pricing_model_response.rb +35 -0
  34. data/lib/gonebusy/models/create_resource_body.rb +89 -0
  35. data/lib/gonebusy/models/create_resource_response.rb +35 -0
  36. data/lib/gonebusy/models/create_schedule_body.rb +144 -0
  37. data/lib/gonebusy/models/create_schedule_response.rb +35 -0
  38. data/lib/gonebusy/models/create_schedule_time_window_body.rb +117 -0
  39. data/lib/gonebusy/models/create_schedule_time_window_response.rb +35 -0
  40. data/lib/gonebusy/models/create_service_body.rb +98 -0
  41. data/lib/gonebusy/models/create_service_response.rb +35 -0
  42. data/lib/gonebusy/models/create_user_body.rb +89 -0
  43. data/lib/gonebusy/models/create_user_response.rb +35 -0
  44. data/lib/gonebusy/models/date_recurs_by_enum.rb +13 -0
  45. data/lib/gonebusy/models/delete_resource_by_id_response.rb +35 -0
  46. data/lib/gonebusy/models/delete_schedule_by_id_response.rb +35 -0
  47. data/lib/gonebusy/models/delete_schedule_time_window_by_id_response.rb +35 -0
  48. data/lib/gonebusy/models/delete_service_by_id_response.rb +35 -0
  49. data/lib/gonebusy/models/entities_address_entity.rb +116 -0
  50. data/lib/gonebusy/models/entities_availability_response.rb +58 -0
  51. data/lib/gonebusy/models/entities_booking_response.rb +71 -0
  52. data/lib/gonebusy/models/entities_category_response.rb +98 -0
  53. data/lib/gonebusy/models/entities_pricing_model_response.rb +89 -0
  54. data/lib/gonebusy/models/entities_resource_availabilities.rb +49 -0
  55. data/lib/gonebusy/models/entities_resource_response.rb +98 -0
  56. data/lib/gonebusy/models/entities_schedule_response.rb +76 -0
  57. data/lib/gonebusy/models/entities_search_response.rb +54 -0
  58. data/lib/gonebusy/models/entities_service_response.rb +116 -0
  59. data/lib/gonebusy/models/entities_slots.rb +45 -0
  60. data/lib/gonebusy/models/entities_thing_type_response.rb +44 -0
  61. data/lib/gonebusy/models/entities_time_window_response.rb +135 -0
  62. data/lib/gonebusy/models/entities_user_response.rb +152 -0
  63. data/lib/gonebusy/models/frequency_enum.rb +18 -0
  64. data/lib/gonebusy/models/gender_enum.rb +10 -0
  65. data/lib/gonebusy/models/get_booking_by_id_response.rb +35 -0
  66. data/lib/gonebusy/models/get_bookings_response.rb +40 -0
  67. data/lib/gonebusy/models/get_categories_response.rb +40 -0
  68. data/lib/gonebusy/models/get_category_by_id_response.rb +35 -0
  69. data/lib/gonebusy/models/get_pricing_model_by_id_response.rb +35 -0
  70. data/lib/gonebusy/models/get_pricing_models_response.rb +40 -0
  71. data/lib/gonebusy/models/get_resource_by_id_response.rb +35 -0
  72. data/lib/gonebusy/models/get_resource_things_response.rb +40 -0
  73. data/lib/gonebusy/models/get_resources_response.rb +40 -0
  74. data/lib/gonebusy/models/get_schedule_by_id_response.rb +35 -0
  75. data/lib/gonebusy/models/get_schedules_response.rb +40 -0
  76. data/lib/gonebusy/models/get_service_available_slots_by_id_response.rb +35 -0
  77. data/lib/gonebusy/models/get_service_by_id_response.rb +35 -0
  78. data/lib/gonebusy/models/get_services_response.rb +40 -0
  79. data/lib/gonebusy/models/get_user_by_id_response.rb +35 -0
  80. data/lib/gonebusy/models/get_users_pros_response.rb +40 -0
  81. data/lib/gonebusy/models/get_users_response.rb +40 -0
  82. data/lib/gonebusy/models/occurrence_enum.rb +22 -0
  83. data/lib/gonebusy/models/recurs_by_enum.rb +16 -0
  84. data/lib/gonebusy/models/search_query_response.rb +35 -0
  85. data/lib/gonebusy/models/update_booking_by_id_response.rb +35 -0
  86. data/lib/gonebusy/models/update_pricing_model_by_id_body.rb +62 -0
  87. data/lib/gonebusy/models/update_pricing_model_by_id_response.rb +35 -0
  88. data/lib/gonebusy/models/update_resource_by_id_body.rb +71 -0
  89. data/lib/gonebusy/models/update_resource_by_id_response.rb +35 -0
  90. data/lib/gonebusy/models/update_schedule_time_window_by_id_body.rb +117 -0
  91. data/lib/gonebusy/models/update_schedule_time_window_by_id_response.rb +35 -0
  92. data/lib/gonebusy/models/update_service_by_id_body.rb +89 -0
  93. data/lib/gonebusy/models/update_service_by_id_response.rb +35 -0
  94. data/lib/gonebusy/models/update_user_by_id_body.rb +89 -0
  95. data/lib/gonebusy/models/update_user_by_id_response.rb +35 -0
  96. data/lib/gonebusy.rb +105 -0
  97. metadata +186 -0
@@ -0,0 +1,40 @@
1
+ # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class GetServicesResponse < BaseModel
5
+ # TODO: Write general description for this method
6
+ # @return [List of EntitiesServiceResponse]
7
+ attr_accessor :services
8
+
9
+ # A mapping from model property names to API property names
10
+ def self.names
11
+ if @hash.nil?
12
+ @hash = {}
13
+ @hash["services"] = "services"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(services = nil)
19
+ @services = services
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
+ # Parameter is an array, so we need to iterate through it
29
+ services = nil
30
+ if hash["services"] != nil
31
+ services = Array.new
32
+ hash["services"].each{|structure| services << (EntitiesServiceResponse.from_hash(structure) if structure)}
33
+ end
34
+
35
+ # Create object from extracted values
36
+ GetServicesResponse.new(services)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,35 @@
1
+ # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class GetUserByIdResponse < BaseModel
5
+ # TODO: Write general description for this method
6
+ # @return [EntitiesUserResponse]
7
+ attr_accessor :user
8
+
9
+ # A mapping from model property names to API property names
10
+ def self.names
11
+ if @hash.nil?
12
+ @hash = {}
13
+ @hash["user"] = "user"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(user = nil)
19
+ @user = user
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
+ user = EntitiesUserResponse.from_hash(hash["user"]) if hash["user"]
29
+
30
+ # Create object from extracted values
31
+ GetUserByIdResponse.new(user)
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,40 @@
1
+ # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class GetUsersProsResponse < BaseModel
5
+ # TODO: Write general description for this method
6
+ # @return [List of EntitiesUserResponse]
7
+ attr_accessor :users
8
+
9
+ # A mapping from model property names to API property names
10
+ def self.names
11
+ if @hash.nil?
12
+ @hash = {}
13
+ @hash["users"] = "users"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(users = nil)
19
+ @users = users
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
+ # Parameter is an array, so we need to iterate through it
29
+ users = nil
30
+ if hash["users"] != nil
31
+ users = Array.new
32
+ hash["users"].each{|structure| users << (EntitiesUserResponse.from_hash(structure) if structure)}
33
+ end
34
+
35
+ # Create object from extracted values
36
+ GetUsersProsResponse.new(users)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,40 @@
1
+ # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class GetUsersResponse < BaseModel
5
+ # TODO: Write general description for this method
6
+ # @return [List of EntitiesUserResponse]
7
+ attr_accessor :users
8
+
9
+ # A mapping from model property names to API property names
10
+ def self.names
11
+ if @hash.nil?
12
+ @hash = {}
13
+ @hash["users"] = "users"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(users = nil)
19
+ @users = users
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
+ # Parameter is an array, so we need to iterate through it
29
+ users = nil
30
+ if hash["users"] != nil
31
+ users = Array.new
32
+ hash["users"].each{|structure| users << (EntitiesUserResponse.from_hash(structure) if structure)}
33
+ end
34
+
35
+ # Create object from extracted values
36
+ GetUsersResponse.new(users)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,22 @@
1
+ # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class OccurrenceEnum
5
+ # TODO: Write general description for ENUM_4TH_TO_LAST
6
+ # TODO: Write general description for ENUM_3RD_TO_LAST
7
+ # TODO: Write general description for ENUM_2ND_TO_LAST
8
+ # TODO: Write general description for LAST
9
+ # TODO: Write general description for EVERY
10
+ # TODO: Write general description for FIRST
11
+ # TODO: Write general description for ENUM_2ND
12
+ # TODO: Write general description for ENUM_3RD
13
+ # TODO: Write general description for ENUM_4TH
14
+ # TODO: Write general description for ENUM_5TH
15
+ # TODO: Write general description for ENUM_6TH
16
+ # TODO: Write general description for ENUM_7TH
17
+ # TODO: Write general description for ENUM_8TH
18
+ # TODO: Write general description for ENUM_9TH
19
+ # TODO: Write general description for ENUM_10TH
20
+ OCCURRENCE_ENUM = [ENUM_4TH_TO_LAST = '4th_to_last', ENUM_3RD_TO_LAST = '3rd_to_last', ENUM_2ND_TO_LAST = '2nd_to_last', LAST = 'last', EVERY = 'every', FIRST = 'first', ENUM_2ND = '2nd', ENUM_3RD = '3rd', ENUM_4TH = '4th', ENUM_5TH = '5th', ENUM_6TH = '6th', ENUM_7TH = '7th', ENUM_8TH = '8th', ENUM_9TH = '9th', ENUM_10TH = '10th']
21
+ end
22
+ end
@@ -0,0 +1,16 @@
1
+ # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class RecursByEnum
5
+ # TODO: Write general description for ONCE
6
+ # TODO: Write general description for DAILY
7
+ # TODO: Write general description for WEEKEND
8
+ # TODO: Write general description for MON_WED_FRI
9
+ # TODO: Write general description for TUE_THU
10
+ # TODO: Write general description for WEEKDAY
11
+ # TODO: Write general description for WEEKLY
12
+ # TODO: Write general description for MONTHLY
13
+ # TODO: Write general description for YEARLY
14
+ RECURS_BY_ENUM = [ONCE = 'once', DAILY = 'daily', WEEKEND = 'weekend', MON_WED_FRI = 'mon_wed_fri', TUE_THU = 'tue_thu', WEEKDAY = 'weekday', WEEKLY = 'weekly', MONTHLY = 'monthly', YEARLY = 'yearly']
15
+ end
16
+ end
@@ -0,0 +1,35 @@
1
+ # This file was automatically generated for GoneBusy Inc. by APIMATIC v2.0 ( https://apimatic.io ).
2
+
3
+ module Gonebusy
4
+ class SearchQueryResponse < BaseModel
5
+ # TODO: Write general description for this method
6
+ # @return [EntitiesSearchResponse]
7
+ attr_accessor :results
8
+
9
+ # A mapping from model property names to API property names
10
+ def self.names
11
+ if @hash.nil?
12
+ @hash = {}
13
+ @hash["results"] = "results"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(results = nil)
19
+ @results = results
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
+ results = EntitiesSearchResponse.from_hash(hash["results"]) if hash["results"]
29
+
30
+ # Create object from extracted values
31
+ SearchQueryResponse.new(results)
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +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
@@ -0,0 +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
@@ -0,0 +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_models
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_models"] = "pricing_models"
14
+ end
15
+ @hash
16
+ end
17
+
18
+ def initialize(pricing_models = nil)
19
+ @pricing_models = pricing_models
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_models = EntitiesPricingModelResponse.from_hash(hash["pricing_models"]) if hash["pricing_models"]
29
+
30
+ # Create object from extracted values
31
+ UpdatePricingModelByIdResponse.new(pricing_models)
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +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