Class: Merge::Accounting::AsyncSyncStatusClient
- Inherits:
-
Object
- Object
- Merge::Accounting::AsyncSyncStatusClient
- Defined in:
- lib/merge_ruby_client/accounting/sync_status/client.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #initialize(request_client:) ⇒ Merge::Accounting::AsyncSyncStatusClient constructor
-
#list(cursor: nil, page_size: nil, request_options: nil) ⇒ Merge::Accounting::PaginatedSyncStatusList
Get sync status for the current sync and the most recently finished sync.
Constructor Details
#initialize(request_client:) ⇒ Merge::Accounting::AsyncSyncStatusClient
71 72 73 |
# File 'lib/merge_ruby_client/accounting/sync_status/client.rb', line 71 def initialize(request_client:) @request_client = request_client end |
Instance Attribute Details
#request_client ⇒ Merge::AsyncRequestClient (readonly)
67 68 69 |
# File 'lib/merge_ruby_client/accounting/sync_status/client.rb', line 67 def request_client @request_client end |
Instance Method Details
#list(cursor: nil, page_size: nil, request_options: nil) ⇒ Merge::Accounting::PaginatedSyncStatusList
Get sync status for the current sync and the most recently finished sync.
`last_sync_start` represents the most recent time any sync began.
`last_sync_finished` represents the most recent time any sync completed. These
timestamps may correspond to different sync instances which may result in a sync
start time being later than a separate sync completed time. To ensure you are
retrieving the latest available data reference the `last_sync_finished`
timestamp where `last_sync_result` is `DONE`. Possible values for `status` and
`last_sync_result` are `DISABLED`, `DONE`, `FAILED`, `PARTIALLY_SYNCED`,
`PAUSED`, `SYNCING`. Learn more about sync status in our [Help
Center](https://help.merge.dev/en/articles/8184193-merge-sync-statuses).
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 |
# File 'lib/merge_ruby_client/accounting/sync_status/client.rb', line 97 def list(cursor: nil, page_size: 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["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 req.params = { **(&.additional_query_parameters || {}), "cursor": cursor, "page_size": page_size }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/accounting/v1/sync-status" end Merge::Accounting::PaginatedSyncStatusList.from_json(json_object: response.body) end end |