Class: Merge::Ats::ForceResyncClient
- Inherits:
-
Object
- Object
- Merge::Ats::ForceResyncClient
- Defined in:
- lib/merge_ruby_client/ats/force_resync/client.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #initialize(request_client:) ⇒ Merge::Ats::ForceResyncClient constructor
-
#sync_status_resync_create(request_options: nil) ⇒ Array<Merge::Ats::SyncStatus>
Force re-sync of all models.
Constructor Details
#initialize(request_client:) ⇒ Merge::Ats::ForceResyncClient
16 17 18 |
# File 'lib/merge_ruby_client/ats/force_resync/client.rb', line 16 def initialize(request_client:) @request_client = request_client end |
Instance Attribute Details
#request_client ⇒ Merge::RequestClient (readonly)
12 13 14 |
# File 'lib/merge_ruby_client/ats/force_resync/client.rb', line 12 def request_client @request_client end |
Instance Method Details
#sync_status_resync_create(request_options: nil) ⇒ Array<Merge::Ats::SyncStatus>
Force re-sync of all models. This endpoint is available for monthly, quarterly,
and highest sync frequency customers on the Professional or Enterprise plans.
Doing so will consume a sync credit for the relevant linked account. Force
re-syncs can also be triggered manually in the Merge Dashboard and is available
for all customers.
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/merge_ruby_client/ats/force_resync/client.rb', line 35 def sync_status_resync_create(request_options: nil) response = @request_client.conn.post do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["Authorization"] = .api_key unless &.api_key.nil? req.headers["X-Account-Token"] = .account_token unless &.account_token.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 unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/ats/v1/sync-status/resync" end parsed_json = JSON.parse(response.body) parsed_json&.map do |item| item = item.to_json Merge::Ats::SyncStatus.from_json(json_object: item) end end |