Class: Merge::Crm::AsyncForceResyncClient
- Inherits:
-
Object
- Object
- Merge::Crm::AsyncForceResyncClient
- Defined in:
- lib/merge_ruby_client/crm/force_resync/client.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #initialize(request_client:) ⇒ Merge::Crm::AsyncForceResyncClient constructor
-
#sync_status_resync_create(request_options: nil) ⇒ Array<Merge::Crm::SyncStatus>
Force re-sync of all models.
Constructor Details
#initialize(request_client:) ⇒ Merge::Crm::AsyncForceResyncClient
67 68 69 |
# File 'lib/merge_ruby_client/crm/force_resync/client.rb', line 67 def initialize(request_client:) @request_client = request_client end |
Instance Attribute Details
#request_client ⇒ Merge::AsyncRequestClient (readonly)
63 64 65 |
# File 'lib/merge_ruby_client/crm/force_resync/client.rb', line 63 def request_client @request_client end |
Instance Method Details
#sync_status_resync_create(request_options: nil) ⇒ Array<Merge::Crm::SyncStatus>
Force re-sync of all models. This is available for all organizations via the
dashboard. Force re-sync is also available programmatically via API for monthly,
quarterly, and highest sync frequency customers on the Launch, Professional, or
Enterprise plans. Doing so will consume a sync credit for the relevant linked
account.
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'lib/merge_ruby_client/crm/force_resync/client.rb', line 86 def sync_status_resync_create(request_options: nil) Async do 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: )}/crm/v1/sync-status/resync" end parsed_json = JSON.parse(response.body) parsed_json&.map do |item| item = item.to_json Merge::Crm::SyncStatus.from_json(json_object: item) end end end |