Class: Merge::Hris::AsyncTimeOffBalancesClient

Inherits:
Object
  • Object
show all
Defined in:
lib/merge_ruby_client/hris/time_off_balances/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request_client:) ⇒ Merge::Hris::AsyncTimeOffBalancesClient



157
158
159
# File 'lib/merge_ruby_client/hris/time_off_balances/client.rb', line 157

def initialize(request_client:)
  @request_client = request_client
end

Instance Attribute Details

#request_clientMerge::AsyncRequestClient (readonly)



153
154
155
# File 'lib/merge_ruby_client/hris/time_off_balances/client.rb', line 153

def request_client
  @request_client
end

Instance Method Details

#list(created_after: nil, created_before: nil, cursor: nil, employee_id: nil, expand: nil, include_deleted_data: nil, include_remote_data: nil, include_shell_data: nil, modified_after: nil, modified_before: nil, page_size: nil, policy_type: nil, remote_fields: nil, remote_id: nil, show_enum_origins: nil, request_options: nil) ⇒ Merge::Hris::PaginatedTimeOffBalanceList

Returns a list of TimeOffBalance objects.

Examples:

api = Merge::Client.new(
  base_url: "https://api.example.com",
  environment: Merge::Environment::PRODUCTION,
  api_key: "YOUR_AUTH_TOKEN"
)
api.hris.time_off_balances.list(cursor: "cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw")


203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
# File 'lib/merge_ruby_client/hris/time_off_balances/client.rb', line 203

def list(created_after: nil, created_before: nil, cursor: nil, employee_id: nil, expand: nil,
         include_deleted_data: nil, include_remote_data: nil, include_shell_data: nil, modified_after: nil, modified_before: nil, page_size: nil, policy_type: nil, remote_fields: nil, remote_id: nil, show_enum_origins: nil, request_options: nil)
  Async do
    response = @request_client.conn.get do |req|
      req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
      req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
      req.headers["X-Account-Token"] = request_options. unless request_options&..nil?
      req.headers = {
    **(req.headers || {}),
    **@request_client.get_headers,
    **(request_options&.additional_headers || {})
      }.compact
      req.params = {
        **(request_options&.additional_query_parameters || {}),
        "created_after": created_after,
        "created_before": created_before,
        "cursor": cursor,
        "employee_id": employee_id,
        "expand": expand,
        "include_deleted_data": include_deleted_data,
        "include_remote_data": include_remote_data,
        "include_shell_data": include_shell_data,
        "modified_after": modified_after,
        "modified_before": modified_before,
        "page_size": page_size,
        "policy_type": policy_type,
        "remote_fields": remote_fields,
        "remote_id": remote_id,
        "show_enum_origins": show_enum_origins
      }.compact
      unless request_options.nil? || request_options&.additional_body_parameters.nil?
        req.body = { **(request_options&.additional_body_parameters || {}) }.compact
      end
      req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/time-off-balances"
    end
    Merge::Hris::PaginatedTimeOffBalanceList.from_json(json_object: response.body)
  end
end

#retrieve(id:, expand: nil, include_remote_data: nil, include_shell_data: nil, remote_fields: nil, show_enum_origins: nil, request_options: nil) ⇒ Merge::Hris::TimeOffBalance

Returns a TimeOffBalance object with the given id.

Examples:

api = Merge::Client.new(
  base_url: "https://api.example.com",
  environment: Merge::Environment::PRODUCTION,
  api_key: "YOUR_AUTH_TOKEN"
)
api.hris.time_off_balances.retrieve(id: "id")


264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
# File 'lib/merge_ruby_client/hris/time_off_balances/client.rb', line 264

def retrieve(id:, expand: nil, include_remote_data: nil, include_shell_data: nil, remote_fields: nil,
             show_enum_origins: nil, request_options: nil)
  Async do
    response = @request_client.conn.get do |req|
      req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
      req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
      req.headers["X-Account-Token"] = request_options. unless request_options&..nil?
      req.headers = {
    **(req.headers || {}),
    **@request_client.get_headers,
    **(request_options&.additional_headers || {})
      }.compact
      req.params = {
        **(request_options&.additional_query_parameters || {}),
        "expand": expand,
        "include_remote_data": include_remote_data,
        "include_shell_data": include_shell_data,
        "remote_fields": remote_fields,
        "show_enum_origins": show_enum_origins
      }.compact
      unless request_options.nil? || request_options&.additional_body_parameters.nil?
        req.body = { **(request_options&.additional_body_parameters || {}) }.compact
      end
      req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/time-off-balances/#{id}"
    end
    Merge::Hris::TimeOffBalance.from_json(json_object: response.body)
  end
end