:doc:`IoTSiteWise <../../iotsitewise>` / Client / delete_asset_model_composite_model

**********************************
delete_asset_model_composite_model
**********************************



.. py:method:: IoTSiteWise.Client.delete_asset_model_composite_model(**kwargs)

  

  Deletes a composite model. This action can't be undone. You must delete all assets created from a composite model before you can delete the model. Also, you can't delete a composite model if a parent asset model exists that contains a property formula expression that depends on the asset model that you want to delete. For more information, see `Deleting assets and models <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/delete-assets-and-models.html>`__ in the *IoT SiteWise User Guide*.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DeleteAssetModelCompositeModel>`_  


  **Request Syntax**
  ::

    response = client.delete_asset_model_composite_model(
        assetModelId='string',
        assetModelCompositeModelId='string',
        clientToken='string',
        ifMatch='string',
        ifNoneMatch='string',
        matchForVersionType='LATEST'|'ACTIVE'
    )
    
  :type assetModelId: string
  :param assetModelId: **[REQUIRED]** 

    The ID of the asset model, in UUID format.

    

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

    The ID of a composite model on this asset model.

    

  
  :type clientToken: string
  :param clientToken: 

    A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

    This field is autopopulated if not provided.

  
  :type ifMatch: string
  :param ifMatch: 

    The expected current entity tag (ETag) for the asset model’s latest or active version (specified using ``matchForVersionType``). The delete request is rejected if the tag does not match the latest or active version's current entity tag. See `Optimistic locking for asset model writes <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/opt-locking-for-model.html>`__ in the *IoT SiteWise User Guide*.

    

  
  :type ifNoneMatch: string
  :param ifNoneMatch: 

    Accepts ***** to reject the delete request if an active version (specified using ``matchForVersionType`` as ``ACTIVE``) already exists for the asset model.

    

  
  :type matchForVersionType: string
  :param matchForVersionType: 

    Specifies the asset model version type ( ``LATEST`` or ``ACTIVE``) used in conjunction with ``If-Match`` or ``If-None-Match`` headers to determine the target ETag for the delete operation.

    

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

    
    ::

      {
          'assetModelStatus': {
              'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED',
              'error': {
                  'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE',
                  'message': 'string',
                  'details': [
                      {
                          'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION',
                          'message': 'string'
                      },
                  ]
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **assetModelStatus** *(dict) --* 

        Contains current status information for an asset model. For more information, see `Asset and model states <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-and-model-states.html>`__ in the *IoT SiteWise User Guide*.

        
        

        - **state** *(string) --* 

          The current state of the asset model.

          
        

        - **error** *(dict) --* 

          Contains associated error information, if any.

          
          

          - **code** *(string) --* 

            The error code.

            
          

          - **message** *(string) --* 

            The error message.

            
          

          - **details** *(list) --* 

            A list of detailed errors.

            
            

            - *(dict) --* 

              Contains detailed error information.

              
              

              - **code** *(string) --* 

                The error code.

                
              

              - **message** *(string) --* 

                The error message.

                
          
        
      
    
  
  **Exceptions**
  
  *   :py:class:`IoTSiteWise.Client.exceptions.InvalidRequestException`

  
  *   :py:class:`IoTSiteWise.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`IoTSiteWise.Client.exceptions.InternalFailureException`

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

  
  *   :py:class:`IoTSiteWise.Client.exceptions.ConflictingOperationException`

  
  *   :py:class:`IoTSiteWise.Client.exceptions.PreconditionFailedException`

  