Class: Pinnacle::AsyncCompanyClient
- Inherits:
-
Object
- Object
- Pinnacle::AsyncCompanyClient
- Defined in:
- lib/rcs/company/client.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
-
#get(company_id: nil, company_name: nil, request_options: nil) ⇒ Array<Pinnacle::Company>
Retrieve the company’s information (i.e. approval status, company name, etc.).
- #initialize(request_client:) ⇒ Pinnacle::AsyncCompanyClient constructor
-
#register(company:, company_contact:, point_of_contact:, optionals: nil, request_options: nil) ⇒ Pinnacle::Company::CompanyRegisterResponse
Register a company for RCS with the Pinnacle platform.
-
#update(company_id:, company: nil, company_contact: nil, point_of_contact: nil, optionals: nil, request_options: nil) ⇒ Pinnacle::Company::CompanyUpdateResponse
Update a company on the Pinnacle platform.
Constructor Details
#initialize(request_client:) ⇒ Pinnacle::AsyncCompanyClient
219 220 221 |
# File 'lib/rcs/company/client.rb', line 219 def initialize(request_client:) @request_client = request_client end |
Instance Attribute Details
#request_client ⇒ Pinnacle::AsyncRequestClient (readonly)
215 216 217 |
# File 'lib/rcs/company/client.rb', line 215 def request_client @request_client end |
Instance Method Details
#get(company_id: nil, company_name: nil, request_options: nil) ⇒ Array<Pinnacle::Company>
Retrieve the company’s information (i.e. approval status, company name, etc.).
Search by company ID or company name.
237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 |
# File 'lib/rcs/company/client.rb', line 237 def get(company_id: nil, company_name: nil, request_options: nil) Async do response = @request_client.conn.get do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["PINNACLE-API-Key"] = .api_key unless &.api_key.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact req.params = { **(&.additional_query_parameters || {}), "companyId": company_id, "companyName": company_name }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/company" end parsed_json = JSON.parse(response.body) parsed_json&.map do |item| item = item.to_json Pinnacle::Company.from_json(json_object: item) end end end |
#register(company:, company_contact:, point_of_contact:, optionals: nil, request_options: nil) ⇒ Pinnacle::Company::CompanyRegisterResponse
Register a company for RCS with the Pinnacle platform
306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 |
# File 'lib/rcs/company/client.rb', line 306 def register(company:, company_contact:, point_of_contact:, optionals: nil, request_options: nil) Async do response = @request_client.conn.post do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["PINNACLE-API-Key"] = .api_key unless &.api_key.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end req.body = { **(&.additional_body_parameters || {}), company: company, companyContact: company_contact, pointOfContact: point_of_contact, optionals: optionals }.compact req.url "#{@request_client.get_url(request_options: )}/company/register" end Pinnacle::Company::CompanyRegisterResponse.from_json(json_object: response.body) end end |
#update(company_id:, company: nil, company_contact: nil, point_of_contact: nil, optionals: nil, request_options: nil) ⇒ Pinnacle::Company::CompanyUpdateResponse
Update a company on the Pinnacle platform
388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 |
# File 'lib/rcs/company/client.rb', line 388 def update(company_id:, company: nil, company_contact: nil, point_of_contact: nil, optionals: nil, request_options: nil) Async do response = @request_client.conn.post do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["PINNACLE-API-Key"] = .api_key unless &.api_key.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end req.body = { **(&.additional_body_parameters || {}), companyId: company_id, company: company, companyContact: company_contact, pointOfContact: point_of_contact, optionals: optionals }.compact req.url "#{@request_client.get_url(request_options: )}/company/update" end Pinnacle::Company::CompanyUpdateResponse.from_json(json_object: response.body) end end |