merge_ruby_client 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/environment.rb +3 -3
- data/lib/merge_ruby_client/accounting/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/accounting/client.rb +0 -7
- data/lib/merge_ruby_client/accounting/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/accounting/payments/client.rb +4 -0
- data/lib/merge_ruby_client/accounting/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/types/account.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/accounting_attachment.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/accounting_period.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/accounting_phone_number.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/address.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/accounting/types/balance_sheet.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/cash_flow_statement.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/company_info.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/contact.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/credit_note.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item.rb +5 -13
- data/lib/merge_ruby_client/accounting/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/accounting/types/expense.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/expense_line.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/income_statement.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/invoice.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/invoice_line_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/journal_entry.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/journal_line.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/patched_payment_request.rb +14 -1
- data/lib/merge_ruby_client/accounting/types/payment.rb +18 -5
- data/lib/merge_ruby_client/accounting/types/payment_line_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/payment_request.rb +14 -1
- data/lib/merge_ruby_client/accounting/types/payment_type_enum.rb +12 -0
- data/lib/merge_ruby_client/accounting/types/purchase_order.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/purchase_order_line_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/accounting/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/accounting/types/report_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/tax_rate.rb +12 -10
- data/lib/merge_ruby_client/accounting/types/tax_rate_company.rb +2 -1
- data/lib/merge_ruby_client/accounting/types/tracking_category.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/transaction.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/transaction_line_item.rb +6 -6
- data/lib/merge_ruby_client/accounting/types/vendor_credit.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line.rb +4 -4
- data/lib/merge_ruby_client/ats/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/ats/client.rb +0 -7
- data/lib/merge_ruby_client/ats/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/ats/job_postings/client.rb +16 -4
- data/lib/merge_ruby_client/ats/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/ats/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/ats/types/activity.rb +4 -4
- data/lib/merge_ruby_client/ats/types/application.rb +4 -4
- data/lib/merge_ruby_client/ats/types/attachment.rb +4 -4
- data/lib/merge_ruby_client/ats/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/ats/types/candidate.rb +4 -4
- data/lib/merge_ruby_client/ats/types/department.rb +4 -4
- data/lib/merge_ruby_client/ats/types/eeoc.rb +4 -4
- data/lib/merge_ruby_client/ats/types/email_address.rb +4 -4
- data/lib/merge_ruby_client/ats/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/ats/types/job.rb +4 -4
- data/lib/merge_ruby_client/ats/types/job_interview_stage.rb +4 -4
- data/lib/merge_ruby_client/ats/types/job_posting.rb +4 -4
- data/lib/merge_ruby_client/ats/types/offer.rb +4 -4
- data/lib/merge_ruby_client/ats/types/office.rb +4 -4
- data/lib/merge_ruby_client/ats/types/phone_number.rb +4 -4
- data/lib/merge_ruby_client/ats/types/reject_reason.rb +4 -4
- data/lib/merge_ruby_client/ats/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/ats/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/ats/types/remote_user.rb +4 -4
- data/lib/merge_ruby_client/ats/types/scheduled_interview.rb +4 -4
- data/lib/merge_ruby_client/ats/types/scorecard.rb +4 -4
- data/lib/merge_ruby_client/ats/types/screening_question.rb +4 -4
- data/lib/merge_ruby_client/ats/types/screening_question_option.rb +4 -4
- data/lib/merge_ruby_client/ats/types/tag.rb +4 -4
- data/lib/merge_ruby_client/ats/types/url.rb +4 -4
- data/lib/merge_ruby_client/crm/accounts/client.rb +4 -0
- data/lib/merge_ruby_client/crm/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/crm/client.rb +0 -7
- data/lib/merge_ruby_client/crm/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/crm/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/crm/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/crm/types/account.rb +4 -4
- data/lib/merge_ruby_client/crm/types/account_request.rb +13 -1
- data/lib/merge_ruby_client/crm/types/address.rb +4 -4
- data/lib/merge_ruby_client/crm/types/association.rb +6 -6
- data/lib/merge_ruby_client/crm/types/association_association_type.rb +1 -0
- data/lib/merge_ruby_client/crm/types/association_sub_type.rb +4 -4
- data/lib/merge_ruby_client/crm/types/association_type.rb +8 -6
- data/lib/merge_ruby_client/crm/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/crm/types/contact.rb +4 -4
- data/lib/merge_ruby_client/crm/types/custom_object.rb +8 -8
- data/lib/merge_ruby_client/crm/types/custom_object_class.rb +10 -8
- data/lib/merge_ruby_client/crm/types/email_address.rb +4 -4
- data/lib/merge_ruby_client/crm/types/engagement.rb +4 -4
- data/lib/merge_ruby_client/crm/types/engagement_type.rb +4 -4
- data/lib/merge_ruby_client/crm/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/crm/types/lead.rb +4 -4
- data/lib/merge_ruby_client/crm/types/note.rb +4 -4
- data/lib/merge_ruby_client/crm/types/opportunity.rb +4 -4
- data/lib/merge_ruby_client/crm/types/patched_account_request.rb +13 -1
- data/lib/merge_ruby_client/crm/types/phone_number.rb +4 -4
- data/lib/merge_ruby_client/crm/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/crm/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/crm/types/remote_field_class_for_custom_object_class.rb +4 -4
- data/lib/merge_ruby_client/crm/types/stage.rb +4 -4
- data/lib/merge_ruby_client/crm/types/task.rb +4 -4
- data/lib/merge_ruby_client/crm/types/user.rb +4 -4
- data/lib/merge_ruby_client/filestorage/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/filestorage/client.rb +0 -7
- data/lib/merge_ruby_client/filestorage/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/filestorage/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/filestorage/types/drive.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/filestorage/types/file.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/folder.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/group.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/permission.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/filestorage/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/filestorage/types/user.rb +4 -4
- data/lib/merge_ruby_client/hris/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/hris/client.rb +0 -7
- data/lib/merge_ruby_client/hris/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/hris/groups/client.rb +10 -2
- data/lib/merge_ruby_client/hris/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/hris/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/hris/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/hris/types/bank_info.rb +4 -4
- data/lib/merge_ruby_client/hris/types/benefit.rb +4 -4
- data/lib/merge_ruby_client/hris/types/company.rb +4 -4
- data/lib/merge_ruby_client/hris/types/deduction.rb +4 -4
- data/lib/merge_ruby_client/hris/types/dependent.rb +4 -4
- data/lib/merge_ruby_client/hris/types/earning.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employee.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employee_payroll_run.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employer_benefit.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employment.rb +4 -4
- data/lib/merge_ruby_client/hris/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/hris/types/group.rb +19 -5
- data/lib/merge_ruby_client/hris/types/location.rb +4 -4
- data/lib/merge_ruby_client/hris/types/pay_group.rb +4 -4
- data/lib/merge_ruby_client/hris/types/payroll_run.rb +4 -4
- data/lib/merge_ruby_client/hris/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/hris/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/hris/types/tax.rb +4 -4
- data/lib/merge_ruby_client/hris/types/team.rb +4 -4
- data/lib/merge_ruby_client/hris/types/time_off.rb +4 -4
- data/lib/merge_ruby_client/hris/types/time_off_balance.rb +4 -4
- data/lib/merge_ruby_client/hris/types/timesheet_entry.rb +4 -4
- data/lib/merge_ruby_client/ticketing/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/ticketing/client.rb +0 -7
- data/lib/merge_ruby_client/ticketing/contacts/client.rb +127 -0
- data/lib/merge_ruby_client/ticketing/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/ticketing/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/types/account.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/attachment.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/ticketing/types/collection.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/comment.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/contact.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/contact_request.rb +125 -0
- data/lib/merge_ruby_client/ticketing/types/contact_request_account.rb +56 -0
- data/lib/merge_ruby_client/ticketing/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/ticketing/types/project.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/ticketing/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/ticketing/types/role.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/tag.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/team.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/ticket.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/ticketing_contact_response.rb +101 -0
- data/lib/merge_ruby_client/ticketing/types/user.rb +4 -4
- data/lib/merge_ruby_client.rb +7 -7
- data/lib/requests.rb +12 -2
- data/lib/types_export.rb +162 -200
- metadata +12 -56
- data/lib/merge_ruby_client/accounting/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/accounting/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/accounting/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/accounting/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/accounting/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/accounting/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/accounting/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/ats/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/ats/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/ats/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/ats/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/ats/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/ats/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/ats/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/crm/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/crm/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/crm/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/crm/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/crm/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/crm/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/crm/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/filestorage/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/filestorage/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/filestorage/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/filestorage/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/filestorage/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/filestorage/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/filestorage/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/hris/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/hris/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/hris/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/hris/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/hris/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/hris/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/hris/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/ticketing/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/ticketing/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/ticketing/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/ticketing/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/ticketing/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/ticketing/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/ticketing/types/paginated_condition_schema_list.rb +0 -80
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "../../../requests"
|
|
4
|
-
require_relative "../types/linked_account_selective_sync_configuration"
|
|
5
|
-
require "json"
|
|
6
|
-
require_relative "../types/linked_account_selective_sync_configuration_request"
|
|
7
|
-
require_relative "../types/paginated_condition_schema_list"
|
|
8
|
-
require "async"
|
|
9
|
-
|
|
10
|
-
module Merge
|
|
11
|
-
module Ticketing
|
|
12
|
-
class SelectiveSyncClient
|
|
13
|
-
# @return [Merge::RequestClient]
|
|
14
|
-
attr_reader :request_client
|
|
15
|
-
|
|
16
|
-
# @param request_client [Merge::RequestClient]
|
|
17
|
-
# @return [Merge::Ticketing::SelectiveSyncClient]
|
|
18
|
-
def initialize(request_client:)
|
|
19
|
-
@request_client = request_client
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
# Get a linked account's selective syncs.
|
|
23
|
-
#
|
|
24
|
-
# @param request_options [Merge::RequestOptions]
|
|
25
|
-
# @return [Array<Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration>]
|
|
26
|
-
# @example
|
|
27
|
-
# api = Merge::Client.new(
|
|
28
|
-
# environment: Environment::PRODUCTION,
|
|
29
|
-
# base_url: "https://api.example.com",
|
|
30
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
31
|
-
# )
|
|
32
|
-
# api.ticketing.configurations_list
|
|
33
|
-
def configurations_list(request_options: nil)
|
|
34
|
-
response = @request_client.conn.get do |req|
|
|
35
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
36
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
37
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
38
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
39
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/selective-sync/configurations"
|
|
40
|
-
end
|
|
41
|
-
parsed_json = JSON.parse(response.body)
|
|
42
|
-
parsed_json&.map do |v|
|
|
43
|
-
v = v.to_json
|
|
44
|
-
Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
# Replace a linked account's selective syncs.
|
|
49
|
-
#
|
|
50
|
-
# @param sync_configurations [Array<Hash>] The selective syncs associated with a linked account.Request of type Array<Merge::Ticketing::LinkedAccountSelectiveSyncConfigurationRequest>, as a Hash
|
|
51
|
-
# * :linked_account_conditions (Array<Merge::Ticketing::LinkedAccountConditionRequest>)
|
|
52
|
-
# @param request_options [Merge::RequestOptions]
|
|
53
|
-
# @return [Array<Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration>]
|
|
54
|
-
# @example
|
|
55
|
-
# api = Merge::Client.new(
|
|
56
|
-
# environment: Environment::PRODUCTION,
|
|
57
|
-
# base_url: "https://api.example.com",
|
|
58
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
59
|
-
# )
|
|
60
|
-
# api.ticketing.configurations_update(sync_configurations: [{ linked_account_conditions: }])
|
|
61
|
-
def configurations_update(sync_configurations:, request_options: nil)
|
|
62
|
-
response = @request_client.conn.put do |req|
|
|
63
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
64
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
65
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
66
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
67
|
-
req.body = {
|
|
68
|
-
**(request_options&.additional_body_parameters || {}),
|
|
69
|
-
sync_configurations: sync_configurations
|
|
70
|
-
}.compact
|
|
71
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/selective-sync/configurations"
|
|
72
|
-
end
|
|
73
|
-
parsed_json = JSON.parse(response.body)
|
|
74
|
-
parsed_json&.map do |v|
|
|
75
|
-
v = v.to_json
|
|
76
|
-
Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
77
|
-
end
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
# Get metadata for the conditions available to a linked account.
|
|
81
|
-
#
|
|
82
|
-
# @param common_model [String]
|
|
83
|
-
# @param cursor [String] The pagination cursor value.
|
|
84
|
-
# @param page_size [Integer] Number of results to return per page.
|
|
85
|
-
# @param request_options [Merge::RequestOptions]
|
|
86
|
-
# @return [Merge::Ticketing::PaginatedConditionSchemaList]
|
|
87
|
-
# @example
|
|
88
|
-
# api = Merge::Client.new(
|
|
89
|
-
# environment: Environment::PRODUCTION,
|
|
90
|
-
# base_url: "https://api.example.com",
|
|
91
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
92
|
-
# )
|
|
93
|
-
# api.ticketing.meta_list
|
|
94
|
-
def meta_list(common_model: nil, cursor: nil, page_size: nil, request_options: nil)
|
|
95
|
-
response = @request_client.conn.get do |req|
|
|
96
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
97
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
98
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
99
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
100
|
-
req.params = {
|
|
101
|
-
**(request_options&.additional_query_parameters || {}),
|
|
102
|
-
"common_model": common_model,
|
|
103
|
-
"cursor": cursor,
|
|
104
|
-
"page_size": page_size
|
|
105
|
-
}.compact
|
|
106
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/selective-sync/meta"
|
|
107
|
-
end
|
|
108
|
-
Merge::Ticketing::PaginatedConditionSchemaList.from_json(json_object: response.body)
|
|
109
|
-
end
|
|
110
|
-
end
|
|
111
|
-
|
|
112
|
-
class AsyncSelectiveSyncClient
|
|
113
|
-
# @return [Merge::AsyncRequestClient]
|
|
114
|
-
attr_reader :request_client
|
|
115
|
-
|
|
116
|
-
# @param request_client [Merge::AsyncRequestClient]
|
|
117
|
-
# @return [Merge::Ticketing::AsyncSelectiveSyncClient]
|
|
118
|
-
def initialize(request_client:)
|
|
119
|
-
@request_client = request_client
|
|
120
|
-
end
|
|
121
|
-
|
|
122
|
-
# Get a linked account's selective syncs.
|
|
123
|
-
#
|
|
124
|
-
# @param request_options [Merge::RequestOptions]
|
|
125
|
-
# @return [Array<Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration>]
|
|
126
|
-
# @example
|
|
127
|
-
# api = Merge::Client.new(
|
|
128
|
-
# environment: Environment::PRODUCTION,
|
|
129
|
-
# base_url: "https://api.example.com",
|
|
130
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
131
|
-
# )
|
|
132
|
-
# api.ticketing.configurations_list
|
|
133
|
-
def configurations_list(request_options: nil)
|
|
134
|
-
Async do
|
|
135
|
-
response = @request_client.conn.get do |req|
|
|
136
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
137
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
138
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
139
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
140
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/selective-sync/configurations"
|
|
141
|
-
end
|
|
142
|
-
parsed_json = JSON.parse(response.body)
|
|
143
|
-
parsed_json&.map do |v|
|
|
144
|
-
v = v.to_json
|
|
145
|
-
Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
146
|
-
end
|
|
147
|
-
end
|
|
148
|
-
end
|
|
149
|
-
|
|
150
|
-
# Replace a linked account's selective syncs.
|
|
151
|
-
#
|
|
152
|
-
# @param sync_configurations [Array<Hash>] The selective syncs associated with a linked account.Request of type Array<Merge::Ticketing::LinkedAccountSelectiveSyncConfigurationRequest>, as a Hash
|
|
153
|
-
# * :linked_account_conditions (Array<Merge::Ticketing::LinkedAccountConditionRequest>)
|
|
154
|
-
# @param request_options [Merge::RequestOptions]
|
|
155
|
-
# @return [Array<Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration>]
|
|
156
|
-
# @example
|
|
157
|
-
# api = Merge::Client.new(
|
|
158
|
-
# environment: Environment::PRODUCTION,
|
|
159
|
-
# base_url: "https://api.example.com",
|
|
160
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
161
|
-
# )
|
|
162
|
-
# api.ticketing.configurations_update(sync_configurations: [{ linked_account_conditions: }])
|
|
163
|
-
def configurations_update(sync_configurations:, request_options: nil)
|
|
164
|
-
Async do
|
|
165
|
-
response = @request_client.conn.put do |req|
|
|
166
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
167
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
168
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
169
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
170
|
-
req.body = {
|
|
171
|
-
**(request_options&.additional_body_parameters || {}),
|
|
172
|
-
sync_configurations: sync_configurations
|
|
173
|
-
}.compact
|
|
174
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/selective-sync/configurations"
|
|
175
|
-
end
|
|
176
|
-
parsed_json = JSON.parse(response.body)
|
|
177
|
-
parsed_json&.map do |v|
|
|
178
|
-
v = v.to_json
|
|
179
|
-
Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
180
|
-
end
|
|
181
|
-
end
|
|
182
|
-
end
|
|
183
|
-
|
|
184
|
-
# Get metadata for the conditions available to a linked account.
|
|
185
|
-
#
|
|
186
|
-
# @param common_model [String]
|
|
187
|
-
# @param cursor [String] The pagination cursor value.
|
|
188
|
-
# @param page_size [Integer] Number of results to return per page.
|
|
189
|
-
# @param request_options [Merge::RequestOptions]
|
|
190
|
-
# @return [Merge::Ticketing::PaginatedConditionSchemaList]
|
|
191
|
-
# @example
|
|
192
|
-
# api = Merge::Client.new(
|
|
193
|
-
# environment: Environment::PRODUCTION,
|
|
194
|
-
# base_url: "https://api.example.com",
|
|
195
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
196
|
-
# )
|
|
197
|
-
# api.ticketing.meta_list
|
|
198
|
-
def meta_list(common_model: nil, cursor: nil, page_size: nil, request_options: nil)
|
|
199
|
-
Async do
|
|
200
|
-
response = @request_client.conn.get do |req|
|
|
201
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
202
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
203
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
204
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
205
|
-
req.params = {
|
|
206
|
-
**(request_options&.additional_query_parameters || {}),
|
|
207
|
-
"common_model": common_model,
|
|
208
|
-
"cursor": cursor,
|
|
209
|
-
"page_size": page_size
|
|
210
|
-
}.compact
|
|
211
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/selective-sync/meta"
|
|
212
|
-
end
|
|
213
|
-
Merge::Ticketing::PaginatedConditionSchemaList.from_json(json_object: response.body)
|
|
214
|
-
end
|
|
215
|
-
end
|
|
216
|
-
end
|
|
217
|
-
end
|
|
218
|
-
end
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "condition_type_enum"
|
|
4
|
-
require_relative "operator_schema"
|
|
5
|
-
require "ostruct"
|
|
6
|
-
require "json"
|
|
7
|
-
|
|
8
|
-
module Merge
|
|
9
|
-
module Ticketing
|
|
10
|
-
class ConditionSchema
|
|
11
|
-
# @return [String] The ID of the condition schema. This ID is used when updating selective syncs
|
|
12
|
-
# for a linked account.
|
|
13
|
-
attr_reader :id
|
|
14
|
-
# @return [String] The common model for which a condition schema is defined.
|
|
15
|
-
attr_reader :common_model
|
|
16
|
-
# @return [String]
|
|
17
|
-
attr_reader :native_name
|
|
18
|
-
# @return [String]
|
|
19
|
-
attr_reader :field_name
|
|
20
|
-
# @return [Boolean] Whether this condition can only be applied once. If false, the condition can be
|
|
21
|
-
# AND'd together multiple times.
|
|
22
|
-
attr_reader :is_unique
|
|
23
|
-
# @return [Merge::Ticketing::ConditionTypeEnum] The type of value(s) that can be set for this condition.
|
|
24
|
-
# - `BOOLEAN` - BOOLEAN
|
|
25
|
-
# - `DATE` - DATE
|
|
26
|
-
# - `DATE_TIME` - DATE_TIME
|
|
27
|
-
# - `INTEGER` - INTEGER
|
|
28
|
-
# - `FLOAT` - FLOAT
|
|
29
|
-
# - `STRING` - STRING
|
|
30
|
-
# - `LIST_OF_STRINGS` - LIST_OF_STRINGS
|
|
31
|
-
attr_reader :condition_type
|
|
32
|
-
# @return [Array<Merge::Ticketing::OperatorSchema>] The schemas for the operators that can be used on a condition.
|
|
33
|
-
attr_reader :operators
|
|
34
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
35
|
-
attr_reader :additional_properties
|
|
36
|
-
# @return [Object]
|
|
37
|
-
attr_reader :_field_set
|
|
38
|
-
protected :_field_set
|
|
39
|
-
|
|
40
|
-
OMIT = Object.new
|
|
41
|
-
|
|
42
|
-
# @param id [String] The ID of the condition schema. This ID is used when updating selective syncs
|
|
43
|
-
# for a linked account.
|
|
44
|
-
# @param common_model [String] The common model for which a condition schema is defined.
|
|
45
|
-
# @param native_name [String]
|
|
46
|
-
# @param field_name [String]
|
|
47
|
-
# @param is_unique [Boolean] Whether this condition can only be applied once. If false, the condition can be
|
|
48
|
-
# AND'd together multiple times.
|
|
49
|
-
# @param condition_type [Merge::Ticketing::ConditionTypeEnum] The type of value(s) that can be set for this condition.
|
|
50
|
-
# - `BOOLEAN` - BOOLEAN
|
|
51
|
-
# - `DATE` - DATE
|
|
52
|
-
# - `DATE_TIME` - DATE_TIME
|
|
53
|
-
# - `INTEGER` - INTEGER
|
|
54
|
-
# - `FLOAT` - FLOAT
|
|
55
|
-
# - `STRING` - STRING
|
|
56
|
-
# - `LIST_OF_STRINGS` - LIST_OF_STRINGS
|
|
57
|
-
# @param operators [Array<Merge::Ticketing::OperatorSchema>] The schemas for the operators that can be used on a condition.
|
|
58
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
59
|
-
# @return [Merge::Ticketing::ConditionSchema]
|
|
60
|
-
def initialize(id:, condition_type:, operators:, common_model: OMIT, native_name: OMIT, field_name: OMIT,
|
|
61
|
-
is_unique: OMIT, additional_properties: nil)
|
|
62
|
-
@id = id
|
|
63
|
-
@common_model = common_model if common_model != OMIT
|
|
64
|
-
@native_name = native_name if native_name != OMIT
|
|
65
|
-
@field_name = field_name if field_name != OMIT
|
|
66
|
-
@is_unique = is_unique if is_unique != OMIT
|
|
67
|
-
@condition_type = condition_type
|
|
68
|
-
@operators = operators
|
|
69
|
-
@additional_properties = additional_properties
|
|
70
|
-
@_field_set = {
|
|
71
|
-
"id": id,
|
|
72
|
-
"common_model": common_model,
|
|
73
|
-
"native_name": native_name,
|
|
74
|
-
"field_name": field_name,
|
|
75
|
-
"is_unique": is_unique,
|
|
76
|
-
"condition_type": condition_type,
|
|
77
|
-
"operators": operators
|
|
78
|
-
}.reject do |_k, v|
|
|
79
|
-
v == OMIT
|
|
80
|
-
end
|
|
81
|
-
end
|
|
82
|
-
|
|
83
|
-
# Deserialize a JSON object to an instance of ConditionSchema
|
|
84
|
-
#
|
|
85
|
-
# @param json_object [String]
|
|
86
|
-
# @return [Merge::Ticketing::ConditionSchema]
|
|
87
|
-
def self.from_json(json_object:)
|
|
88
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
89
|
-
parsed_json = JSON.parse(json_object)
|
|
90
|
-
id = struct["id"]
|
|
91
|
-
common_model = struct["common_model"]
|
|
92
|
-
native_name = struct["native_name"]
|
|
93
|
-
field_name = struct["field_name"]
|
|
94
|
-
is_unique = struct["is_unique"]
|
|
95
|
-
condition_type = struct["condition_type"]
|
|
96
|
-
operators = parsed_json["operators"]&.map do |v|
|
|
97
|
-
v = v.to_json
|
|
98
|
-
Merge::Ticketing::OperatorSchema.from_json(json_object: v)
|
|
99
|
-
end
|
|
100
|
-
new(
|
|
101
|
-
id: id,
|
|
102
|
-
common_model: common_model,
|
|
103
|
-
native_name: native_name,
|
|
104
|
-
field_name: field_name,
|
|
105
|
-
is_unique: is_unique,
|
|
106
|
-
condition_type: condition_type,
|
|
107
|
-
operators: operators,
|
|
108
|
-
additional_properties: struct
|
|
109
|
-
)
|
|
110
|
-
end
|
|
111
|
-
|
|
112
|
-
# Serialize an instance of ConditionSchema to a JSON object
|
|
113
|
-
#
|
|
114
|
-
# @return [String]
|
|
115
|
-
def to_json(*_args)
|
|
116
|
-
@_field_set&.to_json
|
|
117
|
-
end
|
|
118
|
-
|
|
119
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
120
|
-
# hash and check each fields type against the current object's property
|
|
121
|
-
# definitions.
|
|
122
|
-
#
|
|
123
|
-
# @param obj [Object]
|
|
124
|
-
# @return [Void]
|
|
125
|
-
def self.validate_raw(obj:)
|
|
126
|
-
obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
|
127
|
-
obj.common_model&.is_a?(String) != false || raise("Passed value for field obj.common_model is not the expected type, validation failed.")
|
|
128
|
-
obj.native_name&.is_a?(String) != false || raise("Passed value for field obj.native_name is not the expected type, validation failed.")
|
|
129
|
-
obj.field_name&.is_a?(String) != false || raise("Passed value for field obj.field_name is not the expected type, validation failed.")
|
|
130
|
-
obj.is_unique&.is_a?(Boolean) != false || raise("Passed value for field obj.is_unique is not the expected type, validation failed.")
|
|
131
|
-
obj.condition_type.is_a?(Merge::Ticketing::ConditionTypeEnum) != false || raise("Passed value for field obj.condition_type is not the expected type, validation failed.")
|
|
132
|
-
obj.operators.is_a?(Array) != false || raise("Passed value for field obj.operators is not the expected type, validation failed.")
|
|
133
|
-
end
|
|
134
|
-
end
|
|
135
|
-
end
|
|
136
|
-
end
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Merge
|
|
4
|
-
module Ticketing
|
|
5
|
-
# - `BOOLEAN` - BOOLEAN
|
|
6
|
-
# - `DATE` - DATE
|
|
7
|
-
# - `DATE_TIME` - DATE_TIME
|
|
8
|
-
# - `INTEGER` - INTEGER
|
|
9
|
-
# - `FLOAT` - FLOAT
|
|
10
|
-
# - `STRING` - STRING
|
|
11
|
-
# - `LIST_OF_STRINGS` - LIST_OF_STRINGS
|
|
12
|
-
class ConditionTypeEnum
|
|
13
|
-
BOOLEAN = "BOOLEAN"
|
|
14
|
-
DATE = "DATE"
|
|
15
|
-
DATE_TIME = "DATE_TIME"
|
|
16
|
-
INTEGER = "INTEGER"
|
|
17
|
-
FLOAT = "FLOAT"
|
|
18
|
-
STRING = "STRING"
|
|
19
|
-
LIST_OF_STRINGS = "LIST_OF_STRINGS"
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "ostruct"
|
|
4
|
-
require "json"
|
|
5
|
-
|
|
6
|
-
module Merge
|
|
7
|
-
module Ticketing
|
|
8
|
-
class LinkedAccountCondition
|
|
9
|
-
# @return [String] The ID indicating which condition schema to use for a specific condition.
|
|
10
|
-
attr_reader :condition_schema_id
|
|
11
|
-
# @return [String] The common model for a specific condition.
|
|
12
|
-
attr_reader :common_model
|
|
13
|
-
# @return [String]
|
|
14
|
-
attr_reader :native_name
|
|
15
|
-
# @return [String] The operator for a specific condition.
|
|
16
|
-
attr_reader :operator
|
|
17
|
-
# @return [Object]
|
|
18
|
-
attr_reader :value
|
|
19
|
-
# @return [String]
|
|
20
|
-
attr_reader :field_name
|
|
21
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
22
|
-
attr_reader :additional_properties
|
|
23
|
-
# @return [Object]
|
|
24
|
-
attr_reader :_field_set
|
|
25
|
-
protected :_field_set
|
|
26
|
-
|
|
27
|
-
OMIT = Object.new
|
|
28
|
-
|
|
29
|
-
# @param condition_schema_id [String] The ID indicating which condition schema to use for a specific condition.
|
|
30
|
-
# @param common_model [String] The common model for a specific condition.
|
|
31
|
-
# @param native_name [String]
|
|
32
|
-
# @param operator [String] The operator for a specific condition.
|
|
33
|
-
# @param value [Object]
|
|
34
|
-
# @param field_name [String]
|
|
35
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
36
|
-
# @return [Merge::Ticketing::LinkedAccountCondition]
|
|
37
|
-
def initialize(condition_schema_id:, operator:, common_model: OMIT, native_name: OMIT, value: OMIT,
|
|
38
|
-
field_name: OMIT, additional_properties: nil)
|
|
39
|
-
@condition_schema_id = condition_schema_id
|
|
40
|
-
@common_model = common_model if common_model != OMIT
|
|
41
|
-
@native_name = native_name if native_name != OMIT
|
|
42
|
-
@operator = operator
|
|
43
|
-
@value = value if value != OMIT
|
|
44
|
-
@field_name = field_name if field_name != OMIT
|
|
45
|
-
@additional_properties = additional_properties
|
|
46
|
-
@_field_set = {
|
|
47
|
-
"condition_schema_id": condition_schema_id,
|
|
48
|
-
"common_model": common_model,
|
|
49
|
-
"native_name": native_name,
|
|
50
|
-
"operator": operator,
|
|
51
|
-
"value": value,
|
|
52
|
-
"field_name": field_name
|
|
53
|
-
}.reject do |_k, v|
|
|
54
|
-
v == OMIT
|
|
55
|
-
end
|
|
56
|
-
end
|
|
57
|
-
|
|
58
|
-
# Deserialize a JSON object to an instance of LinkedAccountCondition
|
|
59
|
-
#
|
|
60
|
-
# @param json_object [String]
|
|
61
|
-
# @return [Merge::Ticketing::LinkedAccountCondition]
|
|
62
|
-
def self.from_json(json_object:)
|
|
63
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
64
|
-
condition_schema_id = struct["condition_schema_id"]
|
|
65
|
-
common_model = struct["common_model"]
|
|
66
|
-
native_name = struct["native_name"]
|
|
67
|
-
operator = struct["operator"]
|
|
68
|
-
value = struct["value"]
|
|
69
|
-
field_name = struct["field_name"]
|
|
70
|
-
new(
|
|
71
|
-
condition_schema_id: condition_schema_id,
|
|
72
|
-
common_model: common_model,
|
|
73
|
-
native_name: native_name,
|
|
74
|
-
operator: operator,
|
|
75
|
-
value: value,
|
|
76
|
-
field_name: field_name,
|
|
77
|
-
additional_properties: struct
|
|
78
|
-
)
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
# Serialize an instance of LinkedAccountCondition to a JSON object
|
|
82
|
-
#
|
|
83
|
-
# @return [String]
|
|
84
|
-
def to_json(*_args)
|
|
85
|
-
@_field_set&.to_json
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
89
|
-
# hash and check each fields type against the current object's property
|
|
90
|
-
# definitions.
|
|
91
|
-
#
|
|
92
|
-
# @param obj [Object]
|
|
93
|
-
# @return [Void]
|
|
94
|
-
def self.validate_raw(obj:)
|
|
95
|
-
obj.condition_schema_id.is_a?(String) != false || raise("Passed value for field obj.condition_schema_id is not the expected type, validation failed.")
|
|
96
|
-
obj.common_model&.is_a?(String) != false || raise("Passed value for field obj.common_model is not the expected type, validation failed.")
|
|
97
|
-
obj.native_name&.is_a?(String) != false || raise("Passed value for field obj.native_name is not the expected type, validation failed.")
|
|
98
|
-
obj.operator.is_a?(String) != false || raise("Passed value for field obj.operator is not the expected type, validation failed.")
|
|
99
|
-
obj.value&.is_a?(Object) != false || raise("Passed value for field obj.value is not the expected type, validation failed.")
|
|
100
|
-
obj.field_name&.is_a?(String) != false || raise("Passed value for field obj.field_name is not the expected type, validation failed.")
|
|
101
|
-
end
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
end
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "ostruct"
|
|
4
|
-
require "json"
|
|
5
|
-
|
|
6
|
-
module Merge
|
|
7
|
-
module Ticketing
|
|
8
|
-
class LinkedAccountConditionRequest
|
|
9
|
-
# @return [String] The ID indicating which Linked Account Condition this is.
|
|
10
|
-
attr_reader :id
|
|
11
|
-
# @return [String] The ID indicating which condition schema to use for a specific condition.
|
|
12
|
-
attr_reader :condition_schema_id
|
|
13
|
-
# @return [String] The operator for a specific condition.
|
|
14
|
-
attr_reader :operator
|
|
15
|
-
# @return [Object]
|
|
16
|
-
attr_reader :value
|
|
17
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
18
|
-
attr_reader :additional_properties
|
|
19
|
-
# @return [Object]
|
|
20
|
-
attr_reader :_field_set
|
|
21
|
-
protected :_field_set
|
|
22
|
-
|
|
23
|
-
OMIT = Object.new
|
|
24
|
-
|
|
25
|
-
# @param id [String] The ID indicating which Linked Account Condition this is.
|
|
26
|
-
# @param condition_schema_id [String] The ID indicating which condition schema to use for a specific condition.
|
|
27
|
-
# @param operator [String] The operator for a specific condition.
|
|
28
|
-
# @param value [Object]
|
|
29
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
30
|
-
# @return [Merge::Ticketing::LinkedAccountConditionRequest]
|
|
31
|
-
def initialize(condition_schema_id:, operator:, value:, id: OMIT, additional_properties: nil)
|
|
32
|
-
@id = id if id != OMIT
|
|
33
|
-
@condition_schema_id = condition_schema_id
|
|
34
|
-
@operator = operator
|
|
35
|
-
@value = value
|
|
36
|
-
@additional_properties = additional_properties
|
|
37
|
-
@_field_set = {
|
|
38
|
-
"id": id,
|
|
39
|
-
"condition_schema_id": condition_schema_id,
|
|
40
|
-
"operator": operator,
|
|
41
|
-
"value": value
|
|
42
|
-
}.reject do |_k, v|
|
|
43
|
-
v == OMIT
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
# Deserialize a JSON object to an instance of LinkedAccountConditionRequest
|
|
48
|
-
#
|
|
49
|
-
# @param json_object [String]
|
|
50
|
-
# @return [Merge::Ticketing::LinkedAccountConditionRequest]
|
|
51
|
-
def self.from_json(json_object:)
|
|
52
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
53
|
-
id = struct["id"]
|
|
54
|
-
condition_schema_id = struct["condition_schema_id"]
|
|
55
|
-
operator = struct["operator"]
|
|
56
|
-
value = struct["value"]
|
|
57
|
-
new(
|
|
58
|
-
id: id,
|
|
59
|
-
condition_schema_id: condition_schema_id,
|
|
60
|
-
operator: operator,
|
|
61
|
-
value: value,
|
|
62
|
-
additional_properties: struct
|
|
63
|
-
)
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
# Serialize an instance of LinkedAccountConditionRequest to a JSON object
|
|
67
|
-
#
|
|
68
|
-
# @return [String]
|
|
69
|
-
def to_json(*_args)
|
|
70
|
-
@_field_set&.to_json
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
74
|
-
# hash and check each fields type against the current object's property
|
|
75
|
-
# definitions.
|
|
76
|
-
#
|
|
77
|
-
# @param obj [Object]
|
|
78
|
-
# @return [Void]
|
|
79
|
-
def self.validate_raw(obj:)
|
|
80
|
-
obj.id&.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
|
81
|
-
obj.condition_schema_id.is_a?(String) != false || raise("Passed value for field obj.condition_schema_id is not the expected type, validation failed.")
|
|
82
|
-
obj.operator.is_a?(String) != false || raise("Passed value for field obj.operator is not the expected type, validation failed.")
|
|
83
|
-
obj.value.is_a?(Object) != false || raise("Passed value for field obj.value is not the expected type, validation failed.")
|
|
84
|
-
end
|
|
85
|
-
end
|
|
86
|
-
end
|
|
87
|
-
end
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "linked_account_condition"
|
|
4
|
-
require "ostruct"
|
|
5
|
-
require "json"
|
|
6
|
-
|
|
7
|
-
module Merge
|
|
8
|
-
module Ticketing
|
|
9
|
-
class LinkedAccountSelectiveSyncConfiguration
|
|
10
|
-
# @return [Array<Merge::Ticketing::LinkedAccountCondition>] The conditions belonging to a selective sync.
|
|
11
|
-
attr_reader :linked_account_conditions
|
|
12
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
13
|
-
attr_reader :additional_properties
|
|
14
|
-
# @return [Object]
|
|
15
|
-
attr_reader :_field_set
|
|
16
|
-
protected :_field_set
|
|
17
|
-
|
|
18
|
-
OMIT = Object.new
|
|
19
|
-
|
|
20
|
-
# @param linked_account_conditions [Array<Merge::Ticketing::LinkedAccountCondition>] The conditions belonging to a selective sync.
|
|
21
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
22
|
-
# @return [Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration]
|
|
23
|
-
def initialize(linked_account_conditions: OMIT, additional_properties: nil)
|
|
24
|
-
@linked_account_conditions = linked_account_conditions if linked_account_conditions != OMIT
|
|
25
|
-
@additional_properties = additional_properties
|
|
26
|
-
@_field_set = { "linked_account_conditions": linked_account_conditions }.reject do |_k, v|
|
|
27
|
-
v == OMIT
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
# Deserialize a JSON object to an instance of
|
|
32
|
-
# LinkedAccountSelectiveSyncConfiguration
|
|
33
|
-
#
|
|
34
|
-
# @param json_object [String]
|
|
35
|
-
# @return [Merge::Ticketing::LinkedAccountSelectiveSyncConfiguration]
|
|
36
|
-
def self.from_json(json_object:)
|
|
37
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
38
|
-
parsed_json = JSON.parse(json_object)
|
|
39
|
-
linked_account_conditions = parsed_json["linked_account_conditions"]&.map do |v|
|
|
40
|
-
v = v.to_json
|
|
41
|
-
Merge::Ticketing::LinkedAccountCondition.from_json(json_object: v)
|
|
42
|
-
end
|
|
43
|
-
new(linked_account_conditions: linked_account_conditions, additional_properties: struct)
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
# Serialize an instance of LinkedAccountSelectiveSyncConfiguration to a JSON
|
|
47
|
-
# object
|
|
48
|
-
#
|
|
49
|
-
# @return [String]
|
|
50
|
-
def to_json(*_args)
|
|
51
|
-
@_field_set&.to_json
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
55
|
-
# hash and check each fields type against the current object's property
|
|
56
|
-
# definitions.
|
|
57
|
-
#
|
|
58
|
-
# @param obj [Object]
|
|
59
|
-
# @return [Void]
|
|
60
|
-
def self.validate_raw(obj:)
|
|
61
|
-
obj.linked_account_conditions&.is_a?(Array) != false || raise("Passed value for field obj.linked_account_conditions is not the expected type, validation failed.")
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
end
|
|
65
|
-
end
|