Class: Merge::Ticketing::ProjectsClient
- Inherits:
-
Object
- Object
- Merge::Ticketing::ProjectsClient
- Defined in:
- lib/merge_ruby_client/ticketing/projects/client.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #initialize(request_client:) ⇒ Merge::Ticketing::ProjectsClient constructor
-
#list(created_after: nil, created_before: nil, cursor: nil, include_deleted_data: nil, include_remote_data: nil, modified_after: nil, modified_before: nil, page_size: nil, remote_id: nil, request_options: nil) ⇒ Merge::Ticketing::PaginatedProjectList
Returns a list of ‘Project` objects.
-
#retrieve(id:, include_remote_data: nil, request_options: nil) ⇒ Merge::Ticketing::Project
Returns a ‘Project` object with the given `id`.
-
#users_list(parent_id:, cursor: nil, expand: nil, include_deleted_data: nil, include_remote_data: nil, page_size: nil, request_options: nil) ⇒ Merge::Ticketing::PaginatedUserList
Returns a list of ‘User` objects.
Constructor Details
#initialize(request_client:) ⇒ Merge::Ticketing::ProjectsClient
19 20 21 |
# File 'lib/merge_ruby_client/ticketing/projects/client.rb', line 19 def initialize(request_client:) @request_client = request_client end |
Instance Attribute Details
#request_client ⇒ Merge::RequestClient (readonly)
15 16 17 |
# File 'lib/merge_ruby_client/ticketing/projects/client.rb', line 15 def request_client @request_client end |
Instance Method Details
#list(created_after: nil, created_before: nil, cursor: nil, include_deleted_data: nil, include_remote_data: nil, modified_after: nil, modified_before: nil, page_size: nil, remote_id: nil, request_options: nil) ⇒ Merge::Ticketing::PaginatedProjectList
Returns a list of ‘Project` objects.
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/merge_ruby_client/ticketing/projects/client.rb', line 45 def list(created_after: nil, created_before: nil, cursor: nil, include_deleted_data: nil, include_remote_data: nil, modified_after: nil, modified_before: nil, page_size: nil, remote_id: nil, request_options: nil) 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 || {}), "created_after": created_after, "created_before": created_before, "cursor": cursor, "include_deleted_data": include_deleted_data, "include_remote_data": include_remote_data, "modified_after": modified_after, "modified_before": modified_before, "page_size": page_size, "remote_id": remote_id }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/ticketing/v1/projects" end Merge::Ticketing::PaginatedProjectList.from_json(json_object: response.body) end |
#retrieve(id:, include_remote_data: nil, request_options: nil) ⇒ Merge::Ticketing::Project
Returns a ‘Project` object with the given `id`.
90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/merge_ruby_client/ticketing/projects/client.rb', line 90 def retrieve(id:, include_remote_data: nil, request_options: nil) 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 || {}), "include_remote_data": include_remote_data }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/ticketing/v1/projects/#{id}" end Merge::Ticketing::Project.from_json(json_object: response.body) end |
#users_list(parent_id:, cursor: nil, expand: nil, include_deleted_data: nil, include_remote_data: nil, page_size: nil, request_options: nil) ⇒ Merge::Ticketing::PaginatedUserList
Returns a list of ‘User` objects.
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 |
# File 'lib/merge_ruby_client/ticketing/projects/client.rb', line 131 def users_list(parent_id:, cursor: nil, expand: nil, include_deleted_data: nil, include_remote_data: nil, page_size: nil, request_options: nil) 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, "expand": , "include_deleted_data": include_deleted_data, "include_remote_data": include_remote_data, "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: )}/ticketing/v1/projects/#{parent_id}/users" end Merge::Ticketing::PaginatedUserList.from_json(json_object: response.body) end |