Values.BatchImportFindingsRequestSourceImports security findings generated by a finding provider into Security Hub CSPM. This action is requested by the finding provider to import its findings into Security Hub CSPM. BatchImportFindings must be called by one of the following: The Amazon Web Services account that is associated with a finding if you are using the default product ARN or are a partner sending findings from within a customer's Amazon Web Services account. In these cases, the identifier of the account that you are calling BatchImportFindings from needs to be the same as the AwsAccountId attribute for the finding. An Amazon Web Services account that Security Hub CSPM has allow-listed for an official partner integration. In this case, you can call BatchImportFindings from the allow-listed account and send findings from different customer accounts in the same batch. The maximum allowed size for a finding is 240 Kb. An error is returned for any finding larger than 240 Kb. After a finding is created, BatchImportFindings cannot be used to update the following finding fields and objects, which Security Hub CSPM customers use to manage their investigation workflow. Note UserDefinedFields VerificationState Workflow Finding providers also should not use BatchImportFindings to update the following attributes. Confidence Criticality RelatedFindings Severity Types Instead, finding providers use FindingProviderFields to provide values for these attributes.
type nonrec t = {findings : BatchImportFindingsRequestFindingList.t;A list of findings to import. To successfully import a finding, it must follow the Amazon Web Services Security Finding Format. Maximum of 100 findings per request.
*)}val to_value :
t ->
[> `Structure of
(string
* [> `List of
[> `Structure of
(string
* [> `Boolean of Boolean.t
| `Enum of string
| `Integer of Integer.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `Double of Double.t
| `Enum of string
| `Integer of Integer.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `Double of Double.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `String of NonEmptyString.t ])
list ]
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Integer of Integer.t
| `String of NonEmptyString.t ])
list ])
list ]
list
| `Map of
([> `String of NonEmptyString.t ]
* [> `String of NonEmptyString.t ])
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Map of
([> `String of NonEmptyString.t ]
* [> `String of NonEmptyString.t ])
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Double of Double.t
| `Enum of string
| `Integer of Integer.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Double of Double.t
| `Integer of Integer.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Integer of Integer.t
| `Long of Long.t
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `Integer of
Integer.t
| `List of
[> `Structure of
(string
*
[>
`Long of
Long.t
| `String of
NonEmptyString.t
| `Structure of
(string
*
[>
`Long of
Long.t ])
list ])
list ]
list ])
list ])
list ]
list
| `Long of Long.t
| `Map of
([> `String of
NonEmptyString.t ]
* [> `String of
NonEmptyString.t ])
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Integer of Integer.t
| `List of
[> `String of
NonEmptyString.t
| `Structure of
(string
* [> `Integer of
Integer.t
| `List of
[> `String of
NonEmptyString.t ]
list
| `String of
NonEmptyString.t ])
list ]
list
| `Long of Long.t
| `Map of
([> `String of
NonEmptyString.t ]
* [> `String of
NonEmptyString.t ])
list
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `List of
[> `String of
NonEmptyString.t ]
list
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `Integer of
Integer.t
| `List of
[> `Structure of
(string
*
[>
`String of
NonEmptyString.t ])
list ]
list
| `String of
NonEmptyString.t ])
list ])
list ])
list ])
list ]
list
| `Long of Long.t
| `Map of
([> `String of NonEmptyString.t ]
* [> `String of NonEmptyString.t ])
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Double of Double.t
| `Integer of Integer.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Integer of Integer.t
| `List of
[> `Integer of Integer.t
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `Boolean of
Boolean.t
| `Integer of
Integer.t
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `Long of
Long.t ])
list ])
list ]
list
| `Long of Long.t
| `Map of
([> `String of
NonEmptyString.t ]
* [> `String of
NonEmptyString.t ])
list
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `Boolean of
Boolean.t
| `Integer of
Integer.t
| `List of
[> `Structure of
(string
* [>
`Long of
Long.t
| `String of
NonEmptyString.t
| `Structure of
(string
*
[>
`Long of
Long.t ])
list ])
list ]
list
| `Long of Long.t
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `Integer of
Integer.t
| `List of
[> `Integer of
Integer.t
| `String of
NonEmptyString.t
| `Structure of
(string
*
[>
`Enum of
string
| `String of
NonEmptyString.t
| `Structure of
(string
*
[>
`String of
NonEmptyString.t ])
list ])
list ]
list
| `String of
NonEmptyString.t
| `Structure of
(string
* [>
`String of
NonEmptyString.t ])
list ])
list ])
list ])
list ]
list
| `Long of Long.t
| `Map of
([> `String of NonEmptyString.t ]
* [> `String of
NonEmptyString.t ])
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Integer of Integer.t
| `List of
[> `String of
NonEmptyString.t
| `Structure of
(string
* [> `List of
[> `Structure of
(string
*
[>
`List of
[>
`String of
NonEmptyString.t ]
list
| `String of
NonEmptyString.t ])
list ]
list
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `String of
NonEmptyString.t ])
list ])
list ]
list
| `Long of Long.t
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Double of Double.t
| `Integer of Integer.t
| `List of
[> `String of
NonEmptyString.t
| `Structure of
(string
* [> `Integer of
Integer.t
| `String of
NonEmptyString.t
| `Structure of
(string
* [>
`List of
[>
`String of
NonEmptyString.t ]
list
| `Structure of
(string
*
[>
`List of
[>
`Integer of
Integer.t
| `Structure of
(string
*
[>
`Integer of
Integer.t
| `List of
[>
`String of
NonEmptyString.t ]
list
| `String of
NonEmptyString.t ])
list ]
list ])
list ])
list ])
list ]
list
| `String of
NonEmptyString.t
| `Structure of
(string
* [> `Boolean of
Boolean.t
| `String of
NonEmptyString.t ])
list ])
list ])
list ])
list ])
list ])
list ])
list ]
list
| `Map of
([> `String of NonEmptyString.t ]
* [> `String of NonEmptyString.t ])
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Double of Double.t
| `Enum of string
| `Integer of Integer.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `List of
[> `String of NonEmptyString.t ] list
| `String of NonEmptyString.t ])
list ]
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Boolean of Boolean.t
| `Enum of string
| `Integer of Integer.t
| `List of
[> `Structure of
(string
* [> `Double of Double.t
| `Integer of Integer.t
| `List of
[> `String of NonEmptyString.t
| `Structure of
(string
* [> `List of
[> `String of
NonEmptyString.t ]
list
| `String of NonEmptyString.t ])
list ]
list
| `Long of Long.t
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Double of Double.t
| `Enum of string
| `Integer of Integer.t
| `Long of Long.t
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Double of Double.t
| `Integer of Integer.t
| `String of
NonEmptyString.t ])
list ])
list ])
list ]
list
| `Map of
([> `String of NonEmptyString.t ]
* [> `String of NonEmptyString.t ])
list
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Integer of Integer.t
| `String of NonEmptyString.t
| `Structure of
(string
* [> `Double of Double.t
| `Integer of Integer.t
| `String of NonEmptyString.t ])
list ])
list ])
list ])
list ])
list ]
list ])
list ]