:doc:`ApplicationCostProfiler <../../applicationcostprofiler>` / Client / put_report_definition

*********************
put_report_definition
*********************



.. py:method:: ApplicationCostProfiler.Client.put_report_definition(**kwargs)

  

  Creates the report definition for a report in Application Cost Profiler.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/PutReportDefinition>`_  


  **Request Syntax**
  ::

    response = client.put_report_definition(
        reportId='string',
        reportDescription='string',
        reportFrequency='MONTHLY'|'DAILY'|'ALL',
        format='CSV'|'PARQUET',
        destinationS3Location={
            'bucket': 'string',
            'prefix': 'string'
        }
    )
    
  :type reportId: string
  :param reportId: **[REQUIRED]** 

    Required. ID of the report. You can choose any valid string matching the pattern for the ID.

    

  
  :type reportDescription: string
  :param reportDescription: **[REQUIRED]** 

    Required. Description of the report.

    

  
  :type reportFrequency: string
  :param reportFrequency: **[REQUIRED]** 

    Required. The cadence to generate the report.

    

  
  :type format: string
  :param format: **[REQUIRED]** 

    Required. The format to use for the generated report.

    

  
  :type destinationS3Location: dict
  :param destinationS3Location: **[REQUIRED]** 

    Required. Amazon Simple Storage Service (Amazon S3) location where Application Cost Profiler uploads the report.

    

  
    - **bucket** *(string) --* **[REQUIRED]** 

      Name of the S3 bucket.

      

    
    - **prefix** *(string) --* **[REQUIRED]** 

      Prefix for the location to write to.

      

    
  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'reportId': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **reportId** *(string) --* 

        ID of the report.

        
  
  **Exceptions**
  
  *   :py:class:`ApplicationCostProfiler.Client.exceptions.InternalServerException`

  
  *   :py:class:`ApplicationCostProfiler.Client.exceptions.ThrottlingException`

  
  *   :py:class:`ApplicationCostProfiler.Client.exceptions.ValidationException`

  
  *   :py:class:`ApplicationCostProfiler.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`ApplicationCostProfiler.Client.exceptions.ServiceQuotaExceededException`

  