merge_ticketing_client 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (281) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE.md +16 -0
  4. data/README.md +208 -0
  5. data/Rakefile +10 -0
  6. data/docs/Account.md +28 -0
  7. data/docs/AccountDetails.md +36 -0
  8. data/docs/AccountDetailsAndActions.md +36 -0
  9. data/docs/AccountDetailsAndActionsIntegration.md +32 -0
  10. data/docs/AccountDetailsAndActionsStatusEnum.md +15 -0
  11. data/docs/AccountDetailsApi.md +79 -0
  12. data/docs/AccountIntegration.md +28 -0
  13. data/docs/AccountToken.md +20 -0
  14. data/docs/AccountTokenApi.md +79 -0
  15. data/docs/AccountsApi.md +177 -0
  16. data/docs/Attachment.md +36 -0
  17. data/docs/AttachmentRequest.md +30 -0
  18. data/docs/AttachmentsApi.md +335 -0
  19. data/docs/AvailableActions.md +22 -0
  20. data/docs/AvailableActionsApi.md +79 -0
  21. data/docs/CategoriesEnum.md +15 -0
  22. data/docs/CategoryEnum.md +15 -0
  23. data/docs/Comment.md +38 -0
  24. data/docs/CommentEndpointRequest.md +18 -0
  25. data/docs/CommentRequest.md +32 -0
  26. data/docs/CommentResponse.md +24 -0
  27. data/docs/CommentsApi.md +335 -0
  28. data/docs/Contact.md +34 -0
  29. data/docs/ContactsApi.md +181 -0
  30. data/docs/DataPassthroughRequest.md +32 -0
  31. data/docs/DebugModeLog.md +22 -0
  32. data/docs/DebugModelLogSummary.md +22 -0
  33. data/docs/DeleteAccountApi.md +78 -0
  34. data/docs/EncodingEnum.md +15 -0
  35. data/docs/EndUserDetailsRequest.md +30 -0
  36. data/docs/ErrorValidationProblem.md +24 -0
  37. data/docs/ForceResyncApi.md +79 -0
  38. data/docs/GenerateKeyApi.md +79 -0
  39. data/docs/GenerateRemoteKeyRequest.md +18 -0
  40. data/docs/Issue.md +30 -0
  41. data/docs/IssueStatusEnum.md +15 -0
  42. data/docs/IssuesApi.md +177 -0
  43. data/docs/LinkToken.md +22 -0
  44. data/docs/LinkTokenApi.md +79 -0
  45. data/docs/LinkedAccountStatus.md +20 -0
  46. data/docs/LinkedAccountsApi.md +105 -0
  47. data/docs/MetaResponse.md +24 -0
  48. data/docs/MethodEnum.md +15 -0
  49. data/docs/ModelOperation.md +24 -0
  50. data/docs/MultipartFormFieldRequest.md +26 -0
  51. data/docs/PaginatedAccountDetailsAndActionsList.md +22 -0
  52. data/docs/PaginatedAccountList.md +22 -0
  53. data/docs/PaginatedAttachmentList.md +22 -0
  54. data/docs/PaginatedCommentList.md +22 -0
  55. data/docs/PaginatedContactList.md +22 -0
  56. data/docs/PaginatedIssueList.md +22 -0
  57. data/docs/PaginatedProjectList.md +22 -0
  58. data/docs/PaginatedSyncStatusList.md +22 -0
  59. data/docs/PaginatedTagList.md +22 -0
  60. data/docs/PaginatedTeamList.md +22 -0
  61. data/docs/PaginatedTicketList.md +22 -0
  62. data/docs/PaginatedUserList.md +22 -0
  63. data/docs/PassthroughApi.md +81 -0
  64. data/docs/Project.md +28 -0
  65. data/docs/ProjectsApi.md +261 -0
  66. data/docs/RegenerateKeyApi.md +79 -0
  67. data/docs/RemoteData.md +20 -0
  68. data/docs/RemoteKey.md +20 -0
  69. data/docs/RemoteKeyForRegenerationRequest.md +18 -0
  70. data/docs/RemoteResponse.md +28 -0
  71. data/docs/RequestFormatEnum.md +15 -0
  72. data/docs/SyncStatus.md +28 -0
  73. data/docs/SyncStatusApi.md +85 -0
  74. data/docs/SyncStatusStatusEnum.md +15 -0
  75. data/docs/Tag.md +24 -0
  76. data/docs/TagsApi.md +177 -0
  77. data/docs/Team.md +28 -0
  78. data/docs/TeamsApi.md +177 -0
  79. data/docs/Ticket.md +52 -0
  80. data/docs/TicketEndpointRequest.md +18 -0
  81. data/docs/TicketRequest.md +46 -0
  82. data/docs/TicketResponse.md +24 -0
  83. data/docs/TicketStatusEnum.md +15 -0
  84. data/docs/TicketingAttachmentEndpointRequest.md +18 -0
  85. data/docs/TicketingAttachmentResponse.md +24 -0
  86. data/docs/TicketsApi.md +425 -0
  87. data/docs/User.md +32 -0
  88. data/docs/UsersApi.md +181 -0
  89. data/docs/ValidationProblemSource.md +18 -0
  90. data/docs/WarningValidationProblem.md +24 -0
  91. data/docs/WebhookReceiver.md +22 -0
  92. data/docs/WebhookReceiverRequest.md +22 -0
  93. data/docs/WebhookReceiversApi.md +153 -0
  94. data/git_push.sh +58 -0
  95. data/lib/merge_ticketing_client/api/account_details_api.rb +84 -0
  96. data/lib/merge_ticketing_client/api/account_token_api.rb +83 -0
  97. data/lib/merge_ticketing_client/api/accounts_api.rb +182 -0
  98. data/lib/merge_ticketing_client/api/attachments_api.rb +337 -0
  99. data/lib/merge_ticketing_client/api/available_actions_api.rb +84 -0
  100. data/lib/merge_ticketing_client/api/comments_api.rb +337 -0
  101. data/lib/merge_ticketing_client/api/contacts_api.rb +196 -0
  102. data/lib/merge_ticketing_client/api/delete_account_api.rb +82 -0
  103. data/lib/merge_ticketing_client/api/force_resync_api.rb +84 -0
  104. data/lib/merge_ticketing_client/api/generate_key_api.rb +85 -0
  105. data/lib/merge_ticketing_client/api/issues_api.rb +181 -0
  106. data/lib/merge_ticketing_client/api/link_token_api.rb +85 -0
  107. data/lib/merge_ticketing_client/api/linked_accounts_api.rb +120 -0
  108. data/lib/merge_ticketing_client/api/passthrough_api.rb +92 -0
  109. data/lib/merge_ticketing_client/api/projects_api.rb +266 -0
  110. data/lib/merge_ticketing_client/api/regenerate_key_api.rb +85 -0
  111. data/lib/merge_ticketing_client/api/sync_status_api.rb +90 -0
  112. data/lib/merge_ticketing_client/api/tags_api.rb +182 -0
  113. data/lib/merge_ticketing_client/api/teams_api.rb +182 -0
  114. data/lib/merge_ticketing_client/api/tickets_api.rb +438 -0
  115. data/lib/merge_ticketing_client/api/users_api.rb +196 -0
  116. data/lib/merge_ticketing_client/api/webhook_receivers_api.rb +154 -0
  117. data/lib/merge_ticketing_client/api_client.rb +390 -0
  118. data/lib/merge_ticketing_client/api_error.rb +57 -0
  119. data/lib/merge_ticketing_client/configuration.rb +281 -0
  120. data/lib/merge_ticketing_client/models/account.rb +276 -0
  121. data/lib/merge_ticketing_client/models/account_details.rb +302 -0
  122. data/lib/merge_ticketing_client/models/account_details_and_actions.rb +327 -0
  123. data/lib/merge_ticketing_client/models/account_details_and_actions_integration.rb +310 -0
  124. data/lib/merge_ticketing_client/models/account_details_and_actions_status_enum.rb +46 -0
  125. data/lib/merge_ticketing_client/models/account_integration.rb +303 -0
  126. data/lib/merge_ticketing_client/models/account_token.rb +237 -0
  127. data/lib/merge_ticketing_client/models/attachment.rb +315 -0
  128. data/lib/merge_ticketing_client/models/attachment_request.rb +285 -0
  129. data/lib/merge_ticketing_client/models/available_actions.rb +249 -0
  130. data/lib/merge_ticketing_client/models/categories_enum.rb +48 -0
  131. data/lib/merge_ticketing_client/models/category_enum.rb +48 -0
  132. data/lib/merge_ticketing_client/models/comment.rb +325 -0
  133. data/lib/merge_ticketing_client/models/comment_endpoint_request.rb +223 -0
  134. data/lib/merge_ticketing_client/models/comment_request.rb +295 -0
  135. data/lib/merge_ticketing_client/models/comment_response.rb +266 -0
  136. data/lib/merge_ticketing_client/models/contact.rb +307 -0
  137. data/lib/merge_ticketing_client/models/data_passthrough_request.rb +352 -0
  138. data/lib/merge_ticketing_client/models/debug_mode_log.rb +251 -0
  139. data/lib/merge_ticketing_client/models/debug_model_log_summary.rb +251 -0
  140. data/lib/merge_ticketing_client/models/encoding_enum.rb +46 -0
  141. data/lib/merge_ticketing_client/models/end_user_details_request.rb +430 -0
  142. data/lib/merge_ticketing_client/models/error_validation_problem.rb +260 -0
  143. data/lib/merge_ticketing_client/models/generate_remote_key_request.rb +243 -0
  144. data/lib/merge_ticketing_client/models/issue.rb +281 -0
  145. data/lib/merge_ticketing_client/models/issue_status_enum.rb +45 -0
  146. data/lib/merge_ticketing_client/models/link_token.rb +246 -0
  147. data/lib/merge_ticketing_client/models/linked_account_status.rb +237 -0
  148. data/lib/merge_ticketing_client/models/meta_response.rb +262 -0
  149. data/lib/merge_ticketing_client/models/method_enum.rb +50 -0
  150. data/lib/merge_ticketing_client/models/model_operation.rb +272 -0
  151. data/lib/merge_ticketing_client/models/multipart_form_field_request.rb +341 -0
  152. data/lib/merge_ticketing_client/models/paginated_account_details_and_actions_list.rb +240 -0
  153. data/lib/merge_ticketing_client/models/paginated_account_list.rb +240 -0
  154. data/lib/merge_ticketing_client/models/paginated_attachment_list.rb +240 -0
  155. data/lib/merge_ticketing_client/models/paginated_comment_list.rb +240 -0
  156. data/lib/merge_ticketing_client/models/paginated_contact_list.rb +240 -0
  157. data/lib/merge_ticketing_client/models/paginated_issue_list.rb +240 -0
  158. data/lib/merge_ticketing_client/models/paginated_project_list.rb +240 -0
  159. data/lib/merge_ticketing_client/models/paginated_sync_status_list.rb +240 -0
  160. data/lib/merge_ticketing_client/models/paginated_tag_list.rb +240 -0
  161. data/lib/merge_ticketing_client/models/paginated_team_list.rb +240 -0
  162. data/lib/merge_ticketing_client/models/paginated_ticket_list.rb +240 -0
  163. data/lib/merge_ticketing_client/models/paginated_user_list.rb +240 -0
  164. data/lib/merge_ticketing_client/models/project.rb +274 -0
  165. data/lib/merge_ticketing_client/models/remote_data.rb +234 -0
  166. data/lib/merge_ticketing_client/models/remote_key.rb +238 -0
  167. data/lib/merge_ticketing_client/models/remote_key_for_regeneration_request.rb +243 -0
  168. data/lib/merge_ticketing_client/models/remote_response.rb +290 -0
  169. data/lib/merge_ticketing_client/models/request_format_enum.rb +46 -0
  170. data/lib/merge_ticketing_client/models/sync_status.rb +294 -0
  171. data/lib/merge_ticketing_client/models/sync_status_status_enum.rb +48 -0
  172. data/lib/merge_ticketing_client/models/tag.rb +254 -0
  173. data/lib/merge_ticketing_client/models/team.rb +274 -0
  174. data/lib/merge_ticketing_client/models/ticket.rb +401 -0
  175. data/lib/merge_ticketing_client/models/ticket_endpoint_request.rb +223 -0
  176. data/lib/merge_ticketing_client/models/ticket_request.rb +371 -0
  177. data/lib/merge_ticketing_client/models/ticket_response.rb +266 -0
  178. data/lib/merge_ticketing_client/models/ticket_status_enum.rb +45 -0
  179. data/lib/merge_ticketing_client/models/ticketing_attachment_endpoint_request.rb +223 -0
  180. data/lib/merge_ticketing_client/models/ticketing_attachment_response.rb +266 -0
  181. data/lib/merge_ticketing_client/models/user.rb +296 -0
  182. data/lib/merge_ticketing_client/models/validation_problem_source.rb +223 -0
  183. data/lib/merge_ticketing_client/models/warning_validation_problem.rb +260 -0
  184. data/lib/merge_ticketing_client/models/webhook_receiver.rb +246 -0
  185. data/lib/merge_ticketing_client/models/webhook_receiver_request.rb +280 -0
  186. data/lib/merge_ticketing_client/version.rb +15 -0
  187. data/lib/merge_ticketing_client.rb +127 -0
  188. data/merge_ticketing_client.gemspec +38 -0
  189. data/pull_request_template.md +20 -0
  190. data/spec/api/account_details_api_spec.rb +46 -0
  191. data/spec/api/account_token_api_spec.rb +46 -0
  192. data/spec/api/accounts_api_spec.rb +68 -0
  193. data/spec/api/attachments_api_spec.rb +96 -0
  194. data/spec/api/available_actions_api_spec.rb +46 -0
  195. data/spec/api/comments_api_spec.rb +96 -0
  196. data/spec/api/contacts_api_spec.rb +70 -0
  197. data/spec/api/delete_account_api_spec.rb +46 -0
  198. data/spec/api/force_resync_api_spec.rb +46 -0
  199. data/spec/api/generate_key_api_spec.rb +46 -0
  200. data/spec/api/issues_api_spec.rb +69 -0
  201. data/spec/api/link_token_api_spec.rb +46 -0
  202. data/spec/api/linked_accounts_api_spec.rb +58 -0
  203. data/spec/api/passthrough_api_spec.rb +47 -0
  204. data/spec/api/projects_api_spec.rb +84 -0
  205. data/spec/api/regenerate_key_api_spec.rb +46 -0
  206. data/spec/api/sync_status_api_spec.rb +48 -0
  207. data/spec/api/tags_api_spec.rb +68 -0
  208. data/spec/api/teams_api_spec.rb +68 -0
  209. data/spec/api/tickets_api_spec.rb +115 -0
  210. data/spec/api/users_api_spec.rb +70 -0
  211. data/spec/api/webhook_receivers_api_spec.rb +58 -0
  212. data/spec/api_client_spec.rb +226 -0
  213. data/spec/configuration_spec.rb +42 -0
  214. data/spec/models/account_details_and_actions_integration_spec.rb +76 -0
  215. data/spec/models/account_details_and_actions_spec.rb +88 -0
  216. data/spec/models/account_details_and_actions_status_enum_spec.rb +28 -0
  217. data/spec/models/account_details_spec.rb +88 -0
  218. data/spec/models/account_integration_spec.rb +64 -0
  219. data/spec/models/account_spec.rb +64 -0
  220. data/spec/models/account_token_spec.rb +40 -0
  221. data/spec/models/attachment_request_spec.rb +70 -0
  222. data/spec/models/attachment_spec.rb +88 -0
  223. data/spec/models/available_actions_spec.rb +46 -0
  224. data/spec/models/categories_enum_spec.rb +28 -0
  225. data/spec/models/category_enum_spec.rb +28 -0
  226. data/spec/models/comment_endpoint_request_spec.rb +34 -0
  227. data/spec/models/comment_request_spec.rb +76 -0
  228. data/spec/models/comment_response_spec.rb +52 -0
  229. data/spec/models/comment_spec.rb +94 -0
  230. data/spec/models/contact_spec.rb +82 -0
  231. data/spec/models/data_passthrough_request_spec.rb +76 -0
  232. data/spec/models/debug_mode_log_spec.rb +46 -0
  233. data/spec/models/debug_model_log_summary_spec.rb +46 -0
  234. data/spec/models/encoding_enum_spec.rb +28 -0
  235. data/spec/models/end_user_details_request_spec.rb +70 -0
  236. data/spec/models/error_validation_problem_spec.rb +52 -0
  237. data/spec/models/generate_remote_key_request_spec.rb +34 -0
  238. data/spec/models/issue_spec.rb +70 -0
  239. data/spec/models/issue_status_enum_spec.rb +28 -0
  240. data/spec/models/link_token_spec.rb +46 -0
  241. data/spec/models/linked_account_status_spec.rb +40 -0
  242. data/spec/models/meta_response_spec.rb +52 -0
  243. data/spec/models/method_enum_spec.rb +28 -0
  244. data/spec/models/model_operation_spec.rb +52 -0
  245. data/spec/models/multipart_form_field_request_spec.rb +58 -0
  246. data/spec/models/paginated_account_details_and_actions_list_spec.rb +46 -0
  247. data/spec/models/paginated_account_list_spec.rb +46 -0
  248. data/spec/models/paginated_attachment_list_spec.rb +46 -0
  249. data/spec/models/paginated_comment_list_spec.rb +46 -0
  250. data/spec/models/paginated_contact_list_spec.rb +46 -0
  251. data/spec/models/paginated_issue_list_spec.rb +46 -0
  252. data/spec/models/paginated_project_list_spec.rb +46 -0
  253. data/spec/models/paginated_sync_status_list_spec.rb +46 -0
  254. data/spec/models/paginated_tag_list_spec.rb +46 -0
  255. data/spec/models/paginated_team_list_spec.rb +46 -0
  256. data/spec/models/paginated_ticket_list_spec.rb +46 -0
  257. data/spec/models/paginated_user_list_spec.rb +46 -0
  258. data/spec/models/project_spec.rb +64 -0
  259. data/spec/models/remote_data_spec.rb +40 -0
  260. data/spec/models/remote_key_for_regeneration_request_spec.rb +34 -0
  261. data/spec/models/remote_key_spec.rb +40 -0
  262. data/spec/models/remote_response_spec.rb +64 -0
  263. data/spec/models/request_format_enum_spec.rb +28 -0
  264. data/spec/models/sync_status_spec.rb +64 -0
  265. data/spec/models/sync_status_status_enum_spec.rb +28 -0
  266. data/spec/models/tag_spec.rb +52 -0
  267. data/spec/models/team_spec.rb +64 -0
  268. data/spec/models/ticket_endpoint_request_spec.rb +34 -0
  269. data/spec/models/ticket_request_spec.rb +118 -0
  270. data/spec/models/ticket_response_spec.rb +52 -0
  271. data/spec/models/ticket_spec.rb +136 -0
  272. data/spec/models/ticket_status_enum_spec.rb +28 -0
  273. data/spec/models/ticketing_attachment_endpoint_request_spec.rb +34 -0
  274. data/spec/models/ticketing_attachment_response_spec.rb +52 -0
  275. data/spec/models/user_spec.rb +76 -0
  276. data/spec/models/validation_problem_source_spec.rb +34 -0
  277. data/spec/models/warning_validation_problem_spec.rb +52 -0
  278. data/spec/models/webhook_receiver_request_spec.rb +46 -0
  279. data/spec/models/webhook_receiver_spec.rb +46 -0
  280. data/spec/spec_helper.rb +111 -0
  281. metadata +454 -0
