Skip to content

update_model_manifest async

update_model_manifest(
    name: resourceName,
    *,
    config_overrides: Optional[AsyncIoTFleetWiseClientConfig] = None,
    description: Optional[description] = None,
    nodes_to_add: Optional[NodePaths] = None,
    nodes_to_remove: Optional[NodePaths] = None,
    status: Optional[ManifestStatus] = None,
) -> UpdateModelManifestResponse

Updates a vehicle model (model manifest). If created vehicles are associated with a vehicle model, it can't be updated.

Parameters:

  • name (resourceName) –

    The name of the vehicle model to update.

  • description (Optional[description], default: None ) –

    A brief description of the vehicle model.

  • nodes_to_add (Optional[NodePaths], default: None ) –

    A list of fullyQualifiedName of nodes, which are a general abstraction of signals, to add to the vehicle model.

  • nodes_to_remove (Optional[NodePaths], default: None ) –

    A list of fullyQualifiedName of nodes, which are a general abstraction of signals, to remove from the vehicle model.

  • status (Optional[ManifestStatus], default: None ) –

    The state of the vehicle model. If the status is ACTIVE, the vehicle model can't be edited. If the status is DRAFT, you can edit the vehicle model.

Raises:

Source code in docs_src/capo_iotfleetwise/_services/async_io_t_fleet_wise.py
async def update_model_manifest(
    self,
    name: "capo_iotfleetwise.types.resource_name.resourceName",
    *,
    config_overrides: Optional[AsyncIoTFleetWiseClientConfig] = None,
    description: Optional["capo_iotfleetwise.types.description.description"] = None,
    nodes_to_add: Optional["capo_iotfleetwise.types.node_paths.NodePaths"] = None,
    nodes_to_remove: Optional[
        "capo_iotfleetwise.types.node_paths.NodePaths"
    ] = None,
    status: Optional[
        "capo_iotfleetwise.types.manifest_status.ManifestStatus"
    ] = None,
) -> "capo_iotfleetwise.types.update_model_manifest_response.UpdateModelManifestResponse":
    """<p> Updates a vehicle model (model manifest). If created vehicles are associated with a vehicle model, it can't be updated.</p>

    Args:
        name: <p> The name of the vehicle model to update. </p>
        description: <p> A brief description of the vehicle model. </p>
        nodes_to_add: <p> A list of <code>fullyQualifiedName</code> of nodes, which are a general abstraction of signals, to add to the vehicle model. </p>
        nodes_to_remove: <p> A list of <code>fullyQualifiedName</code> of nodes, which are a general abstraction of signals, to remove from the vehicle model. </p>
        status: <p> The state of the vehicle model. If the status is <code>ACTIVE</code>, the vehicle model can't be edited. If the status is <code>DRAFT</code>, you can edit the vehicle model. </p>

    Raises:
        capo_iotfleetwise.errors.internal_server_exception.InternalServerException: <p>The request couldn't be completed because the server temporarily failed.</p>
        capo_iotfleetwise.errors.access_denied_exception.AccessDeniedException: <p>You don't have sufficient permission to perform this action.</p>
        capo_iotfleetwise.errors.conflict_exception.ConflictException: <p>The request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time.</p>
        capo_iotfleetwise.errors.invalid_signals_exception.InvalidSignalsException: <p>The request couldn't be completed because it contains signals that aren't valid.</p>
        capo_iotfleetwise.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource wasn't found.</p>
        capo_iotfleetwise.errors.throttling_exception.ThrottlingException: <p>The request couldn't be completed due to throttling.</p>
        capo_iotfleetwise.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints specified by an Amazon Web Services service.</p>
        capo_iotfleetwise.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_iotfleetwise.types.update_model_manifest_request.UpdateModelManifestRequest]",
    ) -> AsyncOperationResponse[
        "capo_iotfleetwise.types.update_model_manifest_response.UpdateModelManifestResponse"
    ]:
        import capo_iotfleetwise._operations.io_t_autobahn_control_plane.update_model_manifest

        (
            output,
            http_response,
        ) = await capo_iotfleetwise._operations.io_t_autobahn_control_plane.update_model_manifest.async_update_model_manifest(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateModelManifest")
    )
    input_: capo_iotfleetwise.types.update_model_manifest_request.UpdateModelManifestRequest = {
        "name": name
    }
    if description is not None:
        input_["description"] = description
    if nodes_to_add is not None:
        input_["nodes_to_add"] = nodes_to_add
    if nodes_to_remove is not None:
        input_["nodes_to_remove"] = nodes_to_remove
    if status is not None:
        input_["status"] = status

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