Class: Square::Labor::BreakTypes::Client
- Inherits:
-
Object
- Object
- Square::Labor::BreakTypes::Client
- Defined in:
- lib/square/labor/break_types/client.rb
Instance Method Summary collapse
-
#create(request_options: {}, **params) ⇒ Square::Types::CreateBreakTypeResponse
Creates a new ‘BreakType`.
-
#delete(request_options: {}, **params) ⇒ Square::Types::DeleteBreakTypeResponse
Deletes an existing ‘BreakType`.
-
#get(request_options: {}, **params) ⇒ Square::Types::GetBreakTypeResponse
Returns a single ‘BreakType` specified by `id`.
- #initialize(client:) ⇒ Square::Labor::BreakTypes::Client constructor
-
#list(request_options: {}, **params) ⇒ Square::Types::ListBreakTypesResponse
Returns a paginated list of ‘BreakType` instances for a business.
-
#update(request_options: {}, **params) ⇒ Square::Types::UpdateBreakTypeResponse
Updates an existing ‘BreakType`.
Constructor Details
#initialize(client:) ⇒ Square::Labor::BreakTypes::Client
8 9 10 |
# File 'lib/square/labor/break_types/client.rb', line 8 def initialize(client:) @client = client end |
Instance Method Details
#create(request_options: {}, **params) ⇒ Square::Types::CreateBreakTypeResponse
Creates a new ‘BreakType`.
A ‘BreakType` is a template for creating `Break` objects. You must provide the following values in your request to this endpoint:
-
‘location_id`
-
‘break_name`
-
‘expected_duration`
-
‘is_paid`
You can only have three ‘BreakType` instances per location. If you attempt to add a fourth `BreakType` for a location, an `INVALID_REQUEST_ERROR` “Exceeded limit of 3 breaks per location.” is returned.
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/square/labor/break_types/client.rb', line 59 def create(request_options: {}, **params) _request = Square::Internal::JSON::Request.new( base_url: [:base_url] || Square::Environment::PRODUCTION, method: "POST", path: "v2/labor/break-types", body: params ) begin _response = @client.send(_request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = _response.code.to_i if code.between?(200, 299) Square::Types::CreateBreakTypeResponse.load(_response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(_response.body, code: code) end end |
#delete(request_options: {}, **params) ⇒ Square::Types::DeleteBreakTypeResponse
Deletes an existing ‘BreakType`.
A ‘BreakType` can be deleted even if it is referenced from a `Shift`.
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
# File 'lib/square/labor/break_types/client.rb', line 134 def delete(request_options: {}, **params) _request = Square::Internal::JSON::Request.new( base_url: [:base_url] || Square::Environment::PRODUCTION, method: "DELETE", path: "v2/labor/break-types/#{params[:id]}" ) begin _response = @client.send(_request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = _response.code.to_i if code.between?(200, 299) Square::Types::DeleteBreakTypeResponse.load(_response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(_response.body, code: code) end end |
#get(request_options: {}, **params) ⇒ Square::Types::GetBreakTypeResponse
Returns a single ‘BreakType` specified by `id`.
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
# File 'lib/square/labor/break_types/client.rb', line 83 def get(request_options: {}, **params) _request = Square::Internal::JSON::Request.new( base_url: [:base_url] || Square::Environment::PRODUCTION, method: "GET", path: "v2/labor/break-types/#{params[:id]}" ) begin _response = @client.send(_request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = _response.code.to_i if code.between?(200, 299) Square::Types::GetBreakTypeResponse.load(_response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(_response.body, code: code) end end |
#list(request_options: {}, **params) ⇒ Square::Types::ListBreakTypesResponse
Returns a paginated list of ‘BreakType` instances for a business.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/square/labor/break_types/client.rb', line 15 def list(request_options: {}, **params) _query_param_names = [ %w[location_id limit cursor], %i[location_id limit cursor] ].flatten _query = params.slice(*_query_param_names) params.except(*_query_param_names) _request = Square::Internal::JSON::Request.new( base_url: [:base_url] || Square::Environment::PRODUCTION, method: "GET", path: "v2/labor/break-types", query: _query ) begin _response = @client.send(_request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = _response.code.to_i if code.between?(200, 299) Square::Types::ListBreakTypesResponse.load(_response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(_response.body, code: code) end end |
#update(request_options: {}, **params) ⇒ Square::Types::UpdateBreakTypeResponse
Updates an existing ‘BreakType`.
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
# File 'lib/square/labor/break_types/client.rb', line 106 def update(request_options: {}, **params) _path_param_names = ["id"] _request = Square::Internal::JSON::Request.new( base_url: [:base_url] || Square::Environment::PRODUCTION, method: "PUT", path: "v2/labor/break-types/#{params[:id]}", body: params.except(*_path_param_names) ) begin _response = @client.send(_request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = _response.code.to_i if code.between?(200, 299) Square::Types::UpdateBreakTypeResponse.load(_response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(_response.body, code: code) end end |