emass_client 3.12.0 → 3.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +159 -129
  3. data/lib/emass_client/api/artifacts_api.rb +40 -48
  4. data/lib/emass_client/api/artifacts_export_api.rb +5 -5
  5. data/lib/emass_client/api/cac_api.rb +10 -10
  6. data/lib/emass_client/api/cloud_resource_results_api.rb +10 -10
  7. data/lib/emass_client/api/cmmc_assessment_dashboards_api.rb +314 -0
  8. data/lib/emass_client/api/cmmc_assessments_api.rb +5 -5
  9. data/lib/emass_client/api/coast_guard_system_fisma_metrics_dashboard_api.rb +95 -0
  10. data/lib/emass_client/api/container_scan_results_api.rb +10 -10
  11. data/lib/emass_client/api/controls_api.rb +17 -17
  12. data/lib/emass_client/api/device_scan_results_api.rb +112 -0
  13. data/lib/emass_client/api/hardware_baseline_api.rb +313 -0
  14. data/lib/emass_client/api/milestones_api.rb +15 -15
  15. data/lib/emass_client/api/organization_migration_status_dashboard_api.rb +95 -0
  16. data/lib/emass_client/api/pac_api.rb +10 -10
  17. data/lib/emass_client/api/poam_api.rb +40 -40
  18. data/lib/emass_client/api/registration_api.rb +5 -5
  19. data/lib/emass_client/api/software_baseline_api.rb +313 -0
  20. data/lib/emass_client/api/static_code_scans_api.rb +9 -9
  21. data/lib/emass_client/api/system_application_findings_dashboards_api.rb +168 -0
  22. data/lib/emass_client/api/{enterprise_artifacts_dashboards_api.rb → system_artifacts_dashboards_api.rb} +21 -21
  23. data/lib/emass_client/api/system_associations_dashboard_api.rb +8 -8
  24. data/lib/emass_client/api/system_atciatc_dashboard_api.rb +95 -0
  25. data/lib/emass_client/api/system_conmon_integration_status_dashboard_api.rb +8 -8
  26. data/lib/emass_client/api/system_connectivity_ccsd_dashboards_api.rb +168 -0
  27. data/lib/emass_client/api/system_critical_assets_dashboard_api.rb +95 -0
  28. data/lib/emass_client/api/system_device_findings_dashboards_api.rb +168 -0
  29. data/lib/emass_client/api/system_fisma_metrics_dashboard_api.rb +95 -0
  30. data/lib/emass_client/api/{hardware_baseline_dashboards_api.rb → system_hardware_dashboards_api.rb} +21 -21
  31. data/lib/emass_client/api/system_migration_status_dashboard_api.rb +95 -0
  32. data/lib/emass_client/api/{enterprise_poam_dashboards_api.rb → system_poam_dashboards_api.rb} +21 -21
  33. data/lib/emass_client/api/{ports_and_protocols_dashboards_api.rb → system_ports_protocols_dashboards_api.rb} +21 -21
  34. data/lib/emass_client/api/system_privacy_dashboard_api.rb +95 -0
  35. data/lib/emass_client/api/system_questionnaire_dashboards_api.rb +168 -0
  36. data/lib/emass_client/api/system_roles_api.rb +8 -8
  37. data/lib/emass_client/api/{enterprise_security_controls_dashboards_api.rb → system_security_controls_dashboards_api.rb} +31 -31
  38. data/lib/emass_client/api/{enterprise_sensor_based_hardware_resources_dashboards_api.rb → system_sensor_hardware_dashboards_api.rb} +21 -21
  39. data/lib/emass_client/api/{enterprise_sensor_based_software_resources_dashboards_api.rb → system_sensor_software_dashboards_api.rb} +29 -29
  40. data/lib/emass_client/api/{software_baseline_dashboards_api.rb → system_software_dashboards_api.rb} +21 -21
  41. data/lib/emass_client/api/system_status_dashboard_api.rb +8 -8
  42. data/lib/emass_client/api/{enterprise_terms_conditions_dashboards_api.rb → system_terms_conditions_dashboards_api.rb} +21 -21
  43. data/lib/emass_client/api/system_vulnerability_dashboard_api.rb +95 -0
  44. data/lib/emass_client/api/{enterprise_vulnerability_dashboards_api.rb → system_workflows_dashboards_api.rb} +53 -53
  45. data/lib/emass_client/api/systems_api.rb +16 -22
  46. data/lib/emass_client/api/test_api.rb +5 -5
  47. data/lib/emass_client/api/test_results_api.rb +10 -10
  48. data/lib/emass_client/api/{users_dashboard_api.rb → user_system_assignments_dashboard_api.rb} +13 -13
  49. data/lib/emass_client/api/va_system_dashboards_api.rb +679 -0
  50. data/lib/emass_client/api/vaombfisma_dashboard_api.rb +95 -0
  51. data/lib/emass_client/api/workflow_definitions_api.rb +9 -9
  52. data/lib/emass_client/api/workflow_instances_api.rb +14 -14
  53. data/lib/emass_client/api_client.rb +44 -31
  54. data/lib/emass_client/api_error.rb +4 -4
  55. data/lib/emass_client/configuration.rb +42 -12
  56. data/lib/emass_client/models/{response201.rb → api_rule_failed.rb} +17 -11
  57. data/lib/emass_client/models/{response490_meta.rb → api_rule_failed_meta.rb} +16 -10
  58. data/lib/emass_client/models/artifacts_ids.rb +221 -0
  59. data/lib/emass_client/models/artifacts_optional_fields.rb +298 -0
  60. data/lib/emass_client/models/artifacts_read_only_fields.rb +255 -0
  61. data/lib/emass_client/models/artifacts_request_delete_body_inner.rb +14 -8
  62. data/lib/emass_client/models/artifacts_required_fields.rb +252 -0
  63. data/lib/emass_client/models/artifacts_response_del.rb +14 -8
  64. data/lib/emass_client/models/artifacts_response_del_data_inner.rb +14 -8
  65. data/lib/emass_client/models/artifacts_response_get.rb +15 -9
  66. data/lib/emass_client/models/{artifacts_get.rb → artifacts_response_get_data_inner.rb} +78 -62
  67. data/lib/emass_client/models/artifacts_response_put_post.rb +14 -8
  68. data/lib/emass_client/models/artifacts_response_put_post_data_inner.rb +19 -13
  69. data/lib/emass_client/models/{response400.rb → bad_request.rb} +17 -11
  70. data/lib/emass_client/models/{response400_meta.rb → bad_request_meta.rb} +16 -10
  71. data/lib/emass_client/models/cac_get.rb +14 -8
  72. data/lib/emass_client/models/cac_response_get.rb +14 -8
  73. data/lib/emass_client/models/cac_response_post.rb +14 -8
  74. data/lib/emass_client/models/cac_response_post_data_inner.rb +19 -13
  75. data/lib/emass_client/models/cloud_resources_delete.rb +14 -8
  76. data/lib/emass_client/models/cloud_resources_delete_body_inner.rb +14 -8
  77. data/lib/emass_client/models/cloud_resources_post_delete.rb +19 -13
  78. data/lib/emass_client/models/cloud_resources_response_post.rb +14 -8
  79. data/lib/emass_client/models/cmmc_get.rb +84 -123
  80. data/lib/emass_client/models/cmmc_response_get.rb +14 -8
  81. data/lib/emass_client/models/connectivity_ccsd.rb +14 -8
  82. data/lib/emass_client/models/container_resources_delete_body_inner.rb +14 -8
  83. data/lib/emass_client/models/containers_resources_post_delete.rb +19 -13
  84. data/lib/emass_client/models/containers_response_delete.rb +14 -8
  85. data/lib/emass_client/models/containers_response_post.rb +14 -8
  86. data/lib/emass_client/models/controls_conditional_fields.rb +357 -0
  87. data/lib/emass_client/models/controls_ids.rb +221 -0
  88. data/lib/emass_client/models/controls_optional_fields.rb +471 -0
  89. data/lib/emass_client/models/controls_put.rb +19 -13
  90. data/lib/emass_client/models/controls_read_only_fields.rb +277 -0
  91. data/lib/emass_client/models/controls_required_fields.rb +295 -0
  92. data/lib/emass_client/models/controls_response_get.rb +15 -9
  93. data/lib/emass_client/models/{controls_get.rb → controls_response_get_data_inner.rb} +155 -138
  94. data/lib/emass_client/models/controls_response_put.rb +14 -8
  95. data/lib/emass_client/models/{response403.rb → created.rb} +17 -11
  96. data/lib/emass_client/models/{response201_meta.rb → created_meta.rb} +16 -10
  97. data/lib/emass_client/models/definition_transitions.rb +14 -8
  98. data/lib/emass_client/models/{poam_response_post.rb → device_scan_results_response_post.rb} +17 -11
  99. data/lib/emass_client/models/{success200_response_data_inner.rb → device_scan_results_response_post_data_inner.rb} +51 -16
  100. data/lib/emass_client/models/{response401.rb → forbidden.rb} +17 -11
  101. data/lib/emass_client/models/{response403_meta.rb → forbidden_meta.rb} +16 -10
  102. data/lib/emass_client/models/get_system_status_details200_response.rb +240 -0
  103. data/lib/emass_client/models/hw_baseline_conditional_fields.rb +244 -0
  104. data/lib/emass_client/models/hw_baseline_ids.rb +221 -0
  105. data/lib/emass_client/models/hw_baseline_optional_fields.rb +354 -0
  106. data/lib/emass_client/models/hw_baseline_read_only_fields.rb +222 -0
  107. data/lib/emass_client/models/hw_baseline_request_delete_body_inner.rb +220 -0
  108. data/lib/emass_client/models/hw_baseline_required_fields.rb +221 -0
  109. data/lib/emass_client/models/{poam_response_delete.rb → hw_baseline_response_delete.rb} +17 -11
  110. data/lib/emass_client/models/hw_baseline_response_delete_data_inner.rb +274 -0
  111. data/lib/emass_client/models/{dashboard_mock_response.rb → hw_baseline_response_get.rb} +18 -12
  112. data/lib/emass_client/models/hw_baseline_response_get_data_inner.rb +429 -0
  113. data/lib/emass_client/models/{success200_response.rb → hw_baseline_response_post_put.rb} +17 -11
  114. data/lib/emass_client/models/hw_baseline_response_post_put_data_inner.rb +274 -0
  115. data/lib/emass_client/models/{instances_transitions.rb → instance_transitions.rb} +16 -10
  116. data/lib/emass_client/models/internal_server_error.rb +220 -0
  117. data/lib/emass_client/models/{response500_meta.rb → internal_server_error_meta.rb} +16 -10
  118. data/lib/emass_client/models/length_required.rb +220 -0
  119. data/lib/emass_client/models/{response411_meta.rb → length_required_meta.rb} +16 -10
  120. data/lib/emass_client/models/method_not_allowed.rb +220 -0
  121. data/lib/emass_client/models/{response405_meta.rb → method_not_allowed_meta.rb} +16 -10
  122. data/lib/emass_client/models/milestone_response_delete.rb +14 -8
  123. data/lib/emass_client/models/milestone_response_get.rb +14 -8
  124. data/lib/emass_client/models/milestone_response_get_milestone.rb +14 -8
  125. data/lib/emass_client/models/milestone_response_post.rb +14 -8
  126. data/lib/emass_client/models/milestone_response_put.rb +14 -8
  127. data/lib/emass_client/models/milestones_fields.rb +222 -0
  128. data/lib/emass_client/models/milestones_get.rb +43 -15
  129. data/lib/emass_client/models/milestones_put_post_delete.rb +19 -13
  130. data/lib/emass_client/models/milestones_request_delete_body_inner.rb +14 -8
  131. data/lib/emass_client/models/milestones_required_post.rb +23 -40
  132. data/lib/emass_client/models/milestones_required_post_milestones_inner.rb +265 -0
  133. data/lib/emass_client/models/milestones_required_put.rb +23 -57
  134. data/lib/emass_client/models/{ssps.rb → milestones_required_put_milestones_inner.rb} +89 -35
  135. data/lib/emass_client/models/{response404.rb → not_found.rb} +16 -10
  136. data/lib/emass_client/models/pac_get.rb +30 -13
  137. data/lib/emass_client/models/pac_post.rb +19 -13
  138. data/lib/emass_client/models/pac_response_get.rb +14 -8
  139. data/lib/emass_client/models/pac_response_post.rb +14 -8
  140. data/lib/emass_client/models/{dashboard_mock_response_pagination.rb → pagination.rb} +35 -29
  141. data/lib/emass_client/models/poam_conditional_fields.rb +402 -0
  142. data/lib/emass_client/models/poam_ids.rb +241 -0
  143. data/lib/emass_client/models/poam_optional_fields.rb +409 -0
  144. data/lib/emass_client/models/poam_post_put_del.rb +19 -13
  145. data/lib/emass_client/models/poam_read_only_fields.rb +332 -0
  146. data/lib/emass_client/models/poam_request_delete_body_inner.rb +14 -8
  147. data/lib/emass_client/models/poam_required_fields.rb +305 -0
  148. data/lib/emass_client/models/poam_response_get_poams.rb +15 -9
  149. data/lib/emass_client/models/poam_response_get_poams_data.rb +824 -0
  150. data/lib/emass_client/models/poam_response_get_systems.rb +15 -9
  151. data/lib/emass_client/models/{poam_get.rb → poam_response_get_systems_data_inner.rb} +325 -365
  152. data/lib/emass_client/models/{poam_response_put.rb → poam_response_post_put_delete.rb} +16 -10
  153. data/lib/emass_client/models/register.rb +14 -8
  154. data/lib/emass_client/models/register_data.rb +14 -8
  155. data/lib/emass_client/models/register_user_request_post_body.rb +24 -8
  156. data/lib/emass_client/models/response200.rb +14 -8
  157. data/lib/emass_client/models/role_category.rb +14 -8
  158. data/lib/emass_client/models/roles.rb +14 -8
  159. data/lib/emass_client/models/stage.rb +14 -8
  160. data/lib/emass_client/models/static_code_application_post.rb +14 -8
  161. data/lib/emass_client/models/static_code_post.rb +19 -13
  162. data/lib/emass_client/models/static_code_request_post_body.rb +14 -8
  163. data/lib/emass_client/models/static_code_request_post_body_application.rb +14 -8
  164. data/lib/emass_client/models/static_code_response_post.rb +14 -8
  165. data/lib/emass_client/models/sw_baseline_conditional_fields.rb +222 -0
  166. data/lib/emass_client/models/sw_baseline_ids.rb +221 -0
  167. data/lib/emass_client/models/sw_baseline_optional_fields.rb +563 -0
  168. data/lib/emass_client/models/sw_baseline_read_only_fields.rb +222 -0
  169. data/lib/emass_client/models/sw_baseline_request_delete_body_inner.rb +220 -0
  170. data/lib/emass_client/models/sw_baseline_required_fields.rb +241 -0
  171. data/lib/emass_client/models/sw_baseline_response_delete.rb +231 -0
  172. data/lib/emass_client/models/sw_baseline_response_delete_data_inner.rb +274 -0
  173. data/lib/emass_client/models/sw_baseline_response_get.rb +240 -0
  174. data/lib/emass_client/models/sw_baseline_response_get_data_inner.rb +624 -0
  175. data/lib/emass_client/models/sw_baseline_response_post_put.rb +231 -0
  176. data/lib/emass_client/models/sw_baseline_response_post_put_data_inner.rb +274 -0
  177. data/lib/emass_client/models/system_response.rb +14 -8
  178. data/lib/emass_client/models/system_roles_category_response.rb +14 -8
  179. data/lib/emass_client/models/system_roles_response.rb +14 -8
  180. data/lib/emass_client/models/system_roles_response_data_inner.rb +14 -8
  181. data/lib/emass_client/models/systems.rb +708 -86
  182. data/lib/emass_client/models/systems_response.rb +14 -8
  183. data/lib/emass_client/models/test.rb +14 -8
  184. data/lib/emass_client/models/test_data.rb +14 -8
  185. data/lib/emass_client/models/test_results_get.rb +14 -8
  186. data/lib/emass_client/models/test_results_post.rb +19 -13
  187. data/lib/emass_client/models/test_results_response_get.rb +14 -8
  188. data/lib/emass_client/models/test_results_response_post.rb +14 -8
  189. data/lib/emass_client/models/unauthorized.rb +220 -0
  190. data/lib/emass_client/models/{response401_meta.rb → unauthorized_meta.rb} +16 -10
  191. data/lib/emass_client/models/users.rb +14 -8
  192. data/lib/emass_client/models/workflow_definition_get.rb +14 -8
  193. data/lib/emass_client/models/workflow_definition_response_get.rb +14 -8
  194. data/lib/emass_client/models/workflow_instance_get.rb +28 -11
  195. data/lib/emass_client/models/workflow_instance_response_get.rb +14 -8
  196. data/lib/emass_client/models/workflow_instances_response_get.rb +15 -9
  197. data/lib/emass_client/models/workflow_instances_response_get_pagination.rb +14 -8
  198. data/lib/emass_client/version.rb +5 -5
  199. data/lib/emass_client.rb +101 -52
  200. metadata +105 -56
  201. data/lib/emass_client/api/fisma_inventory_summary_dashboards_api.rb +0 -168
  202. data/lib/emass_client/api/privacy_compliance_dashboards_api.rb +0 -168
  203. data/lib/emass_client/api/system_a20_summary_dashboard_api.rb +0 -95
  204. data/lib/emass_client/api/system_aa_summary_dashboard_api.rb +0 -95
  205. data/lib/emass_client/api/system_pl109_reporting_summary_dashboard_api.rb +0 -95
  206. data/lib/emass_client/api/threat_risks_dashboards_api.rb +0 -241
  207. data/lib/emass_client/models/mock_object.rb +0 -338
  208. data/lib/emass_client/models/response405.rb +0 -214
  209. data/lib/emass_client/models/response411.rb +0 -214
  210. data/lib/emass_client/models/response490.rb +0 -214
  211. data/lib/emass_client/models/response500.rb +0 -214
  212. data/lib/emass_client/models/workflow_instances_get.rb +0 -337
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Enterprise Mission Assurance Support Service (eMASS)
3
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. <strong>Register External Application (that use the eMASS API)</strong></br> New users will need to [register](https://nisp.emass.apps.mil/Content/Help/jobaids/eMASS_OT_NewUser_Job_Aid.pdf) 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). Use the `Registration` POST endpoint to register the client certificate. The endpoint call returns the user `api-key`.</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:
4
+ #The eMASS Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The eMASS API provides an interface for application to communicate eMASS Services. For information on how to register and use the eMASS API reference the [eMASS API Getting Started](eMASSGettingStarted.md). Additional information about eMASS can be obtain by contacting the National Industrial Security Program (NISP). Points of Contact are:
5
5
 
6
- The version of the OpenAPI document: v3.12
7
- Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
6
+ The version of the OpenAPI document: v3.22
7
+ Contact: disa.global.servicedesk.mbx.ma-ticket-request@mail.mil
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.1.0-SNAPSHOT
9
+ Generator version: 7.12.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -22,7 +22,7 @@ module EmassClient
22
22
  # Initiate system workflow for review
23
23
  # Adds a Package Approval Chain (PAC) for given `systemId` path parameter **Request Body Required Fields** - `workflow` - `name` - `comments`
24
24
  # @param system_id [Integer] **System Id**: The unique system record identifier.
25
- # @param request_body [Array<Object>] Add system package to PAC for review
25
+ # @param request_body [Array<Object>] Example request body for adding system package to PAC for review
26
26
  # @param [Hash] opts the optional parameters
27
27
  # @return [PacResponsePost]
28
28
  def add_system_pac(system_id, request_body, opts = {})
@@ -33,7 +33,7 @@ module EmassClient
33
33
  # Initiate system workflow for review
34
34
  # Adds a Package Approval Chain (PAC) for given &#x60;systemId&#x60; path parameter **Request Body Required Fields** - &#x60;workflow&#x60; - &#x60;name&#x60; - &#x60;comments&#x60;
35
35
  # @param system_id [Integer] **System Id**: The unique system record identifier.
36
- # @param request_body [Array<Object>] Add system package to PAC for review
36
+ # @param request_body [Array<Object>] Example request body for adding system package to PAC for review
37
37
  # @param [Hash] opts the optional parameters
38
38
  # @return [Array<(PacResponsePost, Integer, Hash)>] PacResponsePost data, response status code and response headers
39
39
  def add_system_pac_with_http_info(system_id, request_body, opts = {})
@@ -57,7 +57,7 @@ module EmassClient
57
57
  # header parameters
58
58
  header_params = opts[:header_params] || {}
59
59
  # HTTP header 'Accept' (if needed)
60
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
61
61
  # HTTP header 'Content-Type'
62
62
  content_type = @api_client.select_header_content_type(['application/json'])
63
63
  if !content_type.nil?
@@ -94,7 +94,7 @@ module EmassClient
94
94
  end
95
95
 
96
96
  # Get status of active workflows in a system
97
- # Returns the location of a system's package in the Package Approval Chain (PAC) for matching `systemId` path parameter **Notes:** - If the indicated system has any active workflows, the response will include information such as the workflow type and the current stage of each workflow. - If there are no active workflows, then a null data member will be returned.
97
+ # Returns the location of a system's package in the Package Approval Chain (PAC) for matching `systemId` path parameter **NOTES:** - If the indicated system has any active workflows, the response will include information such as the workflow type and the current stage of each workflow. - If there are no active workflows, then a null data member will be returned.
98
98
  # @param system_id [Integer] **System Id**: The unique system record identifier.
99
99
  # @param [Hash] opts the optional parameters
100
100
  # @return [PacResponseGet]
@@ -104,7 +104,7 @@ module EmassClient
104
104
  end
105
105
 
106
106
  # Get status of active workflows in a system
107
- # Returns the location of a system&#39;s package in the Package Approval Chain (PAC) for matching &#x60;systemId&#x60; path parameter **Notes:** - If the indicated system has any active workflows, the response will include information such as the workflow type and the current stage of each workflow. - If there are no active workflows, then a null data member will be returned.
107
+ # Returns the location of a system&#39;s package in the Package Approval Chain (PAC) for matching &#x60;systemId&#x60; path parameter **NOTES:** - If the indicated system has any active workflows, the response will include information such as the workflow type and the current stage of each workflow. - If there are no active workflows, then a null data member will be returned.
108
108
  # @param system_id [Integer] **System Id**: The unique system record identifier.
109
109
  # @param [Hash] opts the optional parameters
110
110
  # @return [Array<(PacResponseGet, Integer, Hash)>] PacResponseGet data, response status code and response headers
@@ -125,7 +125,7 @@ module EmassClient
125
125
  # header parameters
126
126
  header_params = opts[:header_params] || {}
127
127
  # HTTP header 'Accept' (if needed)
128
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
128
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
129
129
 
130
130
  # form parameters
131
131
  form_params = opts[:form_params] || {}
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Enterprise Mission Assurance Support Service (eMASS)
3
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. <strong>Register External Application (that use the eMASS API)</strong></br> New users will need to [register](https://nisp.emass.apps.mil/Content/Help/jobaids/eMASS_OT_NewUser_Job_Aid.pdf) 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). Use the `Registration` POST endpoint to register the client certificate. The endpoint call returns the user `api-key`.</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:
4
+ #The eMASS Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The eMASS API provides an interface for application to communicate eMASS Services. For information on how to register and use the eMASS API reference the [eMASS API Getting Started](eMASSGettingStarted.md). Additional information about eMASS can be obtain by contacting the National Industrial Security Program (NISP). Points of Contact are:
5
5
 
6
- The version of the OpenAPI document: v3.12
7
- Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
6
+ The version of the OpenAPI document: v3.22
7
+ Contact: disa.global.servicedesk.mbx.ma-ticket-request@mail.mil
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.1.0-SNAPSHOT
9
+ Generator version: 7.12.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -20,23 +20,23 @@ module EmassClient
20
20
  @api_client = api_client
21
21
  end
22
22
  # Add one or many POA&M items in a system
23
- # Add a POA&M for given `systemId`<br> **Request Body Required Fields** - `status` - `vulnerabilityDescription` - `sourceIdentVuln` - `pocOrganization` - `resources` **Note**<br /> If a POC email is supplied, the application will attempt to locate a user already registered within the application and pre-populate any information not explicitly supplied in the request. If no such user is found, these fields are **required** within the request.<br> `pocFirstName`, `pocLastName`, `pocPhoneNumber`<br />
23
+ # Add a POA&M for given `systemId` **Request Body Required Fields** <table> <thead> <tr><th><b>Field</b></th><th><b>Require/Condition</b></th></tr> </thead> <tbody> <tr><td><code>status</code></td><td>Always (every POST)</td></tr> <tr><td><code>vulnerabilityDescription</code></td><td>Always (every POST)</td></tr> <tr><td><code>sourceIdentifyingVulnerability</code></td><td>Always (every POST)</td></tr> <tr><td><code>pocOrganization</code></td><td>Always (every POST)</td></tr> <tr><td><code>resources</code></td><td>Always (every POST)</td></tr> <tr><td><code>identifiedInCFOAuditOrOtherReview</code></td><td>Required for VA. Optional for Army and USCG.</td></tr> <tr><td><code>scheduledCompletionDate</code></td><td>Required for ongoing and completed POA&M items</td></tr> <tr><td><code>pocFirstName</code></td><td>Only if Last Name, Email, or Phone Number have data</td></tr> <tr><td><code>pocLastName</code></td><td>Only if First Name, Email, or Phone Number have data</td></tr> <tr><td><code>pocEmail</code></td><td>Only if First Name, Last Name, or Phone Number have data</td></tr> <tr><td><code>pocPhoneNumber</code></td><td>Only if First Name, Last Name, or Email have data</td></tr> <tr><td><code>completionDate</code></td><td>For completed POA&M Item only</td></tr> <tr><td><code>comments</code></td><td>For completed or Risk Accepted POA&M Items only</td></tr> </tbody> </table> **NOTE**: Certain eMASS instances also require the Risk Analysis fields to be populated: - `severity` - `relevanceOfThreat` - `likelihood` - `impact` - `residualRiskLevel` - `mitigations` </br> **Business Rules** The following rules apply to the Review Status `status` field value: <table> <thead><tr><th><b>Value</b></th><th><b>Rule</b></th></tr></thead> <tbody> <tr><td><b>Not Approved</b></td><td>POA&M cannot be saved if Milestone Scheduled Completion Date exceeds POA&M Item Scheduled Completion Date</td></tr> <tr><td><b>Approved</b></td><td>POA&M can only be saved if Milestone Scheduled Completion Date exceeds POA&M Item Scheduled Completion Date</td></tr> <tr><td></td><td>Are required to have a Severity Value assigned</td></tr> <tr><td><b>Completed</b> or <b>Ongoing</b></td><td>Cannot be saved without Milestones</td></tr> <tr><td><b>Risk Accepted</b></td><td>POA&M Item cannot be saved with a Scheduled Completion Date <code>scheduledCompletionDate</code> or have Milestones</td></tr> <tr><td><b>Approved</b> or <b>Completed</b> or <b>Ongoing</b></td><td>Cannot update Scheduled Completion Date</td></tr> </tbody> </table> **Additional Rules** - POA&M Item cannot be saved if associated Security Control or AP is inherited. - Completed POA&M Item cannot be saved if Completion Date (`completionDate`) is in the future. - POA&M Items cannot be updated if they are included in an active package. - Archived POA&M Items cannot be updated. - POA&M Items with a status of \"Not Applicable\" will be updated through test result creation. - If the Security Control or Assessment Procedure does not exist in the system, the POA&M Item maybe imported at the System Level. **Fields Characters Limitation** - POA&M Item cannot be saved if the Point of Contact (POC) fields exceed 100 characters: - `pocOrganization` `pocFirstName`, `pocLastName`, `pocEmail`, `pocPhoneNumber` - POA&M Item cannot be saved if Resources (`resource`) field exceeds 250 characters - POA&M Item cannot be saved if the following fields exceeds 2,000 characters: - `mitigations`, `sourceIdentifyingVulnerability`, `comments` - Milestones Field: `description` - POA&M Items cannot be saved if Milestone Description (`description`) exceeds 2,000 characters.
24
24
  # @param system_id [Integer] **System Id**: The unique system record identifier.
25
- # @param request_body [Array<Object>] Add POA&amp;M(s) to a system (systemID)
25
+ # @param poam_required_fields [Array<PoamRequiredFields>] Example request body to add POA&amp;M(s) to a system (systemId)
26
26
  # @param [Hash] opts the optional parameters
27
- # @return [PoamResponsePost]
28
- def add_poam_by_system_id(system_id, request_body, opts = {})
29
- data, _status_code, _headers = add_poam_by_system_id_with_http_info(system_id, request_body, opts)
27
+ # @return [PoamResponsePostPutDelete]
28
+ def add_poam_by_system_id(system_id, poam_required_fields, opts = {})
29
+ data, _status_code, _headers = add_poam_by_system_id_with_http_info(system_id, poam_required_fields, opts)
30
30
  data
31
31
  end
32
32
 
33
33
  # Add one or many POA&amp;M items in a system
34
- # Add a POA&amp;M for given &#x60;systemId&#x60;&lt;br&gt; **Request Body Required Fields** - &#x60;status&#x60; - &#x60;vulnerabilityDescription&#x60; - &#x60;sourceIdentVuln&#x60; - &#x60;pocOrganization&#x60; - &#x60;resources&#x60; **Note**&lt;br /&gt; If a POC email is supplied, the application will attempt to locate a user already registered within the application and pre-populate any information not explicitly supplied in the request. If no such user is found, these fields are **required** within the request.&lt;br&gt; &#x60;pocFirstName&#x60;, &#x60;pocLastName&#x60;, &#x60;pocPhoneNumber&#x60;&lt;br /&gt;
34
+ # Add a POA&amp;M for given &#x60;systemId&#x60; **Request Body Required Fields** &lt;table&gt; &lt;thead&gt; &lt;tr&gt;&lt;th&gt;&lt;b&gt;Field&lt;/b&gt;&lt;/th&gt;&lt;th&gt;&lt;b&gt;Require/Condition&lt;/b&gt;&lt;/th&gt;&lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;status&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every POST)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;vulnerabilityDescription&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every POST)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;sourceIdentifyingVulnerability&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every POST)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocOrganization&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every POST)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;resources&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every POST)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;identifiedInCFOAuditOrOtherReview&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Required for VA. Optional for Army and USCG.&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;scheduledCompletionDate&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Required for ongoing and completed POA&amp;M items&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocFirstName&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if Last Name, Email, or Phone Number have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocLastName&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if First Name, Email, or Phone Number have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocEmail&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if First Name, Last Name, or Phone Number have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocPhoneNumber&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if First Name, Last Name, or Email have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;completionDate&lt;/code&gt;&lt;/td&gt;&lt;td&gt;For completed POA&amp;M Item only&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;comments&lt;/code&gt;&lt;/td&gt;&lt;td&gt;For completed or Risk Accepted POA&amp;M Items only&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; **NOTE**: Certain eMASS instances also require the Risk Analysis fields to be populated: - &#x60;severity&#x60; - &#x60;relevanceOfThreat&#x60; - &#x60;likelihood&#x60; - &#x60;impact&#x60; - &#x60;residualRiskLevel&#x60; - &#x60;mitigations&#x60; &lt;/br&gt; **Business Rules** The following rules apply to the Review Status &#x60;status&#x60; field value: &lt;table&gt; &lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;b&gt;Value&lt;/b&gt;&lt;/th&gt;&lt;th&gt;&lt;b&gt;Rule&lt;/b&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt;&lt;td&gt;&lt;b&gt;Not Approved&lt;/b&gt;&lt;/td&gt;&lt;td&gt;POA&amp;M cannot be saved if Milestone Scheduled Completion Date exceeds POA&amp;M Item Scheduled Completion Date&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;b&gt;Approved&lt;/b&gt;&lt;/td&gt;&lt;td&gt;POA&amp;M can only be saved if Milestone Scheduled Completion Date exceeds POA&amp;M Item Scheduled Completion Date&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Are required to have a Severity Value assigned&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;b&gt;Completed&lt;/b&gt; or &lt;b&gt;Ongoing&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Cannot be saved without Milestones&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;b&gt;Risk Accepted&lt;/b&gt;&lt;/td&gt;&lt;td&gt;POA&amp;M Item cannot be saved with a Scheduled Completion Date &lt;code&gt;scheduledCompletionDate&lt;/code&gt; or have Milestones&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;b&gt;Approved&lt;/b&gt; or &lt;b&gt;Completed&lt;/b&gt; or &lt;b&gt;Ongoing&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Cannot update Scheduled Completion Date&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; **Additional Rules** - POA&amp;M Item cannot be saved if associated Security Control or AP is inherited. - Completed POA&amp;M Item cannot be saved if Completion Date (&#x60;completionDate&#x60;) is in the future. - POA&amp;M Items cannot be updated if they are included in an active package. - Archived POA&amp;M Items cannot be updated. - POA&amp;M Items with a status of \&quot;Not Applicable\&quot; will be updated through test result creation. - If the Security Control or Assessment Procedure does not exist in the system, the POA&amp;M Item maybe imported at the System Level. **Fields Characters Limitation** - POA&amp;M Item cannot be saved if the Point of Contact (POC) fields exceed 100 characters: - &#x60;pocOrganization&#x60; &#x60;pocFirstName&#x60;, &#x60;pocLastName&#x60;, &#x60;pocEmail&#x60;, &#x60;pocPhoneNumber&#x60; - POA&amp;M Item cannot be saved if Resources (&#x60;resource&#x60;) field exceeds 250 characters - POA&amp;M Item cannot be saved if the following fields exceeds 2,000 characters: - &#x60;mitigations&#x60;, &#x60;sourceIdentifyingVulnerability&#x60;, &#x60;comments&#x60; - Milestones Field: &#x60;description&#x60; - POA&amp;M Items cannot be saved if Milestone Description (&#x60;description&#x60;) exceeds 2,000 characters.
35
35
  # @param system_id [Integer] **System Id**: The unique system record identifier.
36
- # @param request_body [Array<Object>] Add POA&amp;M(s) to a system (systemID)
36
+ # @param poam_required_fields [Array<PoamRequiredFields>] Example request body to add POA&amp;M(s) to a system (systemId)
37
37
  # @param [Hash] opts the optional parameters
38
- # @return [Array<(PoamResponsePost, Integer, Hash)>] PoamResponsePost data, response status code and response headers
39
- def add_poam_by_system_id_with_http_info(system_id, request_body, opts = {})
38
+ # @return [Array<(PoamResponsePostPutDelete, Integer, Hash)>] PoamResponsePostPutDelete data, response status code and response headers
39
+ def add_poam_by_system_id_with_http_info(system_id, poam_required_fields, opts = {})
40
40
  if @api_client.config.debugging
41
41
  @api_client.config.logger.debug 'Calling API: POAMApi.add_poam_by_system_id ...'
42
42
  end
@@ -44,9 +44,9 @@ module EmassClient
44
44
  if @api_client.config.client_side_validation && system_id.nil?
45
45
  fail ArgumentError, "Missing the required parameter 'system_id' when calling POAMApi.add_poam_by_system_id"
46
46
  end
47
- # verify the required parameter 'request_body' is set
48
- if @api_client.config.client_side_validation && request_body.nil?
49
- fail ArgumentError, "Missing the required parameter 'request_body' when calling POAMApi.add_poam_by_system_id"
47
+ # verify the required parameter 'poam_required_fields' is set
48
+ if @api_client.config.client_side_validation && poam_required_fields.nil?
49
+ fail ArgumentError, "Missing the required parameter 'poam_required_fields' when calling POAMApi.add_poam_by_system_id"
50
50
  end
51
51
  # resource path
52
52
  local_var_path = '/api/systems/{systemId}/poams'.sub('{' + 'systemId' + '}', CGI.escape(system_id.to_s))
@@ -57,7 +57,7 @@ module EmassClient
57
57
  # header parameters
58
58
  header_params = opts[:header_params] || {}
59
59
  # HTTP header 'Accept' (if needed)
60
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
61
61
  # HTTP header 'Content-Type'
62
62
  content_type = @api_client.select_header_content_type(['application/json'])
63
63
  if !content_type.nil?
@@ -68,10 +68,10 @@ module EmassClient
68
68
  form_params = opts[:form_params] || {}
69
69
 
70
70
  # http body (model)
71
- post_body = opts[:debug_body] || @api_client.object_to_http_body(request_body)
71
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(poam_required_fields)
72
72
 
73
73
  # return_type
74
- return_type = opts[:debug_return_type] || 'PoamResponsePost'
74
+ return_type = opts[:debug_return_type] || 'PoamResponsePostPutDelete'
75
75
 
76
76
  # auth_names
77
77
  auth_names = opts[:debug_auth_names] || ['apiKey', 'mockType', 'userId']
@@ -98,7 +98,7 @@ module EmassClient
98
98
  # @param system_id [Integer] **System Id**: The unique system record identifier.
99
99
  # @param poam_request_delete_body_inner [Array<PoamRequestDeleteBodyInner>] Delete the given POA&amp;M Id
100
100
  # @param [Hash] opts the optional parameters
101
- # @return [PoamResponseDelete]
101
+ # @return [PoamResponsePostPutDelete]
102
102
  def delete_poam(system_id, poam_request_delete_body_inner, opts = {})
103
103
  data, _status_code, _headers = delete_poam_with_http_info(system_id, poam_request_delete_body_inner, opts)
104
104
  data
@@ -109,7 +109,7 @@ module EmassClient
109
109
  # @param system_id [Integer] **System Id**: The unique system record identifier.
110
110
  # @param poam_request_delete_body_inner [Array<PoamRequestDeleteBodyInner>] Delete the given POA&amp;M Id
111
111
  # @param [Hash] opts the optional parameters
112
- # @return [Array<(PoamResponseDelete, Integer, Hash)>] PoamResponseDelete data, response status code and response headers
112
+ # @return [Array<(PoamResponsePostPutDelete, Integer, Hash)>] PoamResponsePostPutDelete data, response status code and response headers
113
113
  def delete_poam_with_http_info(system_id, poam_request_delete_body_inner, opts = {})
114
114
  if @api_client.config.debugging
115
115
  @api_client.config.logger.debug 'Calling API: POAMApi.delete_poam ...'
@@ -131,7 +131,7 @@ module EmassClient
131
131
  # header parameters
132
132
  header_params = opts[:header_params] || {}
133
133
  # HTTP header 'Accept' (if needed)
134
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
134
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
135
135
  # HTTP header 'Content-Type'
136
136
  content_type = @api_client.select_header_content_type(['application/json'])
137
137
  if !content_type.nil?
@@ -145,7 +145,7 @@ module EmassClient
145
145
  post_body = opts[:debug_body] || @api_client.object_to_http_body(poam_request_delete_body_inner)
146
146
 
147
147
  # return_type
148
- return_type = opts[:debug_return_type] || 'PoamResponseDelete'
148
+ return_type = opts[:debug_return_type] || 'PoamResponsePostPutDelete'
149
149
 
150
150
  # auth_names
151
151
  auth_names = opts[:debug_auth_names] || ['apiKey', 'mockType', 'userId']
@@ -217,7 +217,7 @@ module EmassClient
217
217
  # header parameters
218
218
  header_params = opts[:header_params] || {}
219
219
  # HTTP header 'Accept' (if needed)
220
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
220
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
221
221
 
222
222
  # form parameters
223
223
  form_params = opts[:form_params] || {}
@@ -286,7 +286,7 @@ module EmassClient
286
286
  # header parameters
287
287
  header_params = opts[:header_params] || {}
288
288
  # HTTP header 'Accept' (if needed)
289
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
289
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
290
290
 
291
291
  # form parameters
292
292
  form_params = opts[:form_params] || {}
@@ -318,23 +318,23 @@ module EmassClient
318
318
  end
319
319
 
320
320
  # Update one or many POA&M items in a system
321
- # Update a POA&M for given `systemId`<br> **Request Body Required Fields** - `poamId` - `displayPoamId` - `status` - `vulnerabilityDescription` - `sourceIdentVuln` - `pocOrganization` - `reviewStatus` **Notes** - If a POC email is supplied, the application will attempt to locate a user already registered within the application and pre-populate any information not explicitly supplied in the request. If no such user is found, these fields are **required** within the request.<br> `pocOrganization`, `pocFirstName`, `pocLastName`, `pocEmail`, `pocPhoneNumber`<br /> - To prevent uploading duplicate/undesired milestones through the POA&M PUT we must include an `isActive` field for the milestone and set it to equal to false `(isActive=false)`.
321
+ # Update a POA&M for given `systemId`<br> **Request Body Required Fields** <table> <thead> <tr><th><b>Field</b></th><th><b>Require/Condition</b></th></tr> </thead> <tbody> <tr><td><code>poamId</code></td><td>Always (every PUT)</td></tr> <tr><td><code>displayPoamId</code></td><td>Always (every PUT)</td></tr> <tr><td><code>status</code></td><td>Always (every PUT)</td></tr> <tr><td><code>vulnerabilityDescription</code></td><td>Always (every PUT)</td></tr> <tr><td><code>sourceIdentifyingVulnerability</code></td><td>Always (every PUT)</td></tr> <tr><td><code>pocOrganization</code></td><td>Always (every PUT)</td></tr> <tr><td><code>resources</code></td><td>Always (every PUT)</td></tr> <tr><td><code>identifiedInCFOAuditOrOtherReview</code></td><td>Required for VA. Optional for Army and USCG.</td></tr> <tr><td><code>scheduledCompletionDate</code></td><td>Required for ongoing and completed POA&M items</td></tr> <tr><td><code>pocFirstName</code></td><td>Only if Last Name, Email, or Phone Number have data</td></tr> <tr><td><code>pocLastName</code></td><td>Only if First Name, Email, or Phone Number have data</td></tr> <tr><td><code>pocEmail</code></td><td>Only if First Name, Last Name, or Phone Number have data</td></tr> <tr><td><code>pocPhoneNumber</code></td><td>Only if First Name, Last Name, or Email have data</td></tr> <tr><td><code>completionDate</code></td><td>For completed POA&M Item only</td></tr> <tr><td><code>comments</code></td><td>For completed or Risk Accepted POA&M Items only</td></tr> </tbody> </table> **NOTES**: - Certain eMASS instances also require the Risk Analysis fields to be populated: - `severity` - `relevanceOfThreat` - `likelihood` - `impact` - `residualRiskLevel` - `mitigations` - To prevent uploading duplicate/undesired milestones through the POA&M PUT include an `isActive` field for the milestone and set it to equal to false `(isActive=false)`. </br> **Business Rules:** See business rules for the POST endpoint
322
322
  # @param system_id [Integer] **System Id**: The unique system record identifier.
323
- # @param request_body [Array<Object>] Update an existing control by Id
323
+ # @param poam_ids [Array<PoamIds>] Example request body for updating a POA&amp;M for a system (systemId)
324
324
  # @param [Hash] opts the optional parameters
325
- # @return [PoamResponsePut]
326
- def update_poam_by_system_id(system_id, request_body, opts = {})
327
- data, _status_code, _headers = update_poam_by_system_id_with_http_info(system_id, request_body, opts)
325
+ # @return [PoamResponsePostPutDelete]
326
+ def update_poam_by_system_id(system_id, poam_ids, opts = {})
327
+ data, _status_code, _headers = update_poam_by_system_id_with_http_info(system_id, poam_ids, opts)
328
328
  data
329
329
  end
330
330
 
331
331
  # Update one or many POA&amp;M items in a system
332
- # Update a POA&amp;M for given &#x60;systemId&#x60;&lt;br&gt; **Request Body Required Fields** - &#x60;poamId&#x60; - &#x60;displayPoamId&#x60; - &#x60;status&#x60; - &#x60;vulnerabilityDescription&#x60; - &#x60;sourceIdentVuln&#x60; - &#x60;pocOrganization&#x60; - &#x60;reviewStatus&#x60; **Notes** - If a POC email is supplied, the application will attempt to locate a user already registered within the application and pre-populate any information not explicitly supplied in the request. If no such user is found, these fields are **required** within the request.&lt;br&gt; &#x60;pocOrganization&#x60;, &#x60;pocFirstName&#x60;, &#x60;pocLastName&#x60;, &#x60;pocEmail&#x60;, &#x60;pocPhoneNumber&#x60;&lt;br /&gt; - To prevent uploading duplicate/undesired milestones through the POA&amp;M PUT we must include an &#x60;isActive&#x60; field for the milestone and set it to equal to false &#x60;(isActive&#x3D;false)&#x60;.
332
+ # Update a POA&amp;M for given &#x60;systemId&#x60;&lt;br&gt; **Request Body Required Fields** &lt;table&gt; &lt;thead&gt; &lt;tr&gt;&lt;th&gt;&lt;b&gt;Field&lt;/b&gt;&lt;/th&gt;&lt;th&gt;&lt;b&gt;Require/Condition&lt;/b&gt;&lt;/th&gt;&lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;poamId&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every PUT)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;displayPoamId&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every PUT)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;status&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every PUT)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;vulnerabilityDescription&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every PUT)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;sourceIdentifyingVulnerability&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every PUT)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocOrganization&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every PUT)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;resources&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Always (every PUT)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;identifiedInCFOAuditOrOtherReview&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Required for VA. Optional for Army and USCG.&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;scheduledCompletionDate&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Required for ongoing and completed POA&amp;M items&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocFirstName&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if Last Name, Email, or Phone Number have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocLastName&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if First Name, Email, or Phone Number have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocEmail&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if First Name, Last Name, or Phone Number have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;pocPhoneNumber&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Only if First Name, Last Name, or Email have data&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;completionDate&lt;/code&gt;&lt;/td&gt;&lt;td&gt;For completed POA&amp;M Item only&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;code&gt;comments&lt;/code&gt;&lt;/td&gt;&lt;td&gt;For completed or Risk Accepted POA&amp;M Items only&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; **NOTES**: - Certain eMASS instances also require the Risk Analysis fields to be populated: - &#x60;severity&#x60; - &#x60;relevanceOfThreat&#x60; - &#x60;likelihood&#x60; - &#x60;impact&#x60; - &#x60;residualRiskLevel&#x60; - &#x60;mitigations&#x60; - To prevent uploading duplicate/undesired milestones through the POA&amp;M PUT include an &#x60;isActive&#x60; field for the milestone and set it to equal to false &#x60;(isActive&#x3D;false)&#x60;. &lt;/br&gt; **Business Rules:** See business rules for the POST endpoint
333
333
  # @param system_id [Integer] **System Id**: The unique system record identifier.
334
- # @param request_body [Array<Object>] Update an existing control by Id
334
+ # @param poam_ids [Array<PoamIds>] Example request body for updating a POA&amp;M for a system (systemId)
335
335
  # @param [Hash] opts the optional parameters
336
- # @return [Array<(PoamResponsePut, Integer, Hash)>] PoamResponsePut data, response status code and response headers
337
- def update_poam_by_system_id_with_http_info(system_id, request_body, opts = {})
336
+ # @return [Array<(PoamResponsePostPutDelete, Integer, Hash)>] PoamResponsePostPutDelete data, response status code and response headers
337
+ def update_poam_by_system_id_with_http_info(system_id, poam_ids, opts = {})
338
338
  if @api_client.config.debugging
339
339
  @api_client.config.logger.debug 'Calling API: POAMApi.update_poam_by_system_id ...'
340
340
  end
@@ -342,9 +342,9 @@ module EmassClient
342
342
  if @api_client.config.client_side_validation && system_id.nil?
343
343
  fail ArgumentError, "Missing the required parameter 'system_id' when calling POAMApi.update_poam_by_system_id"
344
344
  end
345
- # verify the required parameter 'request_body' is set
346
- if @api_client.config.client_side_validation && request_body.nil?
347
- fail ArgumentError, "Missing the required parameter 'request_body' when calling POAMApi.update_poam_by_system_id"
345
+ # verify the required parameter 'poam_ids' is set
346
+ if @api_client.config.client_side_validation && poam_ids.nil?
347
+ fail ArgumentError, "Missing the required parameter 'poam_ids' when calling POAMApi.update_poam_by_system_id"
348
348
  end
349
349
  # resource path
350
350
  local_var_path = '/api/systems/{systemId}/poams'.sub('{' + 'systemId' + '}', CGI.escape(system_id.to_s))
@@ -355,7 +355,7 @@ module EmassClient
355
355
  # header parameters
356
356
  header_params = opts[:header_params] || {}
357
357
  # HTTP header 'Accept' (if needed)
358
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
358
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
359
359
  # HTTP header 'Content-Type'
360
360
  content_type = @api_client.select_header_content_type(['application/json'])
361
361
  if !content_type.nil?
@@ -366,10 +366,10 @@ module EmassClient
366
366
  form_params = opts[:form_params] || {}
367
367
 
368
368
  # http body (model)
369
- post_body = opts[:debug_body] || @api_client.object_to_http_body(request_body)
369
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(poam_ids)
370
370
 
371
371
  # return_type
372
- return_type = opts[:debug_return_type] || 'PoamResponsePut'
372
+ return_type = opts[:debug_return_type] || 'PoamResponsePostPutDelete'
373
373
 
374
374
  # auth_names
375
375
  auth_names = opts[:debug_auth_names] || ['apiKey', 'mockType', 'userId']
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Enterprise Mission Assurance Support Service (eMASS)
3
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. <strong>Register External Application (that use the eMASS API)</strong></br> New users will need to [register](https://nisp.emass.apps.mil/Content/Help/jobaids/eMASS_OT_NewUser_Job_Aid.pdf) 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). Use the `Registration` POST endpoint to register the client certificate. The endpoint call returns the user `api-key`.</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:
4
+ #The eMASS Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The eMASS API provides an interface for application to communicate eMASS Services. For information on how to register and use the eMASS API reference the [eMASS API Getting Started](eMASSGettingStarted.md). Additional information about eMASS can be obtain by contacting the National Industrial Security Program (NISP). Points of Contact are:
5
5
 
6
- The version of the OpenAPI document: v3.12
7
- Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
6
+ The version of the OpenAPI document: v3.22
7
+ Contact: disa.global.servicedesk.mbx.ma-ticket-request@mail.mil
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.1.0-SNAPSHOT
9
+ Generator version: 7.12.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -45,7 +45,7 @@ module EmassClient
45
45
  # header parameters
46
46
  header_params = opts[:header_params] || {}
47
47
  # HTTP header 'Accept' (if needed)
48
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
48
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
49
49
 
50
50
  # form parameters
51
51
  form_params = opts[:form_params] || {}