petstroepack 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +86 -0
  4. data/lib/ctd_documentation/api_helper.rb +10 -0
  5. data/lib/ctd_documentation/client.rb +140 -0
  6. data/lib/ctd_documentation/configuration.rb +103 -0
  7. data/lib/ctd_documentation/controllers/activities_controller.rb +69 -0
  8. data/lib/ctd_documentation/controllers/alerts_controller.rb +170 -0
  9. data/lib/ctd_documentation/controllers/assets_controller.rb +409 -0
  10. data/lib/ctd_documentation/controllers/base_controller.rb +65 -0
  11. data/lib/ctd_documentation/controllers/custom_attributes_categories_controller.rb +50 -0
  12. data/lib/ctd_documentation/controllers/events_controller.rb +67 -0
  13. data/lib/ctd_documentation/controllers/groups_controller.rb +28 -0
  14. data/lib/ctd_documentation/controllers/insights_controller.rb +111 -0
  15. data/lib/ctd_documentation/controllers/license_controller.rb +73 -0
  16. data/lib/ctd_documentation/controllers/login_controller.rb +31 -0
  17. data/lib/ctd_documentation/controllers/queries_controller.rb +128 -0
  18. data/lib/ctd_documentation/controllers/sensors_controller.rb +26 -0
  19. data/lib/ctd_documentation/controllers/sites_controller.rb +39 -0
  20. data/lib/ctd_documentation/controllers/tasks_controller.rb +148 -0
  21. data/lib/ctd_documentation/controllers/tasks_queries_controller.rb +29 -0
  22. data/lib/ctd_documentation/controllers/users_controller.rb +28 -0
  23. data/lib/ctd_documentation/exceptions/api_exception.rb +10 -0
  24. data/lib/ctd_documentation/exceptions/auth_authenticate401_error_exception.rb +48 -0
  25. data/lib/ctd_documentation/http/auth/custom_header_auth.rb +25 -0
  26. data/lib/ctd_documentation/http/http_call_back.rb +10 -0
  27. data/lib/ctd_documentation/http/http_method_enum.rb +10 -0
  28. data/lib/ctd_documentation/http/http_request.rb +10 -0
  29. data/lib/ctd_documentation/http/http_response.rb +10 -0
  30. data/lib/ctd_documentation/models/actionable.rb +70 -0
  31. data/lib/ctd_documentation/models/actionable_asset.rb +80 -0
  32. data/lib/ctd_documentation/models/actionable_cap.rb +80 -0
  33. data/lib/ctd_documentation/models/actionable_information.rb +80 -0
  34. data/lib/ctd_documentation/models/actionable_policy.rb +361 -0
  35. data/lib/ctd_documentation/models/actionable_related_asset.rb +142 -0
  36. data/lib/ctd_documentation/models/active_history.rb +311 -0
  37. data/lib/ctd_documentation/models/activities_object.rb +150 -0
  38. data/lib/ctd_documentation/models/activities_response.rb +100 -0
  39. data/lib/ctd_documentation/models/activity.rb +150 -0
  40. data/lib/ctd_documentation/models/add_license_response.rb +79 -0
  41. data/lib/ctd_documentation/models/alert.rb +455 -0
  42. data/lib/ctd_documentation/models/alert_severity_enum.rb +23 -0
  43. data/lib/ctd_documentation/models/asset.rb +527 -0
  44. data/lib/ctd_documentation/models/assets_with_insights.rb +252 -0
  45. data/lib/ctd_documentation/models/assets_with_insights_response.rb +90 -0
  46. data/lib/ctd_documentation/models/authenticate.rb +57 -0
  47. data/lib/ctd_documentation/models/base_model.rb +58 -0
  48. data/lib/ctd_documentation/models/base_task.rb +198 -0
  49. data/lib/ctd_documentation/models/cap.rb +90 -0
  50. data/lib/ctd_documentation/models/code_sections.rb +70 -0
  51. data/lib/ctd_documentation/models/content_type_enum.rb +14 -0
  52. data/lib/ctd_documentation/models/create_a_new_query.rb +57 -0
  53. data/lib/ctd_documentation/models/create_a_new_query_response.rb +57 -0
  54. data/lib/ctd_documentation/models/create_group_response.rb +48 -0
  55. data/lib/ctd_documentation/models/create_user_response.rb +48 -0
  56. data/lib/ctd_documentation/models/createanewtask.rb +57 -0
  57. data/lib/ctd_documentation/models/createanewtask_response.rb +57 -0
  58. data/lib/ctd_documentation/models/ctd_login_exception.rb +81 -0
  59. data/lib/ctd_documentation/models/ctd_login_response.rb +101 -0
  60. data/lib/ctd_documentation/models/custom_attribute_category.rb +90 -0
  61. data/lib/ctd_documentation/models/db_statistics.rb +50 -0
  62. data/lib/ctd_documentation/models/delete_a_query_response.rb +48 -0
  63. data/lib/ctd_documentation/models/delete_a_task_response.rb +48 -0
  64. data/lib/ctd_documentation/models/destination_virtual_zone.rb +60 -0
  65. data/lib/ctd_documentation/models/detail.rb +60 -0
  66. data/lib/ctd_documentation/models/discovery_params.rb +82 -0
  67. data/lib/ctd_documentation/models/entity.rb +70 -0
  68. data/lib/ctd_documentation/models/event.rb +175 -0
  69. data/lib/ctd_documentation/models/find_asset_by_id_response.rb +547 -0
  70. data/lib/ctd_documentation/models/format1_enum.rb +22 -0
  71. data/lib/ctd_documentation/models/format_enum.rb +20 -0
  72. data/lib/ctd_documentation/models/get_active_detection_history_response.rb +90 -0
  73. data/lib/ctd_documentation/models/get_alerts_response.rb +90 -0
  74. data/lib/ctd_documentation/models/get_all_sites_response.rb +90 -0
  75. data/lib/ctd_documentation/models/get_assets_response.rb +90 -0
  76. data/lib/ctd_documentation/models/get_custom_attribute_categories_response.rb +90 -0
  77. data/lib/ctd_documentation/models/get_events_response.rb +90 -0
  78. data/lib/ctd_documentation/models/get_license_details_response.rb +81 -0
  79. data/lib/ctd_documentation/models/get_queries_ids_and_assigned_task_response.rb +70 -0
  80. data/lib/ctd_documentation/models/get_queries_response.rb +90 -0
  81. data/lib/ctd_documentation/models/get_tasks_response.rb +90 -0
  82. data/lib/ctd_documentation/models/get_types_response.rb +57 -0
  83. data/lib/ctd_documentation/models/group.rb +73 -0
  84. data/lib/ctd_documentation/models/identifiable.rb +70 -0
  85. data/lib/ctd_documentation/models/indicator_info.rb +90 -0
  86. data/lib/ctd_documentation/models/indicators.rb +122 -0
  87. data/lib/ctd_documentation/models/information.rb +183 -0
  88. data/lib/ctd_documentation/models/insight_status_enum.rb +20 -0
  89. data/lib/ctd_documentation/models/insight_status_exact1_enum.rb +21 -0
  90. data/lib/ctd_documentation/models/insight_status_exact_enum.rb +20 -0
  91. data/lib/ctd_documentation/models/license_request.rb +48 -0
  92. data/lib/ctd_documentation/models/network.rb +80 -0
  93. data/lib/ctd_documentation/models/new_queryobject.rb +199 -0
  94. data/lib/ctd_documentation/models/new_taskobject.rb +199 -0
  95. data/lib/ctd_documentation/models/object.rb +70 -0
  96. data/lib/ctd_documentation/models/paginated_response.rb +71 -0
  97. data/lib/ctd_documentation/models/policy.rb +331 -0
  98. data/lib/ctd_documentation/models/queryextraparams.rb +60 -0
  99. data/lib/ctd_documentation/models/ranger_system_check_response.rb +57 -0
  100. data/lib/ctd_documentation/models/risk_vector.rb +89 -0
  101. data/lib/ctd_documentation/models/selection_params.rb +58 -0
  102. data/lib/ctd_documentation/models/selection_params1.rb +80 -0
  103. data/lib/ctd_documentation/models/site.rb +256 -0
  104. data/lib/ctd_documentation/models/site_list_slim_enum.rb +14 -0
  105. data/lib/ctd_documentation/models/slim_insight.rb +139 -0
  106. data/lib/ctd_documentation/models/sort1_enum.rb +65 -0
  107. data/lib/ctd_documentation/models/sort31_enum.rb +59 -0
  108. data/lib/ctd_documentation/models/sort3_enum.rb +59 -0
  109. data/lib/ctd_documentation/models/sort41_enum.rb +41 -0
  110. data/lib/ctd_documentation/models/sort4_enum.rb +41 -0
  111. data/lib/ctd_documentation/models/sort5_enum.rb +35 -0
  112. data/lib/ctd_documentation/models/sort6_enum.rb +41 -0
  113. data/lib/ctd_documentation/models/sort_enum.rb +125 -0
  114. data/lib/ctd_documentation/models/source_virtual_zone.rb +60 -0
  115. data/lib/ctd_documentation/models/special_hint_enum.rb +26 -0
  116. data/lib/ctd_documentation/models/special_hint_exact_enum.rb +26 -0
  117. data/lib/ctd_documentation/models/status_enum.rb +17 -0
  118. data/lib/ctd_documentation/models/status_exact_enum.rb +23 -0
  119. data/lib/ctd_documentation/models/subnet.rb +50 -0
  120. data/lib/ctd_documentation/models/task.rb +281 -0
  121. data/lib/ctd_documentation/models/taskextraparams.rb +71 -0
  122. data/lib/ctd_documentation/models/update_a_single_query_response.rb +57 -0
  123. data/lib/ctd_documentation/models/update_a_single_task_response.rb +57 -0
  124. data/lib/ctd_documentation/models/update_license_response.rb +79 -0
  125. data/lib/ctd_documentation/models/user.rb +88 -0
  126. data/lib/ctd_documentation/models/virtual_zones.rb +118 -0
  127. data/lib/ctd_documentation/utilities/date_time_helper.rb +11 -0
  128. data/lib/ctd_documentation/utilities/file_wrapper.rb +16 -0
  129. data/lib/ctd_documentation.rb +155 -0
  130. data/test/controllers/controller_test_base.rb +29 -0
  131. data/test/controllers/test_activities_controller.rb +64 -0
  132. data/test/controllers/test_alerts_controller.rb +16 -0
  133. data/test/controllers/test_assets_controller.rb +79 -0
  134. data/test/controllers/test_custom_attributes_categories_controller.rb +52 -0
  135. data/test/controllers/test_events_controller.rb +55 -0
  136. data/test/controllers/test_login_controller.rb +45 -0
  137. data/test/controllers/test_queries_controller.rb +292 -0
  138. data/test/controllers/test_sites_controller.rb +53 -0
  139. data/test/controllers/test_tasks_controller.rb +250 -0
  140. data/test/http_response_catcher.rb +19 -0
  141. metadata +259 -0
