Skip to content

update_system_template async

update_system_template(
    id: Urn,
    definition: DefinitionDocument,
    *,
    config_overrides: Optional[AsyncIoTThingsGraphClientConfig] = None,
    compatible_namespace_version: Optional[Version] = None,
) -> UpdateSystemTemplateResponse

Updates the specified system. You don't need to run this action after updating a workflow. Any deployment that uses the system will see the changes in the system when it is redeployed.

Parameters:

  • id (Urn) –

    The ID of the system to be updated.

    The ID should be in the following format.

    urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME

  • definition (DefinitionDocument) –

    The DefinitionDocument that contains the updated system definition.

  • compatible_namespace_version (Optional[Version], default: None ) –

    The version of the user's namespace. Defaults to the latest version of the user's namespace.

    If no value is specified, the latest version is used by default.

Raises:

Source code in docs_src/capo_iotthingsgraph/_services/async_io_t_things_graph.py
async def update_system_template(
    self,
    id: "capo_iotthingsgraph.types.urn.Urn",
    definition: "capo_iotthingsgraph.types.definition_document.DefinitionDocument",
    *,
    config_overrides: Optional[AsyncIoTThingsGraphClientConfig] = None,
    compatible_namespace_version: Optional[
        "capo_iotthingsgraph.types.version.Version"
    ] = None,
) -> "capo_iotthingsgraph.types.update_system_template_response.UpdateSystemTemplateResponse":
    """<p>Updates the specified system. You don't need to run this action after updating a workflow. Any deployment that uses the system will see the changes in the system when it is redeployed.</p>

    Args:
        id: <p>The ID of the system to be updated.</p> <p>The ID should be in the following format.</p> <p> <code>urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME</code> </p>
        definition: <p>The <code>DefinitionDocument</code> that contains the updated system definition.</p>
        compatible_namespace_version: <p>The version of the user's namespace. Defaults to the latest version of the user's namespace.</p> <p>If no value is specified, the latest version is used by default.</p>

    Raises:
        capo_iotthingsgraph.errors.internal_failure_exception.InternalFailureException: <p></p>
        capo_iotthingsgraph.errors.invalid_request_exception.InvalidRequestException: <p></p>
        capo_iotthingsgraph.errors.resource_not_found_exception.ResourceNotFoundException: <p></p>
        capo_iotthingsgraph.errors.throttling_exception.ThrottlingException: <p></p>
        capo_iotthingsgraph.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_iotthingsgraph.types.update_system_template_request.UpdateSystemTemplateRequest]",
    ) -> AsyncOperationResponse[
        "capo_iotthingsgraph.types.update_system_template_response.UpdateSystemTemplateResponse"
    ]:
        import capo_iotthingsgraph._operations.iot_things_graph_front_end_service.update_system_template

        (
            output,
            http_response,
        ) = await capo_iotthingsgraph._operations.iot_things_graph_front_end_service.update_system_template.async_update_system_template(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateSystemTemplate")
    )
    input_: capo_iotthingsgraph.types.update_system_template_request.UpdateSystemTemplateRequest = {
        "id": id,
        "definition": definition,
    }
    if compatible_namespace_version is not None:
        input_["compatible_namespace_version"] = compatible_namespace_version

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output