emass_client 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (132) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +1284 -0
  3. data/Rakefile +8 -0
  4. data/lib/emass_client/api/artifacts_api.rb +310 -0
  5. data/lib/emass_client/api/artifacts_export_api.rb +86 -0
  6. data/lib/emass_client/api/cac_api.rb +143 -0
  7. data/lib/emass_client/api/cmmc_assessments_api.rb +77 -0
  8. data/lib/emass_client/api/controls_api.rb +143 -0
  9. data/lib/emass_client/api/milestones_api.rb +366 -0
  10. data/lib/emass_client/api/pac_api.rb +140 -0
  11. data/lib/emass_client/api/poam_api.rb +345 -0
  12. data/lib/emass_client/api/registration_api.rb +78 -0
  13. data/lib/emass_client/api/static_code_scans_api.rb +84 -0
  14. data/lib/emass_client/api/system_roles_api.rb +150 -0
  15. data/lib/emass_client/api/systems_api.rb +162 -0
  16. data/lib/emass_client/api/test_api.rb +70 -0
  17. data/lib/emass_client/api/test_results_api.rb +149 -0
  18. data/lib/emass_client/api/workflow_definitions_api.rb +76 -0
  19. data/lib/emass_client/api/workflow_instances_api.rb +153 -0
  20. data/lib/emass_client/api_client.rb +389 -0
  21. data/lib/emass_client/api_error.rb +57 -0
  22. data/lib/emass_client/configuration.rb +224 -0
  23. data/lib/emass_client/models/artifacts_delete.rb +201 -0
  24. data/lib/emass_client/models/artifacts_delete_inner.rb +207 -0
  25. data/lib/emass_client/models/artifacts_get.rb +383 -0
  26. data/lib/emass_client/models/artifacts_request_put_body.rb +363 -0
  27. data/lib/emass_client/models/artifacts_response_del.rb +217 -0
  28. data/lib/emass_client/models/artifacts_response_del_data.rb +225 -0
  29. data/lib/emass_client/models/artifacts_response_get.rb +217 -0
  30. data/lib/emass_client/models/artifacts_response_put_post.rb +217 -0
  31. data/lib/emass_client/models/cac_get.rb +301 -0
  32. data/lib/emass_client/models/cac_request_post_body.rb +217 -0
  33. data/lib/emass_client/models/cac_response_get.rb +217 -0
  34. data/lib/emass_client/models/cac_response_post.rb +217 -0
  35. data/lib/emass_client/models/cac_response_post_data.rb +225 -0
  36. data/lib/emass_client/models/cmmc_get.rb +398 -0
  37. data/lib/emass_client/models/cmmc_response_get.rb +217 -0
  38. data/lib/emass_client/models/connectivity_ccsd.rb +217 -0
  39. data/lib/emass_client/models/controls_get.rb +663 -0
  40. data/lib/emass_client/models/controls_put.rb +227 -0
  41. data/lib/emass_client/models/controls_request_put_body.rb +606 -0
  42. data/lib/emass_client/models/controls_response_get.rb +217 -0
  43. data/lib/emass_client/models/controls_response_put.rb +217 -0
  44. data/lib/emass_client/models/definition_transitions.rb +274 -0
  45. data/lib/emass_client/models/delete_milestone.rb +212 -0
  46. data/lib/emass_client/models/delete_poam.rb +212 -0
  47. data/lib/emass_client/models/empty200_response.rb +197 -0
  48. data/lib/emass_client/models/error.rb +225 -0
  49. data/lib/emass_client/models/instances_transitions.rb +327 -0
  50. data/lib/emass_client/models/milestone_response_get.rb +217 -0
  51. data/lib/emass_client/models/milestone_response_post.rb +217 -0
  52. data/lib/emass_client/models/milestone_response_put.rb +217 -0
  53. data/lib/emass_client/models/milestones_delete.rb +197 -0
  54. data/lib/emass_client/models/milestones_get.rb +291 -0
  55. data/lib/emass_client/models/milestones_post.rb +197 -0
  56. data/lib/emass_client/models/milestones_put.rb +197 -0
  57. data/lib/emass_client/models/milestones_put_post_delete.rb +247 -0
  58. data/lib/emass_client/models/milestones_request_post_body.rb +242 -0
  59. data/lib/emass_client/models/milestones_request_put_body.rb +242 -0
  60. data/lib/emass_client/models/milestones_required_post.rb +227 -0
  61. data/lib/emass_client/models/milestones_required_put.rb +242 -0
  62. data/lib/emass_client/models/model_200.rb +208 -0
  63. data/lib/emass_client/models/model_201.rb +206 -0
  64. data/lib/emass_client/models/model_201_meta.rb +219 -0
  65. data/lib/emass_client/models/model_400.rb +206 -0
  66. data/lib/emass_client/models/model_400_meta.rb +219 -0
  67. data/lib/emass_client/models/model_400_response.rb +206 -0
  68. data/lib/emass_client/models/model_401.rb +206 -0
  69. data/lib/emass_client/models/model_401_meta.rb +219 -0
  70. data/lib/emass_client/models/model_403.rb +206 -0
  71. data/lib/emass_client/models/model_403_meta.rb +219 -0
  72. data/lib/emass_client/models/model_404.rb +219 -0
  73. data/lib/emass_client/models/model_404_response.rb +206 -0
  74. data/lib/emass_client/models/model_405.rb +206 -0
  75. data/lib/emass_client/models/model_405_meta.rb +219 -0
  76. data/lib/emass_client/models/model_411.rb +206 -0
  77. data/lib/emass_client/models/model_411_meta.rb +219 -0
  78. data/lib/emass_client/models/model_490.rb +206 -0
  79. data/lib/emass_client/models/model_490_meta.rb +219 -0
  80. data/lib/emass_client/models/model_500.rb +206 -0
  81. data/lib/emass_client/models/model_500_meta.rb +219 -0
  82. data/lib/emass_client/models/pac_get.rb +311 -0
  83. data/lib/emass_client/models/pac_post.rb +259 -0
  84. data/lib/emass_client/models/pac_request_post_body.rb +261 -0
  85. data/lib/emass_client/models/pac_response_get.rb +217 -0
  86. data/lib/emass_client/models/pac_response_post.rb +217 -0
  87. data/lib/emass_client/models/poam_delete.rb +197 -0
  88. data/lib/emass_client/models/poam_get.rb +646 -0
  89. data/lib/emass_client/models/poam_post.rb +197 -0
  90. data/lib/emass_client/models/poam_post_put_del.rb +237 -0
  91. data/lib/emass_client/models/poam_put.rb +197 -0
  92. data/lib/emass_client/models/poam_request_post_body.rb +197 -0
  93. data/lib/emass_client/models/poam_request_put_body.rb +197 -0
  94. data/lib/emass_client/models/poam_required_post.rb +564 -0
  95. data/lib/emass_client/models/poam_required_put.rb +594 -0
  96. data/lib/emass_client/models/poam_response_delete.rb +217 -0
  97. data/lib/emass_client/models/poam_response_get.rb +217 -0
  98. data/lib/emass_client/models/poam_response_post.rb +217 -0
  99. data/lib/emass_client/models/poam_response_put.rb +217 -0
  100. data/lib/emass_client/models/register.rb +215 -0
  101. data/lib/emass_client/models/register_data.rb +206 -0
  102. data/lib/emass_client/models/register_user_request_post_body.rb +211 -0
  103. data/lib/emass_client/models/role_category.rb +272 -0
  104. data/lib/emass_client/models/roles.rb +274 -0
  105. data/lib/emass_client/models/ssps.rb +227 -0
  106. data/lib/emass_client/models/stage.rb +252 -0
  107. data/lib/emass_client/models/static_code_application.rb +303 -0
  108. data/lib/emass_client/models/static_code_request_post_body.rb +197 -0
  109. data/lib/emass_client/models/static_code_required_post.rb +217 -0
  110. data/lib/emass_client/models/static_code_required_post_application.rb +217 -0
  111. data/lib/emass_client/models/success200_response.rb +217 -0
  112. data/lib/emass_client/models/system_id_artifacts_body.rb +284 -0
  113. data/lib/emass_client/models/system_response.rb +217 -0
  114. data/lib/emass_client/models/system_roles_category_response.rb +217 -0
  115. data/lib/emass_client/models/system_roles_response.rb +217 -0
  116. data/lib/emass_client/models/system_roles_response_data.rb +219 -0
  117. data/lib/emass_client/models/systems.rb +1137 -0
  118. data/lib/emass_client/models/test.rb +215 -0
  119. data/lib/emass_client/models/test_data.rb +206 -0
  120. data/lib/emass_client/models/test_results_get.rb +333 -0
  121. data/lib/emass_client/models/test_results_post.rb +227 -0
  122. data/lib/emass_client/models/test_results_request_post_body.rb +306 -0
  123. data/lib/emass_client/models/test_results_response_get.rb +217 -0
  124. data/lib/emass_client/models/test_results_response_post.rb +217 -0
  125. data/lib/emass_client/models/users.rb +224 -0
  126. data/lib/emass_client/models/workflow_definition_get.rb +282 -0
  127. data/lib/emass_client/models/workflow_definition_response_get.rb +217 -0
  128. data/lib/emass_client/models/workflow_instances_get.rb +368 -0
  129. data/lib/emass_client/models/workflow_instances_response_get.rb +217 -0
  130. data/lib/emass_client/version.rb +14 -0
  131. data/lib/emass_client.rb +161 -0
  132. metadata +259 -0
