Class: FinchAPI::Resources::HRIS::PayStatementItem::Rules

Inherits:
Object
  • Object
show all
Defined in:
lib/finch_api/resources/hris/pay_statement_item/rules.rb,
sig/finch_api/resources/hris/pay_statement_item/rules.rbs

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Rules

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Rules.

Parameters:



143
144
145
# File 'lib/finch_api/resources/hris/pay_statement_item/rules.rb', line 143

def initialize(client:)
  @client = client
end

Instance Method Details

#create(entity_ids: nil, attributes: nil, conditions: nil, effective_end_date: nil, effective_start_date: nil, entity_type: nil, request_options: {}) ⇒ FinchAPI::Models::HRIS::PayStatementItem::RuleCreateResponse

Some parameter documentations has been truncated, see Models::HRIS::PayStatementItem::RuleCreateParams for more details.

Custom rules can be created to associate specific attributes to pay statement items depending on the use case. For example, pay statement items that meet certain conditions can be labeled as a pre-tax 401k. This metadata can be retrieved where pay statement item information is available.

Parameters:

Returns:

See Also:



35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/finch_api/resources/hris/pay_statement_item/rules.rb', line 35

def create(params = {})
  query_params = [:entity_ids]
  parsed, options = FinchAPI::HRIS::PayStatementItem::RuleCreateParams.dump_request(params)
  query = FinchAPI::Internal::Util.encode_query_params(parsed.slice(*query_params))
  @client.request(
    method: :post,
    path: "employer/pay-statement-item/rule",
    query: query,
    body: parsed.except(*query_params),
    model: FinchAPI::Models::HRIS::PayStatementItem::RuleCreateResponse,
    security: {bearer_auth: true},
    options: options
  )
end

#delete(rule_id, entity_ids: nil, request_options: {}) ⇒ FinchAPI::Models::HRIS::PayStatementItem::RuleDeleteResponse

Some parameter documentations has been truncated, see Models::HRIS::PayStatementItem::RuleDeleteParams for more details.

Delete a rule for a pay statement item.

Parameters:

  • rule_id (String)
  • entity_ids (Array<String>)

    The entity IDs to delete the rule for. Provide exactly one entity ID per request

  • request_options (FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



127
128
129
130
131
132
133
134
135
136
137
138
# File 'lib/finch_api/resources/hris/pay_statement_item/rules.rb', line 127

def delete(rule_id, params = {})
  parsed, options = FinchAPI::HRIS::PayStatementItem::RuleDeleteParams.dump_request(params)
  query = FinchAPI::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :delete,
    path: ["employer/pay-statement-item/rule/%1$s", rule_id],
    query: query,
    model: FinchAPI::Models::HRIS::PayStatementItem::RuleDeleteResponse,
    security: {bearer_auth: true},
    options: options
  )
end

#list(entity_ids: nil, request_options: {}) ⇒ FinchAPI::Internal::ResponsesPage<FinchAPI::Models::HRIS::PayStatementItem::RuleListResponse>

Some parameter documentations has been truncated, see Models::HRIS::PayStatementItem::RuleListParams for more details.

List all rules of a connection account.

Parameters:

  • entity_ids (Array<String>)

    The entity IDs to retrieve rules for. Provide exactly one entity ID per request;

  • request_options (FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/finch_api/resources/hris/pay_statement_item/rules.rb', line 97

def list(params = {})
  parsed, options = FinchAPI::HRIS::PayStatementItem::RuleListParams.dump_request(params)
  query = FinchAPI::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: "employer/pay-statement-item/rule",
    query: query,
    page: FinchAPI::Internal::ResponsesPage,
    model: FinchAPI::Models::HRIS::PayStatementItem::RuleListResponse,
    security: {bearer_auth: true},
    options: options
  )
end

#update(rule_id, entity_ids: nil, optional_property: nil, request_options: {}) ⇒ FinchAPI::Models::HRIS::PayStatementItem::RuleUpdateResponse

Some parameter documentations has been truncated, see Models::HRIS::PayStatementItem::RuleUpdateParams for more details.

Update a rule for a pay statement item.

Parameters:

  • rule_id (String)

    Path param

  • entity_ids (Array<String>)

    Query param: The entity IDs to update the rule for. Provide exactly one entity I

  • optional_property (Object)

    Body param

  • request_options (FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/finch_api/resources/hris/pay_statement_item/rules.rb', line 68

def update(rule_id, params = {})
  query_params = [:entity_ids]
  parsed, options = FinchAPI::HRIS::PayStatementItem::RuleUpdateParams.dump_request(params)
  query = FinchAPI::Internal::Util.encode_query_params(parsed.slice(*query_params))
  @client.request(
    method: :put,
    path: ["employer/pay-statement-item/rule/%1$s", rule_id],
    query: query,
    body: parsed.except(*query_params),
    model: FinchAPI::Models::HRIS::PayStatementItem::RuleUpdateResponse,
    security: {bearer_auth: true},
    options: options
  )
end