/// <summary> /// Generates a report that lists all tagged resources in the accounts across your organization /// and tells whether each resource is compliant with the effective tag policy. Compliance /// data is refreshed daily. The report is generated asynchronously. /// /// /// <para> /// The generated report is saved to the following location: /// </para> /// /// <para> /// <code>s3://example-bucket/AwsTagPolicies/o-exampleorgid/YYYY-MM-ddTHH:mm:ssZ/report.csv</code> /// /// </para> /// /// <para> /// You can call this operation only from the organization's management account and from /// the us-east-1 Region. /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the StartReportCreation service method.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// /// <returns>The response from the StartReportCreation service method, as returned by ResourceGroupsTaggingAPI.</returns> /// <exception cref="Amazon.ResourceGroupsTaggingAPI.Model.ConcurrentModificationException"> /// The target of the operation is currently being modified by a different request. Try /// again later. /// </exception> /// <exception cref="Amazon.ResourceGroupsTaggingAPI.Model.ConstraintViolationException"> /// The request was denied because performing this operation violates a constraint. /// /// /// <para> /// Some of the reasons in the following list might not apply to this specific operation. /// </para> /// <ul> <li> /// <para> /// You must meet the prerequisites for using tag policies. For information, see <a href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies-prereqs.html">Prerequisites /// and Permissions for Using Tag Policies</a> in the <i>AWS Organizations User Guide.</i> /// /// </para> /// </li> <li> /// <para> /// You must enable the tag policies service principal (<code>tagpolicies.tag.amazonaws.com</code>) /// to integrate with AWS Organizations For information, see <a href="http://docs.aws.amazon.com/organizations/latest/APIReference/API_EnableAWSServiceAccess.html">EnableAWSServiceAccess</a>. /// </para> /// </li> <li> /// <para> /// You must have a tag policy attached to the organization root, an OU, or an account. /// </para> /// </li> </ul> /// </exception> /// <exception cref="Amazon.ResourceGroupsTaggingAPI.Model.InternalServiceException"> /// The request processing failed because of an unknown error, exception, or failure. /// You can retry the request. /// </exception> /// <exception cref="Amazon.ResourceGroupsTaggingAPI.Model.InvalidParameterException"> /// This error indicates one of the following: /// /// <ul> <li> /// <para> /// A parameter is missing. /// </para> /// </li> <li> /// <para> /// A malformed string was supplied for the request parameter. /// </para> /// </li> <li> /// <para> /// An out-of-range value was supplied for the request parameter. /// </para> /// </li> <li> /// <para> /// The target ID is invalid, unsupported, or doesn't exist. /// </para> /// </li> <li> /// <para> /// You can't access the Amazon S3 bucket for report storage. For more information, see /// <a href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies-prereqs.html#bucket-policies-org-report">Additional /// Requirements for Organization-wide Tag Compliance Reports</a> in the <i>AWS Organizations /// User Guide.</i> /// </para> /// </li> </ul> /// </exception> /// <exception cref="Amazon.ResourceGroupsTaggingAPI.Model.ThrottledException"> /// The request was denied to limit the frequency of submitted requests. /// </exception> /// <seealso href="http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/StartReportCreation">REST API Reference for StartReportCreation Operation</seealso> public virtual Task <StartReportCreationResponse> StartReportCreationAsync(StartReportCreationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = StartReportCreationRequestMarshaller.Instance; options.ResponseUnmarshaller = StartReportCreationResponseUnmarshaller.Instance; return(InvokeAsync <StartReportCreationResponse>(request, options, cancellationToken)); }
internal virtual StartReportCreationResponse StartReportCreation(StartReportCreationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = StartReportCreationRequestMarshaller.Instance; options.ResponseUnmarshaller = StartReportCreationResponseUnmarshaller.Instance; return(Invoke <StartReportCreationResponse>(request, options)); }