@@ -0,0 +1,84 @@
1
+ =begin
2
+ #Enterprise Mission Assurance Support Service (eMASS)
3
+
4
+ #The Enterprise Mission Assurance Support Service (eMASS) Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The `emasser` is a command-line interface (CLI) tool that implements all of the eMASS endpoints defined in the eMASS REST API v3.2, dated October 21, 2021.</br><br> <strong>Register CLI</strong></br> New users will need to register an API key with the eMASS development team prior to accessing the site for the first time. The eMASS REST API requires a client certificate (SSL/TLS, DoD PKI only) where {url}/api/register (POST) is used to register the client certificate.</br></br> Every call to the eMASS REST API will require the use of the agreed upon public key certificate and API key. The API key must be provided in the request header for all endpoint calls (api-key). If the service receives an untrusted certificate or API key, a 401 error response code will be returned along with an error message.</br></br> <strong>Available Request Headers:</strong></br> <table> <tr> <th align=left>key</th> <th align=left>Example Value</th> <th align=left>Description</th> </tr> <tr> <td>`api-key`</td> <td>api-key-provided-by-emass</td> <td>This API key must be provided in the request header for all endpoint calls</td> </tr> <tr> <td>`user-uid`</td> <td>USER.UID.KEY</td> <td>This User unique identifier key must be provided in the request header for all PUT, POST, and DELETE endpoint calls</td> </tr> <tr> <td></td><td></td> <td> Note: For DoD users this is the DoD ID Number (EIDIPI) on their DoD CAC </td> </tr> </table> </br><strong>Approve API Client for Actionable Requests</strong></br> Users are required to log-in to eMASS and grant permissions for a client to update data within eMASS on their behalf. This is only required for actionable requests (PUT, POST, DELETE). The Registration Endpoint and all GET requests can be accessed without completing this process with the correct permissions. Please note that leaving a field parameter blank (for PUT/POST requests) has the potential to clear information in the active eMASS records. To establish an account with eMASS and/or acquire an api-key/user-uid, contact one of the listed POC:
5
+
6
+ OpenAPI spec version: v3.2
7
+ Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 3.0.26
10
+ =end
11
+
12
+ module EmassClient
13
+ class StaticCodeScansApi
14
+ attr_accessor :api_client
15
+
16
+ def initialize(api_client = ApiClient.default)
17
+ @api_client = api_client
18
+ end
19
+ # Upload static code scans or Clear static code scans
20
+ # Upload or clear application scan findings into a system's `systemId` assets module. **Note:** To clear an application's findings, use only the field `clearFindings` as the Request body and set it to true.
21
+ # @param body Update an existing Artifact by Id
22
+ # @param system_id **System Id**: The unique system record identifier.
23
+ # @param [Hash] opts the optional parameters
24
+ # @return [Success200Response]
25
+ def add_static_code_scans_by_system_id(body, system_id, opts = {})
26
+ data, _status_code, _headers = add_static_code_scans_by_system_id_with_http_info(body, system_id, opts)
27
+ data
28
+ end
29
+
30
+ # Upload static code scans or Clear static code scans
31
+ # Upload or clear application scan findings into a system&#x27;s &#x60;systemId&#x60; assets module. **Note:** To clear an application&#x27;s findings, use only the field &#x60;clearFindings&#x60; as the Request body and set it to true.
32
+ # @param body Update an existing Artifact by Id
33
+ # @param system_id **System Id**: The unique system record identifier.
34
+ # @param [Hash] opts the optional parameters
35
+ # @return [Array<(Success200Response, Integer, Hash)>] Success200Response data, response status code and response headers
36
+ def add_static_code_scans_by_system_id_with_http_info(body, system_id, opts = {})
37
+ if @api_client.config.debugging
38
+ @api_client.config.logger.debug 'Calling API: StaticCodeScansApi.add_static_code_scans_by_system_id ...'
39
+ end
40
+ # verify the required parameter 'body' is set
41
+ if @api_client.config.client_side_validation && body.nil?
42
+ fail ArgumentError, "Missing the required parameter 'body' when calling StaticCodeScansApi.add_static_code_scans_by_system_id"
43
+ end
44
+ # verify the required parameter 'system_id' is set
45
+ if @api_client.config.client_side_validation && system_id.nil?
46
+ fail ArgumentError, "Missing the required parameter 'system_id' when calling StaticCodeScansApi.add_static_code_scans_by_system_id"
47
+ end
48
+ # resource path
49
+ local_var_path = '/api/systems/{systemId}/static-code-scans'.sub('{' + 'systemId' + '}', system_id.to_s)
50
+
51
+ # query parameters
52
+ query_params = opts[:query_params] || {}
53
+
54
+ # header parameters
55
+ header_params = opts[:header_params] || {}
56
+ # HTTP header 'Accept' (if needed)
57
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
58
+ # HTTP header 'Content-Type'
59
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
60
+
61
+ # form parameters
62
+ form_params = opts[:form_params] || {}
63
+
64
+ # http body (model)
65
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
66
+
67
+ return_type = opts[:return_type] || 'Success200Response'
68
+
69
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
70
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
71
+ :header_params => header_params,
72
+ :query_params => query_params,
73
+ :form_params => form_params,
74
+ :body => post_body,
75
+ :auth_names => auth_names,
76
+ :return_type => return_type)
77
+
78
+ if @api_client.config.debugging
79
+ @api_client.config.logger.debug "API called: StaticCodeScansApi#add_static_code_scans_by_system_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
80
+ end
81
+ return data, status_code, headers
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,150 @@
1
+ =begin
2
+ #Enterprise Mission Assurance Support Service (eMASS)
3
+
4
+ #The Enterprise Mission Assurance Support Service (eMASS) Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The `emasser` is a command-line interface (CLI) tool that implements all of the eMASS endpoints defined in the eMASS REST API v3.2, dated October 21, 2021.</br><br> <strong>Register CLI</strong></br> New users will need to register an API key with the eMASS development team prior to accessing the site for the first time. The eMASS REST API requires a client certificate (SSL/TLS, DoD PKI only) where {url}/api/register (POST) is used to register the client certificate.</br></br> Every call to the eMASS REST API will require the use of the agreed upon public key certificate and API key. The API key must be provided in the request header for all endpoint calls (api-key). If the service receives an untrusted certificate or API key, a 401 error response code will be returned along with an error message.</br></br> <strong>Available Request Headers:</strong></br> <table> <tr> <th align=left>key</th> <th align=left>Example Value</th> <th align=left>Description</th> </tr> <tr> <td>`api-key`</td> <td>api-key-provided-by-emass</td> <td>This API key must be provided in the request header for all endpoint calls</td> </tr> <tr> <td>`user-uid`</td> <td>USER.UID.KEY</td> <td>This User unique identifier key must be provided in the request header for all PUT, POST, and DELETE endpoint calls</td> </tr> <tr> <td></td><td></td> <td> Note: For DoD users this is the DoD ID Number (EIDIPI) on their DoD CAC </td> </tr> </table> </br><strong>Approve API Client for Actionable Requests</strong></br> Users are required to log-in to eMASS and grant permissions for a client to update data within eMASS on their behalf. This is only required for actionable requests (PUT, POST, DELETE). The Registration Endpoint and all GET requests can be accessed without completing this process with the correct permissions. Please note that leaving a field parameter blank (for PUT/POST requests) has the potential to clear information in the active eMASS records. To establish an account with eMASS and/or acquire an api-key/user-uid, contact one of the listed POC:
5
+
6
+ OpenAPI spec version: v3.2
7
+ Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 3.0.26
10
+ =end
11
+
12
+ module EmassClient
13
+ class SystemRolesApi
14
+ attr_accessor :api_client
15
+
16
+ def initialize(api_client = ApiClient.default)
17
+ @api_client = api_client
18
+ end
19
+ # Get available roles
20
+ # Returns all available roles
21
+ # @param [Hash] opts the optional parameters
22
+ # @return [SystemRolesResponse]
23
+ def get_system_roles(opts = {})
24
+ data, _status_code, _headers = get_system_roles_with_http_info(opts)
25
+ data
26
+ end
27
+
28
+ # Get available roles
29
+ # Returns all available roles
30
+ # @param [Hash] opts the optional parameters
31
+ # @return [Array<(SystemRolesResponse, Integer, Hash)>] SystemRolesResponse data, response status code and response headers
32
+ def get_system_roles_with_http_info(opts = {})
33
+ if @api_client.config.debugging
34
+ @api_client.config.logger.debug 'Calling API: SystemRolesApi.get_system_roles ...'
35
+ end
36
+ # resource path
37
+ local_var_path = '/api/system-roles'
38
+
39
+ # query parameters
40
+ query_params = opts[:query_params] || {}
41
+
42
+ # header parameters
43
+ header_params = opts[:header_params] || {}
44
+ # HTTP header 'Accept' (if needed)
45
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
46
+
47
+ # form parameters
48
+ form_params = opts[:form_params] || {}
49
+
50
+ # http body (model)
51
+ post_body = opts[:body]
52
+
53
+ return_type = opts[:return_type] || 'SystemRolesResponse'
54
+
55
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
56
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
57
+ :header_params => header_params,
58
+ :query_params => query_params,
59
+ :form_params => form_params,
60
+ :body => post_body,
61
+ :auth_names => auth_names,
62
+ :return_type => return_type)
63
+
64
+ if @api_client.config.debugging
65
+ @api_client.config.logger.debug "API called: SystemRolesApi#get_system_roles\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
66
+ end
67
+ return data, status_code, headers
68
+ end
69
+ # Get system roles
70
+ # Returns the role(s) data matching parameters.
71
+ # @param role_category **Role Category**: The system role category been queried
72
+ # @param role **Role**: Accepts single value from options available at base system-roles endpoint e.g., SCA.
73
+ # @param [Hash] opts the optional parameters
74
+ # @option opts [String] :policy **System Policy**: Filter query by system policy. If no value is specified and more than one policy is available, the default return is the RMF policy information. (default to rmf)
75
+ # @option opts [BOOLEAN] :include_decommissioned **Include Decommissioned Systems**: Indicates if decommissioned systems are retrieved. If no value is specified, the default returns true to include decommissioned systems. (default to true)
76
+ # @return [SystemRolesCategoryResponse]
77
+ def get_system_roles_by_category_id(role_category, role, opts = {})
78
+ data, _status_code, _headers = get_system_roles_by_category_id_with_http_info(role_category, role, opts)
79
+ data
80
+ end
81
+
82
+ # Get system roles
83
+ # Returns the role(s) data matching parameters.
84
+ # @param role_category **Role Category**: The system role category been queried
85
+ # @param role **Role**: Accepts single value from options available at base system-roles endpoint e.g., SCA.
86
+ # @param [Hash] opts the optional parameters
87
+ # @option opts [String] :policy **System Policy**: Filter query by system policy. If no value is specified and more than one policy is available, the default return is the RMF policy information.
88
+ # @option opts [BOOLEAN] :include_decommissioned **Include Decommissioned Systems**: Indicates if decommissioned systems are retrieved. If no value is specified, the default returns true to include decommissioned systems.
89
+ # @return [Array<(SystemRolesCategoryResponse, Integer, Hash)>] SystemRolesCategoryResponse data, response status code and response headers
90
+ def get_system_roles_by_category_id_with_http_info(role_category, role, opts = {})
91
+ if @api_client.config.debugging
92
+ @api_client.config.logger.debug 'Calling API: SystemRolesApi.get_system_roles_by_category_id ...'
93
+ end
94
+ # verify the required parameter 'role_category' is set
95
+ if @api_client.config.client_side_validation && role_category.nil?
96
+ fail ArgumentError, "Missing the required parameter 'role_category' when calling SystemRolesApi.get_system_roles_by_category_id"
97
+ end
98
+ # verify enum value
99
+ if @api_client.config.client_side_validation && !['CAC', 'PAC', 'Other'].include?(role_category)
100
+ fail ArgumentError, "invalid value for 'role_category', must be one of CAC, PAC, Other"
101
+ end
102
+ # verify the required parameter 'role' is set
103
+ if @api_client.config.client_side_validation && role.nil?
104
+ fail ArgumentError, "Missing the required parameter 'role' when calling SystemRolesApi.get_system_roles_by_category_id"
105
+ end
106
+ # verify enum value
107
+ if @api_client.config.client_side_validation && !['AO', 'Auditor', 'Artifact Manager', 'C&A Team', 'IAO', 'ISSO', 'PM/IAM', 'SCA', 'User Rep', 'Validator'].include?(role)
108
+ fail ArgumentError, "invalid value for 'role', must be one of AO, Auditor, Artifact Manager, C&A Team, IAO, ISSO, PM/IAM, SCA, User Rep, Validator"
109
+ end
110
+ if @api_client.config.client_side_validation && opts[:'policy'] && !['diacap', 'rmf', 'reporting'].include?(opts[:'policy'])
111
+ fail ArgumentError, 'invalid value for "policy", must be one of diacap, rmf, reporting'
112
+ end
113
+ # resource path
114
+ local_var_path = '/api/system-roles/{roleCategory}'.sub('{' + 'roleCategory' + '}', role_category.to_s)
115
+
116
+ # query parameters
117
+ query_params = opts[:query_params] || {}
118
+ query_params[:'role'] = role
119
+ query_params[:'policy'] = opts[:'policy'] if !opts[:'policy'].nil?
120
+ query_params[:'includeDecommissioned'] = opts[:'include_decommissioned'] if !opts[:'include_decommissioned'].nil?
121
+
122
+ # header parameters
123
+ header_params = opts[:header_params] || {}
124
+ # HTTP header 'Accept' (if needed)
125
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
126
+
127
+ # form parameters
128
+ form_params = opts[:form_params] || {}
129
+
130
+ # http body (model)
131
+ post_body = opts[:body]
132
+
133
+ return_type = opts[:return_type] || 'SystemRolesCategoryResponse'
134
+
135
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
136
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
137
+ :header_params => header_params,
138
+ :query_params => query_params,
139
+ :form_params => form_params,
140
+ :body => post_body,
141
+ :auth_names => auth_names,
142
+ :return_type => return_type)
143
+
144
+ if @api_client.config.debugging
145
+ @api_client.config.logger.debug "API called: SystemRolesApi#get_system_roles_by_category_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
146
+ end
147
+ return data, status_code, headers
148
+ end
149
+ end
150
+ end
@@ -0,0 +1,162 @@
1
+ =begin
2
+ #Enterprise Mission Assurance Support Service (eMASS)
3
+
4
+ #The Enterprise Mission Assurance Support Service (eMASS) Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The `emasser` is a command-line interface (CLI) tool that implements all of the eMASS endpoints defined in the eMASS REST API v3.2, dated October 21, 2021.</br><br> <strong>Register CLI</strong></br> New users will need to register an API key with the eMASS development team prior to accessing the site for the first time. The eMASS REST API requires a client certificate (SSL/TLS, DoD PKI only) where {url}/api/register (POST) is used to register the client certificate.</br></br> Every call to the eMASS REST API will require the use of the agreed upon public key certificate and API key. The API key must be provided in the request header for all endpoint calls (api-key). If the service receives an untrusted certificate or API key, a 401 error response code will be returned along with an error message.</br></br> <strong>Available Request Headers:</strong></br> <table> <tr> <th align=left>key</th> <th align=left>Example Value</th> <th align=left>Description</th> </tr> <tr> <td>`api-key`</td> <td>api-key-provided-by-emass</td> <td>This API key must be provided in the request header for all endpoint calls</td> </tr> <tr> <td>`user-uid`</td> <td>USER.UID.KEY</td> <td>This User unique identifier key must be provided in the request header for all PUT, POST, and DELETE endpoint calls</td> </tr> <tr> <td></td><td></td> <td> Note: For DoD users this is the DoD ID Number (EIDIPI) on their DoD CAC </td> </tr> </table> </br><strong>Approve API Client for Actionable Requests</strong></br> Users are required to log-in to eMASS and grant permissions for a client to update data within eMASS on their behalf. This is only required for actionable requests (PUT, POST, DELETE). The Registration Endpoint and all GET requests can be accessed without completing this process with the correct permissions. Please note that leaving a field parameter blank (for PUT/POST requests) has the potential to clear information in the active eMASS records. To establish an account with eMASS and/or acquire an api-key/user-uid, contact one of the listed POC:
5
+
6
+ OpenAPI spec version: v3.2
7
+ Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 3.0.26
10
+ =end
11
+
12
+ module EmassClient
13
+ class SystemsApi
14
+ attr_accessor :api_client
15
+
16
+ def initialize(api_client = ApiClient.default)
17
+ @api_client = api_client
18
+ end
19
+ # Get system information for a specific system
20
+ # Returns the system matching provided parameters
21
+ # @param system_id **System Id**: The unique system record identifier.
22
+ # @param [Hash] opts the optional parameters
23
+ # @option opts [BOOLEAN] :include_package **Include Package**: Indicates if additional packages information is retrieved for queried system. (default to true)
24
+ # @option opts [String] :policy **System Policy**: Filter query by system policy. If no value is specified and more than one policy is available, the default return is the RMF policy information. (default to rmf)
25
+ # @return [SystemResponse]
26
+ def get_system(system_id, opts = {})
27
+ data, _status_code, _headers = get_system_with_http_info(system_id, opts)
28
+ data
29
+ end
30
+
31
+ # Get system information for a specific system
32
+ # Returns the system matching provided parameters
33
+ # @param system_id **System Id**: The unique system record identifier.
34
+ # @param [Hash] opts the optional parameters
35
+ # @option opts [BOOLEAN] :include_package **Include Package**: Indicates if additional packages information is retrieved for queried system.
36
+ # @option opts [String] :policy **System Policy**: Filter query by system policy. If no value is specified and more than one policy is available, the default return is the RMF policy information.
37
+ # @return [Array<(SystemResponse, Integer, Hash)>] SystemResponse data, response status code and response headers
38
+ def get_system_with_http_info(system_id, opts = {})
39
+ if @api_client.config.debugging
40
+ @api_client.config.logger.debug 'Calling API: SystemsApi.get_system ...'
41
+ end
42
+ # verify the required parameter 'system_id' is set
43
+ if @api_client.config.client_side_validation && system_id.nil?
44
+ fail ArgumentError, "Missing the required parameter 'system_id' when calling SystemsApi.get_system"
45
+ end
46
+ if @api_client.config.client_side_validation && opts[:'policy'] && !['diacap', 'rmf', 'reporting'].include?(opts[:'policy'])
47
+ fail ArgumentError, 'invalid value for "policy", must be one of diacap, rmf, reporting'
48
+ end
49
+ # resource path
50
+ local_var_path = '/api/systems/{systemId}'.sub('{' + 'systemId' + '}', system_id.to_s)
51
+
52
+ # query parameters
53
+ query_params = opts[:query_params] || {}
54
+ query_params[:'includePackage'] = opts[:'include_package'] if !opts[:'include_package'].nil?
55
+ query_params[:'policy'] = opts[:'policy'] if !opts[:'policy'].nil?
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
61
+
62
+ # form parameters
63
+ form_params = opts[:form_params] || {}
64
+
65
+ # http body (model)
66
+ post_body = opts[:body]
67
+
68
+ return_type = opts[:return_type] || 'SystemResponse'
69
+
70
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
71
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
72
+ :header_params => header_params,
73
+ :query_params => query_params,
74
+ :form_params => form_params,
75
+ :body => post_body,
76
+ :auth_names => auth_names,
77
+ :return_type => return_type)
78
+
79
+ if @api_client.config.debugging
80
+ @api_client.config.logger.debug "API called: SystemsApi#get_system\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
81
+ end
82
+ return data, status_code, headers
83
+ end
84
+ # Get system information
85
+ # Returns all system(s) that match the query parameters
86
+ # @param [Hash] opts the optional parameters
87
+ # @option opts [BOOLEAN] :include_package **Include Package**: Indicates if additional packages information is retrieved for queried system. (default to true)
88
+ # @option opts [String] :registration_type **Registration Type**: Filter record by selected registration type (single value or comma delimited values). *Available values:* assessAndAuthorize, assessOnly, guest, regular, functional, cloudServiceProvider, commonControlProvider (default to regular)
89
+ # @option opts [String] :ditpr_id **DITPR ID**: Filter query by DoD Information Technology (IT) Portfolio Repository (DITPR).
90
+ # @option opts [String] :coams_id **COAMS ID**: Filter query by Cyber Operational Attributes Management System (COAMS).
91
+ # @option opts [String] :policy **System Policy**: Filter query by system policy. If no value is specified and more than one policy is available, the default return is the RMF policy information. (default to rmf)
92
+ # @option opts [BOOLEAN] :include_ditpr_metrics **Include DITPR**: Indicates if DITPR metrics are retrieved. This query string parameter can only be used in conjunction with the following parameters:&lt;br&gt; &lt;ul&gt; &lt;li&gt;registrationType&lt;/li&gt; &lt;li&gt;policy&lt;/li&gt; &lt;/ul&gt; (default to false)
93
+ # @option opts [BOOLEAN] :include_decommissioned **Include Decommissioned Systems**: Indicates if decommissioned systems are retrieved. If no value is specified, the default returns true to include decommissioned systems. (default to true)
94
+ # @option opts [BOOLEAN] :reports_for_scorecard **DoD Cyber Hygiene Scorecard**: Indicates if the system reports to the DoD Cyber Hygiene Scorecard. (default to true)
95
+ # @return [SystemResponse]
96
+ def get_systems(opts = {})
97
+ data, _status_code, _headers = get_systems_with_http_info(opts)
98
+ data
99
+ end
100
+
101
+ # Get system information
102
+ # Returns all system(s) that match the query parameters
103
+ # @param [Hash] opts the optional parameters
104
+ # @option opts [BOOLEAN] :include_package **Include Package**: Indicates if additional packages information is retrieved for queried system.
105
+ # @option opts [String] :registration_type **Registration Type**: Filter record by selected registration type (single value or comma delimited values). *Available values:* assessAndAuthorize, assessOnly, guest, regular, functional, cloudServiceProvider, commonControlProvider
106
+ # @option opts [String] :ditpr_id **DITPR ID**: Filter query by DoD Information Technology (IT) Portfolio Repository (DITPR).
107
+ # @option opts [String] :coams_id **COAMS ID**: Filter query by Cyber Operational Attributes Management System (COAMS).
108
+ # @option opts [String] :policy **System Policy**: Filter query by system policy. If no value is specified and more than one policy is available, the default return is the RMF policy information.
109
+ # @option opts [BOOLEAN] :include_ditpr_metrics **Include DITPR**: Indicates if DITPR metrics are retrieved. This query string parameter can only be used in conjunction with the following parameters:&lt;br&gt; &lt;ul&gt; &lt;li&gt;registrationType&lt;/li&gt; &lt;li&gt;policy&lt;/li&gt; &lt;/ul&gt;
110
+ # @option opts [BOOLEAN] :include_decommissioned **Include Decommissioned Systems**: Indicates if decommissioned systems are retrieved. If no value is specified, the default returns true to include decommissioned systems.
111
+ # @option opts [BOOLEAN] :reports_for_scorecard **DoD Cyber Hygiene Scorecard**: Indicates if the system reports to the DoD Cyber Hygiene Scorecard.
112
+ # @return [Array<(SystemResponse, Integer, Hash)>] SystemResponse data, response status code and response headers
113
+ def get_systems_with_http_info(opts = {})
114
+ if @api_client.config.debugging
115
+ @api_client.config.logger.debug 'Calling API: SystemsApi.get_systems ...'
116
+ end
117
+ if @api_client.config.client_side_validation && opts[:'policy'] && !['diacap', 'rmf', 'reporting'].include?(opts[:'policy'])
118
+ fail ArgumentError, 'invalid value for "policy", must be one of diacap, rmf, reporting'
119
+ end
120
+ # resource path
121
+ local_var_path = '/api/systems'
122
+
123
+ # query parameters
124
+ query_params = opts[:query_params] || {}
125
+ query_params[:'includePackage'] = opts[:'include_package'] if !opts[:'include_package'].nil?
126
+ query_params[:'registrationType'] = opts[:'registration_type'] if !opts[:'registration_type'].nil?
127
+ query_params[:'ditprId'] = opts[:'ditpr_id'] if !opts[:'ditpr_id'].nil?
128
+ query_params[:'coamsId'] = opts[:'coams_id'] if !opts[:'coams_id'].nil?
129
+ query_params[:'policy'] = opts[:'policy'] if !opts[:'policy'].nil?
130
+ query_params[:'includeDitprMetrics'] = opts[:'include_ditpr_metrics'] if !opts[:'include_ditpr_metrics'].nil?
131
+ query_params[:'includeDecommissioned'] = opts[:'include_decommissioned'] if !opts[:'include_decommissioned'].nil?
132
+ query_params[:'reportsForScorecard'] = opts[:'reports_for_scorecard'] if !opts[:'reports_for_scorecard'].nil?
133
+
134
+ # header parameters
135
+ header_params = opts[:header_params] || {}
136
+ # HTTP header 'Accept' (if needed)
137
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
138
+
139
+ # form parameters
140
+ form_params = opts[:form_params] || {}
141
+
142
+ # http body (model)
143
+ post_body = opts[:body]
144
+
145
+ return_type = opts[:return_type] || 'SystemResponse'
146
+
147
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
148
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
149
+ :header_params => header_params,
150
+ :query_params => query_params,
151
+ :form_params => form_params,
152
+ :body => post_body,
153
+ :auth_names => auth_names,
154
+ :return_type => return_type)
155
+
156
+ if @api_client.config.debugging
157
+ @api_client.config.logger.debug "API called: SystemsApi#get_systems\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
158
+ end
159
+ return data, status_code, headers
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,70 @@
1
+ =begin
2
+ #Enterprise Mission Assurance Support Service (eMASS)
3
+
4
+ #The Enterprise Mission Assurance Support Service (eMASS) Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The `emasser` is a command-line interface (CLI) tool that implements all of the eMASS endpoints defined in the eMASS REST API v3.2, dated October 21, 2021.</br><br> <strong>Register CLI</strong></br> New users will need to register an API key with the eMASS development team prior to accessing the site for the first time. The eMASS REST API requires a client certificate (SSL/TLS, DoD PKI only) where {url}/api/register (POST) is used to register the client certificate.</br></br> Every call to the eMASS REST API will require the use of the agreed upon public key certificate and API key. The API key must be provided in the request header for all endpoint calls (api-key). If the service receives an untrusted certificate or API key, a 401 error response code will be returned along with an error message.</br></br> <strong>Available Request Headers:</strong></br> <table> <tr> <th align=left>key</th> <th align=left>Example Value</th> <th align=left>Description</th> </tr> <tr> <td>`api-key`</td> <td>api-key-provided-by-emass</td> <td>This API key must be provided in the request header for all endpoint calls</td> </tr> <tr> <td>`user-uid`</td> <td>USER.UID.KEY</td> <td>This User unique identifier key must be provided in the request header for all PUT, POST, and DELETE endpoint calls</td> </tr> <tr> <td></td><td></td> <td> Note: For DoD users this is the DoD ID Number (EIDIPI) on their DoD CAC </td> </tr> </table> </br><strong>Approve API Client for Actionable Requests</strong></br> Users are required to log-in to eMASS and grant permissions for a client to update data within eMASS on their behalf. This is only required for actionable requests (PUT, POST, DELETE). The Registration Endpoint and all GET requests can be accessed without completing this process with the correct permissions. Please note that leaving a field parameter blank (for PUT/POST requests) has the potential to clear information in the active eMASS records. To establish an account with eMASS and/or acquire an api-key/user-uid, contact one of the listed POC:
5
+
6
+ OpenAPI spec version: v3.2
7
+ Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 3.0.26
10
+ =end
11
+
12
+ module EmassClient
13
+ class TestApi
14
+ attr_accessor :api_client
15
+
16
+ def initialize(api_client = ApiClient.default)
17
+ @api_client = api_client
18
+ end
19
+ # Test connection to the API
20
+ # Returns endpoint call status
21
+ # @param [Hash] opts the optional parameters
22
+ # @return [Test]
23
+ def test_connection(opts = {})
24
+ data, _status_code, _headers = test_connection_with_http_info(opts)
25
+ data
26
+ end
27
+
28
+ # Test connection to the API
29
+ # Returns endpoint call status
30
+ # @param [Hash] opts the optional parameters
31
+ # @return [Array<(Test, Integer, Hash)>] Test data, response status code and response headers
32
+ def test_connection_with_http_info(opts = {})
33
+ if @api_client.config.debugging
34
+ @api_client.config.logger.debug 'Calling API: TestApi.test_connection ...'
35
+ end
36
+ # resource path
37
+ local_var_path = '/api'
38
+
39
+ # query parameters
40
+ query_params = opts[:query_params] || {}
41
+
42
+ # header parameters
43
+ header_params = opts[:header_params] || {}
44
+ # HTTP header 'Accept' (if needed)
45
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
46
+
47
+ # form parameters
48
+ form_params = opts[:form_params] || {}
49
+
50
+ # http body (model)
51
+ post_body = opts[:body]
52
+
53
+ return_type = opts[:return_type] || 'Test'
54
+
55
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
56
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
57
+ :header_params => header_params,
58
+ :query_params => query_params,
59
+ :form_params => form_params,
60
+ :body => post_body,
61
+ :auth_names => auth_names,
62
+ :return_type => return_type)
63
+
64
+ if @api_client.config.debugging
65
+ @api_client.config.logger.debug "API called: TestApi#test_connection\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
66
+ end
67
+ return data, status_code, headers
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,149 @@
1
+ =begin
2
+ #Enterprise Mission Assurance Support Service (eMASS)
3
+
4
+ #The Enterprise Mission Assurance Support Service (eMASS) Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The `emasser` is a command-line interface (CLI) tool that implements all of the eMASS endpoints defined in the eMASS REST API v3.2, dated October 21, 2021.</br><br> <strong>Register CLI</strong></br> New users will need to register an API key with the eMASS development team prior to accessing the site for the first time. The eMASS REST API requires a client certificate (SSL/TLS, DoD PKI only) where {url}/api/register (POST) is used to register the client certificate.</br></br> Every call to the eMASS REST API will require the use of the agreed upon public key certificate and API key. The API key must be provided in the request header for all endpoint calls (api-key). If the service receives an untrusted certificate or API key, a 401 error response code will be returned along with an error message.</br></br> <strong>Available Request Headers:</strong></br> <table> <tr> <th align=left>key</th> <th align=left>Example Value</th> <th align=left>Description</th> </tr> <tr> <td>`api-key`</td> <td>api-key-provided-by-emass</td> <td>This API key must be provided in the request header for all endpoint calls</td> </tr> <tr> <td>`user-uid`</td> <td>USER.UID.KEY</td> <td>This User unique identifier key must be provided in the request header for all PUT, POST, and DELETE endpoint calls</td> </tr> <tr> <td></td><td></td> <td> Note: For DoD users this is the DoD ID Number (EIDIPI) on their DoD CAC </td> </tr> </table> </br><strong>Approve API Client for Actionable Requests</strong></br> Users are required to log-in to eMASS and grant permissions for a client to update data within eMASS on their behalf. This is only required for actionable requests (PUT, POST, DELETE). The Registration Endpoint and all GET requests can be accessed without completing this process with the correct permissions. Please note that leaving a field parameter blank (for PUT/POST requests) has the potential to clear information in the active eMASS records. To establish an account with eMASS and/or acquire an api-key/user-uid, contact one of the listed POC:
5
+
6
+ OpenAPI spec version: v3.2
7
+ Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 3.0.26
10
+ =end
11
+
12
+ module EmassClient
13
+ class TestResultsApi
14
+ attr_accessor :api_client
15
+
16
+ def initialize(api_client = ApiClient.default)
17
+ @api_client = api_client
18
+ end
19
+ # Add one or many test results in a system
20
+ # Adds test results for given `systemId` **Request Body Required Fields** - `cci` - `testedBy` - `testDate` - `description` - `complianceStatus`
21
+ # @param body Update an existing control by Id
22
+ # @param system_id **System Id**: The unique system record identifier.
23
+ # @param [Hash] opts the optional parameters
24
+ # @return [TestResultsResponsePost]
25
+ def add_test_results_by_system_id(body, system_id, opts = {})
26
+ data, _status_code, _headers = add_test_results_by_system_id_with_http_info(body, system_id, opts)
27
+ data
28
+ end
29
+
30
+ # Add one or many test results in a system
31
+ # Adds test results for given &#x60;systemId&#x60; **Request Body Required Fields** - &#x60;cci&#x60; - &#x60;testedBy&#x60; - &#x60;testDate&#x60; - &#x60;description&#x60; - &#x60;complianceStatus&#x60;
32
+ # @param body Update an existing control by Id
33
+ # @param system_id **System Id**: The unique system record identifier.
34
+ # @param [Hash] opts the optional parameters
35
+ # @return [Array<(TestResultsResponsePost, Integer, Hash)>] TestResultsResponsePost data, response status code and response headers
36
+ def add_test_results_by_system_id_with_http_info(body, system_id, opts = {})
37
+ if @api_client.config.debugging
38
+ @api_client.config.logger.debug 'Calling API: TestResultsApi.add_test_results_by_system_id ...'
39
+ end
40
+ # verify the required parameter 'body' is set
41
+ if @api_client.config.client_side_validation && body.nil?
42
+ fail ArgumentError, "Missing the required parameter 'body' when calling TestResultsApi.add_test_results_by_system_id"
43
+ end
44
+ # verify the required parameter 'system_id' is set
45
+ if @api_client.config.client_side_validation && system_id.nil?
46
+ fail ArgumentError, "Missing the required parameter 'system_id' when calling TestResultsApi.add_test_results_by_system_id"
47
+ end
48
+ # resource path
49
+ local_var_path = '/api/systems/{systemId}/test-results'.sub('{' + 'systemId' + '}', system_id.to_s)
50
+
51
+ # query parameters
52
+ query_params = opts[:query_params] || {}
53
+
54
+ # header parameters
55
+ header_params = opts[:header_params] || {}
56
+ # HTTP header 'Accept' (if needed)
57
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
58
+ # HTTP header 'Content-Type'
59
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
60
+
61
+ # form parameters
62
+ form_params = opts[:form_params] || {}
63
+
64
+ # http body (model)
65
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
66
+
67
+ return_type = opts[:return_type] || 'TestResultsResponsePost'
68
+
69
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
70
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
71
+ :header_params => header_params,
72
+ :query_params => query_params,
73
+ :form_params => form_params,
74
+ :body => post_body,
75
+ :auth_names => auth_names,
76
+ :return_type => return_type)
77
+
78
+ if @api_client.config.debugging
79
+ @api_client.config.logger.debug "API called: TestResultsApi#add_test_results_by_system_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
80
+ end
81
+ return data, status_code, headers
82
+ end
83
+ # Get one or many test results in a system
84
+ # Returns system test results information for matching parameters.<br>
85
+ # @param system_id **System Id**: The unique system record identifier.
86
+ # @param [Hash] opts the optional parameters
87
+ # @option opts [String] :control_acronyms **System Acronym**: Filter query by given system acronym (single or comma separated).
88
+ # @option opts [String] :ccis **CCI System**: Filter query by Control Correlation Identifiers (CCIs).
89
+ # @option opts [BOOLEAN] :latest_only **Latest Results Only**: Indicates that only the latest test resultes are retrieved (single or comma separated). (default to true)
90
+ # @return [TestResultsResponseGet]
91
+ def get_system_test_results(system_id, opts = {})
92
+ data, _status_code, _headers = get_system_test_results_with_http_info(system_id, opts)
93
+ data
94
+ end
95
+
96
+ # Get one or many test results in a system
97
+ # Returns system test results information for matching parameters.&lt;br&gt;
98
+ # @param system_id **System Id**: The unique system record identifier.
99
+ # @param [Hash] opts the optional parameters
100
+ # @option opts [String] :control_acronyms **System Acronym**: Filter query by given system acronym (single or comma separated).
101
+ # @option opts [String] :ccis **CCI System**: Filter query by Control Correlation Identifiers (CCIs).
102
+ # @option opts [BOOLEAN] :latest_only **Latest Results Only**: Indicates that only the latest test resultes are retrieved (single or comma separated).
103
+ # @return [Array<(TestResultsResponseGet, Integer, Hash)>] TestResultsResponseGet data, response status code and response headers
104
+ def get_system_test_results_with_http_info(system_id, opts = {})
105
+ if @api_client.config.debugging
106
+ @api_client.config.logger.debug 'Calling API: TestResultsApi.get_system_test_results ...'
107
+ end
108
+ # verify the required parameter 'system_id' is set
109
+ if @api_client.config.client_side_validation && system_id.nil?
110
+ fail ArgumentError, "Missing the required parameter 'system_id' when calling TestResultsApi.get_system_test_results"
111
+ end
112
+ # resource path
113
+ local_var_path = '/api/systems/{systemId}/test-results'.sub('{' + 'systemId' + '}', system_id.to_s)
114
+
115
+ # query parameters
116
+ query_params = opts[:query_params] || {}
117
+ query_params[:'controlAcronyms'] = opts[:'control_acronyms'] if !opts[:'control_acronyms'].nil?
118
+ query_params[:'ccis'] = opts[:'ccis'] if !opts[:'ccis'].nil?
119
+ query_params[:'latestOnly'] = opts[:'latest_only'] if !opts[:'latest_only'].nil?
120
+
121
+ # header parameters
122
+ header_params = opts[:header_params] || {}
123
+ # HTTP header 'Accept' (if needed)
124
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
125
+
126
+ # form parameters
127
+ form_params = opts[:form_params] || {}
128
+
129
+ # http body (model)
130
+ post_body = opts[:body]
131
+
132
+ return_type = opts[:return_type] || 'TestResultsResponseGet'
133
+
134
+ auth_names = opts[:auth_names] || ['apikey', 'mockType', 'userid']
135
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
136
+ :header_params => header_params,
137
+ :query_params => query_params,
138
+ :form_params => form_params,
139
+ :body => post_body,
140
+ :auth_names => auth_names,
141
+ :return_type => return_type)
142
+
143
+ if @api_client.config.debugging
144
+ @api_client.config.logger.debug "API called: TestResultsApi#get_system_test_results\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
145
+ end
146
+ return data, status_code, headers
147
+ end
148
+ end
149
+ end