@@ -0,0 +1,111 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # InsightsController
8
+ class InsightsController < BaseController
9
+ # In order to retrieve all the assets associated with a specific Insight
10
+ # Step 1:
11
+ # 1. Apply the relevant site number in the site_id__exact field
12
+ # 2. Click "Try It Out"
13
+ # 3. From the Response body, select the insight of interest, e.g. Assets
14
+ # Accessed SMB shares
15
+ # 4. Copy the string of the insight name e.g. "Assets Accessed SMB shares"
16
+ # 5. Find further instructions in 'Get Insight Details by Name' API endpoint
17
+ # @param [String] format Required parameter: Example:
18
+ # @param [String] sort Required parameter: Example:
19
+ # @param [ContentTypeEnum] content_type Required parameter: Example:
20
+ # @param [Integer] page Optional parameter: The actual page offset
21
+ # @param [Integer] per_page Optional parameter: Number of Insights to pull
22
+ # per page
23
+ # @param [Integer] site_id__exact Optional parameter: The identifier of the
24
+ # Site related to the Insight
25
+ # @param [TrueClass|FalseClass] ghost__exact Optional parameter: Whether or
26
+ # not this is a ghost asset: TRUE = Ghost
27
+ # @param [SpecialHintExactEnum] special_hint__exact Optional parameter:
28
+ # Example:
29
+ # @param [InsightStatusExact1Enum] insight_status__exact Optional parameter:
30
+ # The status of the Insight associated with this Asset – this is a dropdown
31
+ # for choosing the integer type: 0 = Open 1 = Hidden 2 = Completed
32
+ # @return [void] response from the API call
33
+ def get_insights_summary(format,
34
+ sort,
35
+ content_type,
36
+ page: 1,
37
+ per_page: 50,
38
+ site_id__exact: 1,
39
+ ghost__exact: false,
40
+ special_hint__exact: nil,
41
+ insight_status__exact: nil)
42
+ new_api_call_builder
43
+ .request(new_request_builder(HttpMethodEnum::GET,
44
+ '/ranger/insights_summary',
45
+ Server::DEFAULT)
46
+ .query_param(new_parameter(format, key: 'format'))
47
+ .query_param(new_parameter(sort, key: 'sort'))
48
+ .header_param(new_parameter(content_type, key: 'Content-Type'))
49
+ .query_param(new_parameter(page, key: 'page'))
50
+ .query_param(new_parameter(per_page, key: 'per_page'))
51
+ .query_param(new_parameter(site_id__exact, key: 'site_id__exact'))
52
+ .query_param(new_parameter(ghost__exact, key: 'ghost__exact'))
53
+ .query_param(new_parameter(special_hint__exact, key: 'special_hint__exact'))
54
+ .query_param(new_parameter(insight_status__exact, key: 'insight_status__exact'))
55
+ .auth(Single.new('global')))
56
+ .response(new_response_handler
57
+ .is_response_void(true))
58
+ .execute
59
+ end
60
+
61
+ # In order to retrieve all the assets associated with a specific Insight:
62
+ # Step 2 (Step1 is in 'Get Insights Summary' endpoint):
63
+ # 1. Enter (paste) the insight name from above into the insight_name field
64
+ # 2. Apply the relevant site number in the site_id__exact field
65
+ # 3. Click Execute
66
+ # 4. From the Response Body, Select the FILTER_KEY
67
+ # 5. Copy the string of the FILTER_KEY
68
+ # 6. Find further instructions in /ranger/assets
69
+ # @param [String] insight_name Required parameter: Example:
70
+ # @param [String] format Optional parameter: Example:insight_page
71
+ # @param [Integer] page Optional parameter: The actual page offset
72
+ # @param [Integer] per_page Optional parameter: Number of Insights to pull
73
+ # per page
74
+ # @param [Integer] site_id__exact Optional parameter: The identifier of the
75
+ # Site related to the Insight
76
+ # @param [TrueClass|FalseClass] ghost__exact Optional parameter: Whether or
77
+ # not this is a ghost asset: TRUE = Ghost
78
+ # @param [SpecialHintExactEnum] special_hint__exact Optional parameter:
79
+ # Example:
80
+ # @param [InsightStatusExact1Enum] insight_status__exact Optional parameter:
81
+ # The status of the Insight associated with this Asset – this is a dropdown
82
+ # for choosing the integer type: 0 = Open 1 = Hidden 2 = Completed
83
+ # @return [void] response from the API call
84
+ def get_insight_details_by_name(insight_name,
85
+ format: 'insight_page',
86
+ page: 1,
87
+ per_page: 10,
88
+ site_id__exact: 1,
89
+ ghost__exact: false,
90
+ special_hint__exact: nil,
91
+ insight_status__exact: nil)
92
+ new_api_call_builder
93
+ .request(new_request_builder(HttpMethodEnum::GET,
94
+ '/ranger/insight_details/{insight_name}',
95
+ Server::DEFAULT)
96
+ .template_param(new_parameter(insight_name, key: 'insight_name')
97
+ .should_encode(true))
98
+ .query_param(new_parameter(format, key: 'format'))
99
+ .query_param(new_parameter(page, key: 'page'))
100
+ .query_param(new_parameter(per_page, key: 'per_page'))
101
+ .query_param(new_parameter(site_id__exact, key: 'site_id__exact'))
102
+ .query_param(new_parameter(ghost__exact, key: 'ghost__exact'))
103
+ .query_param(new_parameter(special_hint__exact, key: 'special_hint__exact'))
104
+ .query_param(new_parameter(insight_status__exact, key: 'insight_status__exact'))
105
+ .auth(Single.new('global')))
106
+ .response(new_response_handler
107
+ .is_response_void(true))
108
+ .execute
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,73 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # LicenseController
8
+ class LicenseController < BaseController
9
+ # Admin users can get the current license details
10
+ # @param [Integer] site_id Required parameter: On which site to operate
11
+ # @return [GetLicenseDetailsResponse] response from the API call
12
+ def get_license_details(site_id)
13
+ new_api_call_builder
14
+ .request(new_request_builder(HttpMethodEnum::GET,
15
+ '/ranger/license/{site_id}',
16
+ Server::DEFAULT)
17
+ .template_param(new_parameter(site_id, key: 'site_id')
18
+ .should_encode(true))
19
+ .header_param(new_parameter('application/json', key: 'accept'))
20
+ .auth(Single.new('global')))
21
+ .response(new_response_handler
22
+ .deserializer(APIHelper.method(:custom_type_deserializer))
23
+ .deserialize_into(GetLicenseDetailsResponse.method(:from_hash)))
24
+ .execute
25
+ end
26
+
27
+ # Add License
28
+ # @param [Integer] site_id Required parameter: On which site to operate
29
+ # @param [LicenseRequest] body Required parameter: Set license
30
+ # @return [UpdateLicenseResponse] response from the API call
31
+ def add_license(site_id,
32
+ body)
33
+ new_api_call_builder
34
+ .request(new_request_builder(HttpMethodEnum::POST,
35
+ '/ranger/license/{site_id}',
36
+ Server::DEFAULT)
37
+ .template_param(new_parameter(site_id, key: 'site_id')
38
+ .should_encode(true))
39
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
40
+ .body_param(new_parameter(body))
41
+ .header_param(new_parameter('application/json', key: 'accept'))
42
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
43
+ .auth(Single.new('global')))
44
+ .response(new_response_handler
45
+ .deserializer(APIHelper.method(:custom_type_deserializer))
46
+ .deserialize_into(UpdateLicenseResponse.method(:from_hash)))
47
+ .execute
48
+ end
49
+
50
+ # Update license
51
+ # @param [Integer] site_id Required parameter: On which site to operate
52
+ # @param [LicenseRequest] body Required parameter: Set license
53
+ # @return [UpdateLicenseResponse] response from the API call
54
+ def update_license(site_id,
55
+ body)
56
+ new_api_call_builder
57
+ .request(new_request_builder(HttpMethodEnum::PUT,
58
+ '/ranger/license/{site_id}',
59
+ Server::DEFAULT)
60
+ .template_param(new_parameter(site_id, key: 'site_id')
61
+ .should_encode(true))
62
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
63
+ .body_param(new_parameter(body))
64
+ .header_param(new_parameter('application/json', key: 'accept'))
65
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
66
+ .auth(Single.new('global')))
67
+ .response(new_response_handler
68
+ .deserializer(APIHelper.method(:custom_type_deserializer))
69
+ .deserialize_into(UpdateLicenseResponse.method(:from_hash)))
70
+ .execute
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,31 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # LoginController
8
+ class LoginController < BaseController
9
+ # CTD Login
10
+ # @param [Authenticate] body Optional parameter: Set license
11
+ # @return [CTDLoginResponse] response from the API call
12
+ def ctd_login(body: nil)
13
+ new_api_call_builder
14
+ .request(new_request_builder(HttpMethodEnum::POST,
15
+ '/auth/authenticate',
16
+ Server::DEFAULT)
17
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
18
+ .body_param(new_parameter(body))
19
+ .header_param(new_parameter('application/json', key: 'accept'))
20
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
21
+ .auth(Single.new('global')))
22
+ .response(new_response_handler
23
+ .deserializer(APIHelper.method(:custom_type_deserializer))
24
+ .deserialize_into(CTDLoginResponse.method(:from_hash))
25
+ .local_error('401',
26
+ 'Unsuccessful Operation',
27
+ AuthAuthenticate401ErrorException))
28
+ .execute
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,128 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # QueriesController
8
+ class QueriesController < BaseController
9
+ # Get all queries and their information
10
+ # @param [Sort1Enum] sort Optional parameter: Example:
11
+ # @param [Integer] page Optional parameter: Example:
12
+ # @param [Integer] per_page Optional parameter: Example:
13
+ # @param [String] name__icontains Optional parameter: Example:
14
+ # @param [Integer] site_id__exact Optional parameter: Example:
15
+ # @return [GetQueriesResponse] response from the API call
16
+ def get_queries(sort: nil,
17
+ page: nil,
18
+ per_page: nil,
19
+ name__icontains: nil,
20
+ site_id__exact: nil)
21
+ new_api_call_builder
22
+ .request(new_request_builder(HttpMethodEnum::GET,
23
+ '/ranger/queries',
24
+ Server::DEFAULT)
25
+ .query_param(new_parameter(sort, key: 'sort'))
26
+ .query_param(new_parameter(page, key: 'page'))
27
+ .query_param(new_parameter(per_page, key: 'per_page'))
28
+ .query_param(new_parameter(name__icontains, key: 'name__icontains'))
29
+ .query_param(new_parameter(site_id__exact, key: 'site_id__exact'))
30
+ .header_param(new_parameter('application/json', key: 'accept'))
31
+ .auth(Single.new('global')))
32
+ .response(new_response_handler
33
+ .deserializer(APIHelper.method(:custom_type_deserializer))
34
+ .deserialize_into(GetQueriesResponse.method(:from_hash)))
35
+ .execute
36
+ end
37
+
38
+ # This route creates a query
39
+ # @param [CreateANewQuery] body Required parameter: Example:
40
+ # @return [CreateANewQueryResponse] response from the API call
41
+ def create_a_new_query(body)
42
+ new_api_call_builder
43
+ .request(new_request_builder(HttpMethodEnum::POST,
44
+ '/ranger/queries',
45
+ Server::DEFAULT)
46
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
47
+ .body_param(new_parameter(body))
48
+ .header_param(new_parameter('application/json', key: 'accept'))
49
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
50
+ .auth(Single.new('global')))
51
+ .response(new_response_handler
52
+ .deserializer(APIHelper.method(:custom_type_deserializer))
53
+ .deserialize_into(CreateANewQueryResponse.method(:from_hash)))
54
+ .execute
55
+ end
56
+
57
+ # Delete a query by a list of selected resource IDs
58
+ # @param [ContentTypeEnum] content_type Required parameter: Example:
59
+ # @return [DeleteAQueryResponse] response from the API call
60
+ def delete_a_query(content_type)
61
+ new_api_call_builder
62
+ .request(new_request_builder(HttpMethodEnum::DELETE,
63
+ '/ranger/queries',
64
+ Server::DEFAULT)
65
+ .header_param(new_parameter(content_type, key: 'Content-Type'))
66
+ .header_param(new_parameter('application/json', key: 'accept'))
67
+ .auth(Single.new('global')))
68
+ .response(new_response_handler
69
+ .deserializer(APIHelper.method(:custom_type_deserializer))
70
+ .deserialize_into(DeleteAQueryResponse.method(:from_hash)))
71
+ .execute
72
+ end
73
+
74
+ # This route updates a query
75
+ # @param [String] resource_id Required parameter: Resource ID of the query
76
+ # to update
77
+ # @param [CreateANewQuery] body Required parameter: Example:
78
+ # @return [CreateANewQueryResponse] response from the API call
79
+ def update_a_single_query(resource_id,
80
+ body)
81
+ new_api_call_builder
82
+ .request(new_request_builder(HttpMethodEnum::POST,
83
+ '/ranger/queries/{resource_id}',
84
+ Server::DEFAULT)
85
+ .template_param(new_parameter(resource_id, key: 'resource_id')
86
+ .should_encode(true))
87
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
88
+ .body_param(new_parameter(body))
89
+ .header_param(new_parameter('application/json', key: 'accept'))
90
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
91
+ .auth(Single.new('global')))
92
+ .response(new_response_handler
93
+ .deserializer(APIHelper.method(:custom_type_deserializer))
94
+ .deserialize_into(CreateANewQueryResponse.method(:from_hash)))
95
+ .execute
96
+ end
97
+
98
+ # Get descriptions and enums for all queries (can be used later to retrieve
99
+ # parameters per task type enum)
100
+ # @return [Object] response from the API call
101
+ def get_information_for_all_queries
102
+ new_api_call_builder
103
+ .request(new_request_builder(HttpMethodEnum::GET,
104
+ '/ranger/queries/get_types',
105
+ Server::DEFAULT)
106
+ .header_param(new_parameter('application/json', key: 'accept'))
107
+ .auth(Single.new('global')))
108
+ .response(new_response_handler
109
+ .deserializer(APIHelper.method(:json_deserialize)))
110
+ .execute
111
+ end
112
+
113
+ # This is used to determine the payload needed to be sent for
114
+ # creating/updating a query by a certain query type enum value
115
+ # @return [Object] response from the API call
116
+ def all_queries_fields_types_and_validations
117
+ new_api_call_builder
118
+ .request(new_request_builder(HttpMethodEnum::GET,
119
+ '/ranger/queries/get_params',
120
+ Server::DEFAULT)
121
+ .header_param(new_parameter('application/json', key: 'accept'))
122
+ .auth(Single.new('global')))
123
+ .response(new_response_handler
124
+ .deserializer(APIHelper.method(:json_deserialize)))
125
+ .execute
126
+ end
127
+ end
128
+ end
@@ -0,0 +1,26 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # SensorsController
8
+ class SensorsController < BaseController
9
+ # Get Sensors
10
+ # @param [Integer] site_id Required parameter: Example:
11
+ # @return [RangerSystemCheckResponse] response from the API call
12
+ def get_sensors(site_id)
13
+ new_api_call_builder
14
+ .request(new_request_builder(HttpMethodEnum::GET,
15
+ '/ranger/system/check',
16
+ Server::DEFAULT)
17
+ .query_param(new_parameter(site_id, key: 'site_id'))
18
+ .header_param(new_parameter('application/json', key: 'accept'))
19
+ .auth(Single.new('global')))
20
+ .response(new_response_handler
21
+ .deserializer(APIHelper.method(:custom_type_deserializer))
22
+ .deserialize_into(RangerSystemCheckResponse.method(:from_hash)))
23
+ .execute
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,39 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # SitesController
8
+ class SitesController < BaseController
9
+ # Get all sites and their information
10
+ # @param [String] rid__exact Optional parameter: Example:
11
+ # @param [Sort31Enum] sort Optional parameter: Sort order: add '-' for
12
+ # descending order
13
+ # @param [SiteListSlimEnum] format Optional parameter: Example:
14
+ # @param [Integer] page Optional parameter: Example:1
15
+ # @param [Integer] per_page Optional parameter: Example:20
16
+ # @return [GetAllSitesResponse] response from the API call
17
+ def get_all_sites(rid__exact: nil,
18
+ sort: nil,
19
+ format: nil,
20
+ page: 1,
21
+ per_page: 20)
22
+ new_api_call_builder
23
+ .request(new_request_builder(HttpMethodEnum::GET,
24
+ '/ranger/sites',
25
+ Server::DEFAULT)
26
+ .query_param(new_parameter(rid__exact, key: 'rid__exact'))
27
+ .query_param(new_parameter(sort, key: 'sort'))
28
+ .query_param(new_parameter(format, key: 'format'))
29
+ .query_param(new_parameter(page, key: 'page'))
30
+ .query_param(new_parameter(per_page, key: 'per_page'))
31
+ .header_param(new_parameter('application/json', key: 'accept'))
32
+ .auth(Single.new('global')))
33
+ .response(new_response_handler
34
+ .deserializer(APIHelper.method(:custom_type_deserializer))
35
+ .deserialize_into(GetAllSitesResponse.method(:from_hash)))
36
+ .execute
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,148 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # TasksController
8
+ class TasksController < BaseController
9
+ # Get all tasks and their information
10
+ # @param [Sort1Enum] sort Optional parameter: Example:
11
+ # @param [Integer] page Optional parameter: Example:1
12
+ # @param [Integer] per_page Optional parameter: Example:20
13
+ # @param [String] name__icontains Optional parameter: Example:
14
+ # @param [Integer] site_id__exact Optional parameter: Example:
15
+ # @return [GetQueriesResponse] response from the API call
16
+ def get_tasks(sort: nil,
17
+ page: 1,
18
+ per_page: 20,
19
+ name__icontains: nil,
20
+ site_id__exact: nil)
21
+ new_api_call_builder
22
+ .request(new_request_builder(HttpMethodEnum::GET,
23
+ '/ranger/scans',
24
+ Server::DEFAULT)
25
+ .query_param(new_parameter(sort, key: 'sort'))
26
+ .query_param(new_parameter(page, key: 'page'))
27
+ .query_param(new_parameter(per_page, key: 'per_page'))
28
+ .query_param(new_parameter(name__icontains, key: 'name__icontains'))
29
+ .query_param(new_parameter(site_id__exact, key: 'site_id__exact'))
30
+ .header_param(new_parameter('application/json', key: 'accept'))
31
+ .auth(Single.new('global')))
32
+ .response(new_response_handler
33
+ .deserializer(APIHelper.method(:custom_type_deserializer))
34
+ .deserialize_into(GetQueriesResponse.method(:from_hash)))
35
+ .execute
36
+ end
37
+
38
+ # This route creates a task
39
+ # @param [Createanewtask] body Required parameter: Example:
40
+ # @return [CreateANewQueryResponse] response from the API call
41
+ def create_a_new_task(body)
42
+ new_api_call_builder
43
+ .request(new_request_builder(HttpMethodEnum::POST,
44
+ '/ranger/scans',
45
+ Server::DEFAULT)
46
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
47
+ .body_param(new_parameter(body))
48
+ .header_param(new_parameter('application/json', key: 'accept'))
49
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
50
+ .auth(Single.new('global')))
51
+ .response(new_response_handler
52
+ .deserializer(APIHelper.method(:custom_type_deserializer))
53
+ .deserialize_into(CreateANewQueryResponse.method(:from_hash)))
54
+ .execute
55
+ end
56
+
57
+ # Delete a task by a list of selected resource IDs
58
+ # @param [ContentTypeEnum] content_type Required parameter: Example:
59
+ # @return [DeleteAQueryResponse] response from the API call
60
+ def delete_a_task(content_type)
61
+ new_api_call_builder
62
+ .request(new_request_builder(HttpMethodEnum::DELETE,
63
+ '/ranger/scans',
64
+ Server::DEFAULT)
65
+ .header_param(new_parameter(content_type, key: 'Content-Type'))
66
+ .header_param(new_parameter('application/json', key: 'accept'))
67
+ .auth(Single.new('global')))
68
+ .response(new_response_handler
69
+ .deserializer(APIHelper.method(:custom_type_deserializer))
70
+ .deserialize_into(DeleteAQueryResponse.method(:from_hash)))
71
+ .execute
72
+ end
73
+
74
+ # This route updates a task
75
+ # @param [String] resource_id Required parameter: Resource ID of the task to
76
+ # update
77
+ # @param [Createanewtask] body Required parameter: Example:
78
+ # @return [CreateANewQueryResponse] response from the API call
79
+ def update_a_single_task(resource_id,
80
+ body)
81
+ new_api_call_builder
82
+ .request(new_request_builder(HttpMethodEnum::POST,
83
+ '/ranger/scans/{resource_id}',
84
+ Server::DEFAULT)
85
+ .template_param(new_parameter(resource_id, key: 'resource_id')
86
+ .should_encode(true))
87
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
88
+ .body_param(new_parameter(body))
89
+ .header_param(new_parameter('application/json', key: 'accept'))
90
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
91
+ .auth(Single.new('global')))
92
+ .response(new_response_handler
93
+ .deserializer(APIHelper.method(:custom_type_deserializer))
94
+ .deserialize_into(CreateANewQueryResponse.method(:from_hash)))
95
+ .execute
96
+ end
97
+
98
+ # Get descriptions and enums for all tasks (can be used later to retrieve
99
+ # parameters per task type enum)
100
+ # @return [Hash of Object] response from the API call
101
+ def information_of_all_tasks
102
+ new_api_call_builder
103
+ .request(new_request_builder(HttpMethodEnum::GET,
104
+ '/ranger/scans/get_types',
105
+ Server::DEFAULT)
106
+ .header_param(new_parameter('application/json', key: 'accept'))
107
+ .auth(Single.new('global')))
108
+ .response(new_response_handler
109
+ .deserializer(APIHelper.method(:json_deserialize)))
110
+ .execute
111
+ end
112
+
113
+ # This is used to determine the payload needed to be sent for
114
+ # creating/updating a task by a certain task type enum value
115
+ # @return [Hash of Object] response from the API call
116
+ def all_tasks_fields
117
+ new_api_call_builder
118
+ .request(new_request_builder(HttpMethodEnum::GET,
119
+ '/ranger/scans/get_params',
120
+ Server::DEFAULT)
121
+ .header_param(new_parameter('application/json', key: 'accept'))
122
+ .auth(Single.new('global')))
123
+ .response(new_response_handler
124
+ .deserializer(APIHelper.method(:json_deserialize)))
125
+ .execute
126
+ end
127
+
128
+ # Get active detection history
129
+ # @param [Integer] site_id__exact Required parameter: Example:
130
+ # @param [String] sort Optional parameter: Example:
131
+ # @return [GetActiveDetectionHistoryResponse] response from the API call
132
+ def get_active_detection_history(site_id__exact,
133
+ sort: nil)
134
+ new_api_call_builder
135
+ .request(new_request_builder(HttpMethodEnum::GET,
136
+ '/ranger/active_history',
137
+ Server::DEFAULT)
138
+ .query_param(new_parameter(site_id__exact, key: 'site_id__exact'))
139
+ .query_param(new_parameter(sort, key: 'sort'))
140
+ .header_param(new_parameter('application/json', key: 'accept'))
141
+ .auth(Single.new('global')))
142
+ .response(new_response_handler
143
+ .deserializer(APIHelper.method(:custom_type_deserializer))
144
+ .deserialize_into(GetActiveDetectionHistoryResponse.method(:from_hash)))
145
+ .execute
146
+ end
147
+ end
148
+ end
@@ -0,0 +1,29 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # TasksQueriesController
8
+ class TasksQueriesController < BaseController
9
+ # List all queries and their ids, and which queries are assigned to the task
10
+ # @param [Integer] site_id Required parameter: Example:
11
+ # @param [String] scan_rid Required parameter: Example:
12
+ # @return [GetQueriesIdsAndAssignedTaskResponse] response from the API call
13
+ def get_queries_ids_and_assigned_task(site_id,
14
+ scan_rid)
15
+ new_api_call_builder
16
+ .request(new_request_builder(HttpMethodEnum::GET,
17
+ '/ranger/task_query_configurations',
18
+ Server::DEFAULT)
19
+ .query_param(new_parameter(site_id, key: 'site_id'))
20
+ .query_param(new_parameter(scan_rid, key: 'scan_rid'))
21
+ .header_param(new_parameter('application/json', key: 'accept'))
22
+ .auth(Single.new('global')))
23
+ .response(new_response_handler
24
+ .deserializer(APIHelper.method(:custom_type_deserializer))
25
+ .deserialize_into(GetQueriesIdsAndAssignedTaskResponse.method(:from_hash)))
26
+ .execute
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,28 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # UsersController
8
+ class UsersController < BaseController
9
+ # This can only be done by the logged in user.
10
+ # @param [User] body Required parameter: Created user object
11
+ # @return [CreateUserResponse] response from the API call
12
+ def create_user(body)
13
+ new_api_call_builder
14
+ .request(new_request_builder(HttpMethodEnum::POST,
15
+ '/auth/users',
16
+ Server::DEFAULT)
17
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
18
+ .body_param(new_parameter(body))
19
+ .header_param(new_parameter('application/json', key: 'accept'))
20
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
21
+ .auth(Single.new('global')))
22
+ .response(new_response_handler
23
+ .deserializer(APIHelper.method(:custom_type_deserializer))
24
+ .deserialize_into(CreateUserResponse.method(:from_hash)))
25
+ .execute
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,10 @@
1
+ # ctd_documentation
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module CtdDocumentation
7
+ # Class for exceptions when there is a network error, status code error, etc.
8
+ class APIException < CoreLibrary::ApiException
9
+ end
10
+ end