@@ -0,0 +1,182 @@
1
+ =begin
2
+ #Merge Ticketing API
3
+
4
+ #The unified API for building rich integrations with multiple Ticketing platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeTicketingClient
16
+ class TeamsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a list of `Team` objects.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
26
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
27
+ # @option opts [String] :cursor The pagination cursor value.
28
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was marked as deleted by third party webhooks.
29
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
30
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
31
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
32
+ # @option opts [Integer] :page_size Number of results to return per page.
33
+ # @option opts [String] :remote_id The API provider's ID for the given object.
34
+ # @return [PaginatedTeamList]
35
+ def teams_list(x_account_token, opts = {})
36
+ data, _status_code, _headers = teams_list_with_http_info(x_account_token, opts)
37
+ data
38
+ end
39
+
40
+ # Returns a list of `Team` objects.
41
+ # @param x_account_token [String] Token identifying the end user.
42
+ # @param [Hash] opts the optional parameters
43
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
44
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
45
+ # @option opts [String] :cursor The pagination cursor value.
46
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was marked as deleted by third party webhooks.
47
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
48
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
49
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
50
+ # @option opts [Integer] :page_size Number of results to return per page.
51
+ # @option opts [String] :remote_id The API provider's ID for the given object.
52
+ # @return [Array<(PaginatedTeamList, Integer, Hash)>] PaginatedTeamList data, response status code and response headers
53
+ def teams_list_with_http_info(x_account_token, opts = {})
54
+ if @api_client.config.debugging
55
+ @api_client.config.logger.debug 'Calling API: TeamsApi.teams_list ...'
56
+ end
57
+ # verify the required parameter 'x_account_token' is set
58
+ if @api_client.config.client_side_validation && x_account_token.nil?
59
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TeamsApi.teams_list"
60
+ end
61
+ # resource path
62
+ local_var_path = '/teams'
63
+
64
+ # query parameters
65
+ query_params = opts[:query_params] || {}
66
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
67
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
68
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
69
+ query_params[:'include_deleted_data'] = opts[:'include_deleted_data'] if !opts[:'include_deleted_data'].nil?
70
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
71
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
72
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
73
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
74
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
75
+
76
+ # header parameters
77
+ header_params = opts[:header_params] || {}
78
+ # HTTP header 'Accept' (if needed)
79
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
80
+ header_params[:'X-Account-Token'] = x_account_token
81
+
82
+ # form parameters
83
+ form_params = opts[:form_params] || {}
84
+
85
+ # http body (model)
86
+ post_body = opts[:debug_body]
87
+
88
+ # return_type
89
+ return_type = opts[:debug_return_type] || 'PaginatedTeamList'
90
+
91
+ # auth_names
92
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
93
+
94
+ new_options = opts.merge(
95
+ :operation => :"TeamsApi.teams_list",
96
+ :header_params => header_params,
97
+ :query_params => query_params,
98
+ :form_params => form_params,
99
+ :body => post_body,
100
+ :auth_names => auth_names,
101
+ :return_type => return_type
102
+ )
103
+
104
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
105
+ if @api_client.config.debugging
106
+ @api_client.config.logger.debug "API called: TeamsApi#teams_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
107
+ end
108
+ return data, status_code, headers
109
+ end
110
+
111
+ # Returns a `Team` object with the given `id`.
112
+ # @param x_account_token [String] Token identifying the end user.
113
+ # @param id [String]
114
+ # @param [Hash] opts the optional parameters
115
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
116
+ # @return [Team]
117
+ def teams_retrieve(x_account_token, id, opts = {})
118
+ data, _status_code, _headers = teams_retrieve_with_http_info(x_account_token, id, opts)
119
+ data
120
+ end
121
+
122
+ # Returns a &#x60;Team&#x60; object with the given &#x60;id&#x60;.
123
+ # @param x_account_token [String] Token identifying the end user.
124
+ # @param id [String]
125
+ # @param [Hash] opts the optional parameters
126
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
127
+ # @return [Array<(Team, Integer, Hash)>] Team data, response status code and response headers
128
+ def teams_retrieve_with_http_info(x_account_token, id, opts = {})
129
+ if @api_client.config.debugging
130
+ @api_client.config.logger.debug 'Calling API: TeamsApi.teams_retrieve ...'
131
+ end
132
+ # verify the required parameter 'x_account_token' is set
133
+ if @api_client.config.client_side_validation && x_account_token.nil?
134
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TeamsApi.teams_retrieve"
135
+ end
136
+ # verify the required parameter 'id' is set
137
+ if @api_client.config.client_side_validation && id.nil?
138
+ fail ArgumentError, "Missing the required parameter 'id' when calling TeamsApi.teams_retrieve"
139
+ end
140
+ # resource path
141
+ local_var_path = '/teams/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
142
+
143
+ # query parameters
144
+ query_params = opts[:query_params] || {}
145
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
146
+
147
+ # header parameters
148
+ header_params = opts[:header_params] || {}
149
+ # HTTP header 'Accept' (if needed)
150
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
151
+ header_params[:'X-Account-Token'] = x_account_token
152
+
153
+ # form parameters
154
+ form_params = opts[:form_params] || {}
155
+
156
+ # http body (model)
157
+ post_body = opts[:debug_body]
158
+
159
+ # return_type
160
+ return_type = opts[:debug_return_type] || 'Team'
161
+
162
+ # auth_names
163
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
164
+
165
+ new_options = opts.merge(
166
+ :operation => :"TeamsApi.teams_retrieve",
167
+ :header_params => header_params,
168
+ :query_params => query_params,
169
+ :form_params => form_params,
170
+ :body => post_body,
171
+ :auth_names => auth_names,
172
+ :return_type => return_type
173
+ )
174
+
175
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
176
+ if @api_client.config.debugging
177
+ @api_client.config.logger.debug "API called: TeamsApi#teams_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
178
+ end
179
+ return data, status_code, headers
180
+ end
181
+ end
182
+ end
@@ -0,0 +1,438 @@
1
+ =begin
2
+ #Merge Ticketing API
3
+
4
+ #The unified API for building rich integrations with multiple Ticketing platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeTicketingClient
16
+ class TicketsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a `User` object with the given `id`.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param id [String]
25
+ # @param [Hash] opts the optional parameters
26
+ # @option opts [String] :cursor The pagination cursor value.
27
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
28
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
29
+ # @option opts [Integer] :page_size Number of results to return per page.
30
+ # @return [PaginatedUserList]
31
+ def tickets_collaborators_list(x_account_token, id, opts = {})
32
+ data, _status_code, _headers = tickets_collaborators_list_with_http_info(x_account_token, id, opts)
33
+ data
34
+ end
35
+
36
+ # Returns a &#x60;User&#x60; object with the given &#x60;id&#x60;.
37
+ # @param x_account_token [String] Token identifying the end user.
38
+ # @param id [String]
39
+ # @param [Hash] opts the optional parameters
40
+ # @option opts [String] :cursor The pagination cursor value.
41
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
42
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
43
+ # @option opts [Integer] :page_size Number of results to return per page.
44
+ # @return [Array<(PaginatedUserList, Integer, Hash)>] PaginatedUserList data, response status code and response headers
45
+ def tickets_collaborators_list_with_http_info(x_account_token, id, opts = {})
46
+ if @api_client.config.debugging
47
+ @api_client.config.logger.debug 'Calling API: TicketsApi.tickets_collaborators_list ...'
48
+ end
49
+ # verify the required parameter 'x_account_token' is set
50
+ if @api_client.config.client_side_validation && x_account_token.nil?
51
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TicketsApi.tickets_collaborators_list"
52
+ end
53
+ # verify the required parameter 'id' is set
54
+ if @api_client.config.client_side_validation && id.nil?
55
+ fail ArgumentError, "Missing the required parameter 'id' when calling TicketsApi.tickets_collaborators_list"
56
+ end
57
+ allowable_values = ["teams"]
58
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
59
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
60
+ end
61
+ # resource path
62
+ local_var_path = '/tickets/{id}/collaborators'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
63
+
64
+ # query parameters
65
+ query_params = opts[:query_params] || {}
66
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
67
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
68
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
69
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
70
+
71
+ # header parameters
72
+ header_params = opts[:header_params] || {}
73
+ # HTTP header 'Accept' (if needed)
74
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
75
+ header_params[:'X-Account-Token'] = x_account_token
76
+
77
+ # form parameters
78
+ form_params = opts[:form_params] || {}
79
+
80
+ # http body (model)
81
+ post_body = opts[:debug_body]
82
+
83
+ # return_type
84
+ return_type = opts[:debug_return_type] || 'PaginatedUserList'
85
+
86
+ # auth_names
87
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
88
+
89
+ new_options = opts.merge(
90
+ :operation => :"TicketsApi.tickets_collaborators_list",
91
+ :header_params => header_params,
92
+ :query_params => query_params,
93
+ :form_params => form_params,
94
+ :body => post_body,
95
+ :auth_names => auth_names,
96
+ :return_type => return_type
97
+ )
98
+
99
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
100
+ if @api_client.config.debugging
101
+ @api_client.config.logger.debug "API called: TicketsApi#tickets_collaborators_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
102
+ end
103
+ return data, status_code, headers
104
+ end
105
+
106
+ # Creates a `Ticket` object with the given values.
107
+ # @param x_account_token [String] Token identifying the end user.
108
+ # @param ticket_endpoint_request [TicketEndpointRequest]
109
+ # @param [Hash] opts the optional parameters
110
+ # @option opts [Boolean] :is_debug_mode Whether to include debug fields (such as log file links) in the response.
111
+ # @option opts [Boolean] :run_async Whether or not third-party updates should be run asynchronously.
112
+ # @return [TicketResponse]
113
+ def tickets_create(x_account_token, ticket_endpoint_request, opts = {})
114
+ data, _status_code, _headers = tickets_create_with_http_info(x_account_token, ticket_endpoint_request, opts)
115
+ data
116
+ end
117
+
118
+ # Creates a &#x60;Ticket&#x60; object with the given values.
119
+ # @param x_account_token [String] Token identifying the end user.
120
+ # @param ticket_endpoint_request [TicketEndpointRequest]
121
+ # @param [Hash] opts the optional parameters
122
+ # @option opts [Boolean] :is_debug_mode Whether to include debug fields (such as log file links) in the response.
123
+ # @option opts [Boolean] :run_async Whether or not third-party updates should be run asynchronously.
124
+ # @return [Array<(TicketResponse, Integer, Hash)>] TicketResponse data, response status code and response headers
125
+ def tickets_create_with_http_info(x_account_token, ticket_endpoint_request, opts = {})
126
+ if @api_client.config.debugging
127
+ @api_client.config.logger.debug 'Calling API: TicketsApi.tickets_create ...'
128
+ end
129
+ # verify the required parameter 'x_account_token' is set
130
+ if @api_client.config.client_side_validation && x_account_token.nil?
131
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TicketsApi.tickets_create"
132
+ end
133
+ # verify the required parameter 'ticket_endpoint_request' is set
134
+ if @api_client.config.client_side_validation && ticket_endpoint_request.nil?
135
+ fail ArgumentError, "Missing the required parameter 'ticket_endpoint_request' when calling TicketsApi.tickets_create"
136
+ end
137
+ # resource path
138
+ local_var_path = '/tickets'
139
+
140
+ # query parameters
141
+ query_params = opts[:query_params] || {}
142
+ query_params[:'is_debug_mode'] = opts[:'is_debug_mode'] if !opts[:'is_debug_mode'].nil?
143
+ query_params[:'run_async'] = opts[:'run_async'] if !opts[:'run_async'].nil?
144
+
145
+ # header parameters
146
+ header_params = opts[:header_params] || {}
147
+ # HTTP header 'Accept' (if needed)
148
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
149
+ # HTTP header 'Content-Type'
150
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'application/x-www-form-urlencoded', 'multipart/form-data'])
151
+ header_params[:'X-Account-Token'] = x_account_token
152
+
153
+ # form parameters
154
+ form_params = opts[:form_params] || {}
155
+
156
+ # http body (model)
157
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(ticket_endpoint_request)
158
+
159
+ # return_type
160
+ return_type = opts[:debug_return_type] || 'TicketResponse'
161
+
162
+ # auth_names
163
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
164
+
165
+ new_options = opts.merge(
166
+ :operation => :"TicketsApi.tickets_create",
167
+ :header_params => header_params,
168
+ :query_params => query_params,
169
+ :form_params => form_params,
170
+ :body => post_body,
171
+ :auth_names => auth_names,
172
+ :return_type => return_type
173
+ )
174
+
175
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
176
+ if @api_client.config.debugging
177
+ @api_client.config.logger.debug "API called: TicketsApi#tickets_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
178
+ end
179
+ return data, status_code, headers
180
+ end
181
+
182
+ # Returns a list of `Ticket` objects.
183
+ # @param x_account_token [String] Token identifying the end user.
184
+ # @param [Hash] opts the optional parameters
185
+ # @option opts [String] :account_id If provided, will only return tickets for this account.
186
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
187
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
188
+ # @option opts [String] :cursor The pagination cursor value.
189
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
190
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was marked as deleted by third party webhooks.
191
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
192
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
193
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
194
+ # @option opts [Integer] :page_size Number of results to return per page.
195
+ # @option opts [String] :project_id If provided, will only return tickets for this project.
196
+ # @option opts [String] :remote_fields Which fields should be returned in non-normalized form.
197
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
198
+ # @return [PaginatedTicketList]
199
+ def tickets_list(x_account_token, opts = {})
200
+ data, _status_code, _headers = tickets_list_with_http_info(x_account_token, opts)
201
+ data
202
+ end
203
+
204
+ # Returns a list of &#x60;Ticket&#x60; objects.
205
+ # @param x_account_token [String] Token identifying the end user.
206
+ # @param [Hash] opts the optional parameters
207
+ # @option opts [String] :account_id If provided, will only return tickets for this account.
208
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
209
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
210
+ # @option opts [String] :cursor The pagination cursor value.
211
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
212
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was marked as deleted by third party webhooks.
213
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
214
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
215
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
216
+ # @option opts [Integer] :page_size Number of results to return per page.
217
+ # @option opts [String] :project_id If provided, will only return tickets for this project.
218
+ # @option opts [String] :remote_fields Which fields should be returned in non-normalized form.
219
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
220
+ # @return [Array<(PaginatedTicketList, Integer, Hash)>] PaginatedTicketList data, response status code and response headers
221
+ def tickets_list_with_http_info(x_account_token, opts = {})
222
+ if @api_client.config.debugging
223
+ @api_client.config.logger.debug 'Calling API: TicketsApi.tickets_list ...'
224
+ end
225
+ # verify the required parameter 'x_account_token' is set
226
+ if @api_client.config.client_side_validation && x_account_token.nil?
227
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TicketsApi.tickets_list"
228
+ end
229
+ allowable_values = ["account", "account,contact", "account,contact,parent_ticket", "account,parent_ticket", "assignees", "assignees,account", "assignees,account,contact", "assignees,account,contact,parent_ticket", "assignees,account,parent_ticket", "assignees,contact", "assignees,contact,parent_ticket", "assignees,parent_ticket", "assignees,project", "assignees,project,account", "assignees,project,account,contact", "assignees,project,account,contact,parent_ticket", "assignees,project,account,parent_ticket", "assignees,project,contact", "assignees,project,contact,parent_ticket", "assignees,project,parent_ticket", "attachments", "attachments,account", "attachments,account,contact", "attachments,account,contact,parent_ticket", "attachments,account,parent_ticket", "attachments,assignees", "attachments,assignees,account", "attachments,assignees,account,contact", "attachments,assignees,account,contact,parent_ticket", "attachments,assignees,account,parent_ticket", "attachments,assignees,contact", "attachments,assignees,contact,parent_ticket", "attachments,assignees,parent_ticket", "attachments,assignees,project", "attachments,assignees,project,account", "attachments,assignees,project,account,contact", "attachments,assignees,project,account,contact,parent_ticket", "attachments,assignees,project,account,parent_ticket", "attachments,assignees,project,contact", "attachments,assignees,project,contact,parent_ticket", "attachments,assignees,project,parent_ticket", "attachments,contact", "attachments,contact,parent_ticket", "attachments,parent_ticket", "attachments,project", "attachments,project,account", "attachments,project,account,contact", "attachments,project,account,contact,parent_ticket", "attachments,project,account,parent_ticket", "attachments,project,contact", "attachments,project,contact,parent_ticket", "attachments,project,parent_ticket", "contact", "contact,parent_ticket", "parent_ticket", "project", "project,account", "project,account,contact", "project,account,contact,parent_ticket", "project,account,parent_ticket", "project,contact", "project,contact,parent_ticket", "project,parent_ticket"]
230
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
231
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
232
+ end
233
+ allowable_values = ["status"]
234
+ if @api_client.config.client_side_validation && opts[:'remote_fields'] && !allowable_values.include?(opts[:'remote_fields'])
235
+ fail ArgumentError, "invalid value for \"remote_fields\", must be one of #{allowable_values}"
236
+ end
237
+ # resource path
238
+ local_var_path = '/tickets'
239
+
240
+ # query parameters
241
+ query_params = opts[:query_params] || {}
242
+ query_params[:'account_id'] = opts[:'account_id'] if !opts[:'account_id'].nil?
243
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
244
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
245
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
246
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
247
+ query_params[:'include_deleted_data'] = opts[:'include_deleted_data'] if !opts[:'include_deleted_data'].nil?
248
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
249
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
250
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
251
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
252
+ query_params[:'project_id'] = opts[:'project_id'] if !opts[:'project_id'].nil?
253
+ query_params[:'remote_fields'] = opts[:'remote_fields'] if !opts[:'remote_fields'].nil?
254
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
255
+
256
+ # header parameters
257
+ header_params = opts[:header_params] || {}
258
+ # HTTP header 'Accept' (if needed)
259
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
260
+ header_params[:'X-Account-Token'] = x_account_token
261
+
262
+ # form parameters
263
+ form_params = opts[:form_params] || {}
264
+
265
+ # http body (model)
266
+ post_body = opts[:debug_body]
267
+
268
+ # return_type
269
+ return_type = opts[:debug_return_type] || 'PaginatedTicketList'
270
+
271
+ # auth_names
272
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
273
+
274
+ new_options = opts.merge(
275
+ :operation => :"TicketsApi.tickets_list",
276
+ :header_params => header_params,
277
+ :query_params => query_params,
278
+ :form_params => form_params,
279
+ :body => post_body,
280
+ :auth_names => auth_names,
281
+ :return_type => return_type
282
+ )
283
+
284
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
285
+ if @api_client.config.debugging
286
+ @api_client.config.logger.debug "API called: TicketsApi#tickets_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
287
+ end
288
+ return data, status_code, headers
289
+ end
290
+
291
+ # Returns metadata for `Ticket` POSTs.
292
+ # @param x_account_token [String] Token identifying the end user.
293
+ # @param [Hash] opts the optional parameters
294
+ # @return [MetaResponse]
295
+ def tickets_meta_post_retrieve(x_account_token, opts = {})
296
+ data, _status_code, _headers = tickets_meta_post_retrieve_with_http_info(x_account_token, opts)
297
+ data
298
+ end
299
+
300
+ # Returns metadata for &#x60;Ticket&#x60; POSTs.
301
+ # @param x_account_token [String] Token identifying the end user.
302
+ # @param [Hash] opts the optional parameters
303
+ # @return [Array<(MetaResponse, Integer, Hash)>] MetaResponse data, response status code and response headers
304
+ def tickets_meta_post_retrieve_with_http_info(x_account_token, opts = {})
305
+ if @api_client.config.debugging
306
+ @api_client.config.logger.debug 'Calling API: TicketsApi.tickets_meta_post_retrieve ...'
307
+ end
308
+ # verify the required parameter 'x_account_token' is set
309
+ if @api_client.config.client_side_validation && x_account_token.nil?
310
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TicketsApi.tickets_meta_post_retrieve"
311
+ end
312
+ # resource path
313
+ local_var_path = '/tickets/meta/post'
314
+
315
+ # query parameters
316
+ query_params = opts[:query_params] || {}
317
+
318
+ # header parameters
319
+ header_params = opts[:header_params] || {}
320
+ # HTTP header 'Accept' (if needed)
321
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
322
+ header_params[:'X-Account-Token'] = x_account_token
323
+
324
+ # form parameters
325
+ form_params = opts[:form_params] || {}
326
+
327
+ # http body (model)
328
+ post_body = opts[:debug_body]
329
+
330
+ # return_type
331
+ return_type = opts[:debug_return_type] || 'MetaResponse'
332
+
333
+ # auth_names
334
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
335
+
336
+ new_options = opts.merge(
337
+ :operation => :"TicketsApi.tickets_meta_post_retrieve",
338
+ :header_params => header_params,
339
+ :query_params => query_params,
340
+ :form_params => form_params,
341
+ :body => post_body,
342
+ :auth_names => auth_names,
343
+ :return_type => return_type
344
+ )
345
+
346
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
347
+ if @api_client.config.debugging
348
+ @api_client.config.logger.debug "API called: TicketsApi#tickets_meta_post_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
349
+ end
350
+ return data, status_code, headers
351
+ end
352
+
353
+ # Returns a `Ticket` object with the given `id`.
354
+ # @param x_account_token [String] Token identifying the end user.
355
+ # @param id [String]
356
+ # @param [Hash] opts the optional parameters
357
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
358
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
359
+ # @option opts [String] :remote_fields Which fields should be returned in non-normalized form.
360
+ # @return [Ticket]
361
+ def tickets_retrieve(x_account_token, id, opts = {})
362
+ data, _status_code, _headers = tickets_retrieve_with_http_info(x_account_token, id, opts)
363
+ data
364
+ end
365
+
366
+ # Returns a &#x60;Ticket&#x60; object with the given &#x60;id&#x60;.
367
+ # @param x_account_token [String] Token identifying the end user.
368
+ # @param id [String]
369
+ # @param [Hash] opts the optional parameters
370
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
371
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
372
+ # @option opts [String] :remote_fields Which fields should be returned in non-normalized form.
373
+ # @return [Array<(Ticket, Integer, Hash)>] Ticket data, response status code and response headers
374
+ def tickets_retrieve_with_http_info(x_account_token, id, opts = {})
375
+ if @api_client.config.debugging
376
+ @api_client.config.logger.debug 'Calling API: TicketsApi.tickets_retrieve ...'
377
+ end
378
+ # verify the required parameter 'x_account_token' is set
379
+ if @api_client.config.client_side_validation && x_account_token.nil?
380
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TicketsApi.tickets_retrieve"
381
+ end
382
+ # verify the required parameter 'id' is set
383
+ if @api_client.config.client_side_validation && id.nil?
384
+ fail ArgumentError, "Missing the required parameter 'id' when calling TicketsApi.tickets_retrieve"
385
+ end
386
+ allowable_values = ["account", "account,contact", "account,contact,parent_ticket", "account,parent_ticket", "assignees", "assignees,account", "assignees,account,contact", "assignees,account,contact,parent_ticket", "assignees,account,parent_ticket", "assignees,contact", "assignees,contact,parent_ticket", "assignees,parent_ticket", "assignees,project", "assignees,project,account", "assignees,project,account,contact", "assignees,project,account,contact,parent_ticket", "assignees,project,account,parent_ticket", "assignees,project,contact", "assignees,project,contact,parent_ticket", "assignees,project,parent_ticket", "attachments", "attachments,account", "attachments,account,contact", "attachments,account,contact,parent_ticket", "attachments,account,parent_ticket", "attachments,assignees", "attachments,assignees,account", "attachments,assignees,account,contact", "attachments,assignees,account,contact,parent_ticket", "attachments,assignees,account,parent_ticket", "attachments,assignees,contact", "attachments,assignees,contact,parent_ticket", "attachments,assignees,parent_ticket", "attachments,assignees,project", "attachments,assignees,project,account", "attachments,assignees,project,account,contact", "attachments,assignees,project,account,contact,parent_ticket", "attachments,assignees,project,account,parent_ticket", "attachments,assignees,project,contact", "attachments,assignees,project,contact,parent_ticket", "attachments,assignees,project,parent_ticket", "attachments,contact", "attachments,contact,parent_ticket", "attachments,parent_ticket", "attachments,project", "attachments,project,account", "attachments,project,account,contact", "attachments,project,account,contact,parent_ticket", "attachments,project,account,parent_ticket", "attachments,project,contact", "attachments,project,contact,parent_ticket", "attachments,project,parent_ticket", "contact", "contact,parent_ticket", "parent_ticket", "project", "project,account", "project,account,contact", "project,account,contact,parent_ticket", "project,account,parent_ticket", "project,contact", "project,contact,parent_ticket", "project,parent_ticket"]
387
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
388
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
389
+ end
390
+ allowable_values = ["status"]
391
+ if @api_client.config.client_side_validation && opts[:'remote_fields'] && !allowable_values.include?(opts[:'remote_fields'])
392
+ fail ArgumentError, "invalid value for \"remote_fields\", must be one of #{allowable_values}"
393
+ end
394
+ # resource path
395
+ local_var_path = '/tickets/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
396
+
397
+ # query parameters
398
+ query_params = opts[:query_params] || {}
399
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
400
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
401
+ query_params[:'remote_fields'] = opts[:'remote_fields'] if !opts[:'remote_fields'].nil?
402
+
403
+ # header parameters
404
+ header_params = opts[:header_params] || {}
405
+ # HTTP header 'Accept' (if needed)
406
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
407
+ header_params[:'X-Account-Token'] = x_account_token
408
+
409
+ # form parameters
410
+ form_params = opts[:form_params] || {}
411
+
412
+ # http body (model)
413
+ post_body = opts[:debug_body]
414
+
415
+ # return_type
416
+ return_type = opts[:debug_return_type] || 'Ticket'
417
+
418
+ # auth_names
419
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
420
+
421
+ new_options = opts.merge(
422
+ :operation => :"TicketsApi.tickets_retrieve",
423
+ :header_params => header_params,
424
+ :query_params => query_params,
425
+ :form_params => form_params,
426
+ :body => post_body,
427
+ :auth_names => auth_names,
428
+ :return_type => return_type
429
+ )
430
+
431
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
432
+ if @api_client.config.debugging
433
+ @api_client.config.logger.debug "API called: TicketsApi#tickets_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
434
+ end
435
+ return data, status_code, headers
436
+ end
437
+ end
438
+ end