Skip to content

update_web_app

update_web_app(
    web_app_id: WebAppId,
    *,
    config_overrides: Optional[TransferClientConfig] = None,
    identity_provider_details: Optional[UpdateWebAppIdentityProviderDetails] = None,
    access_endpoint: Optional[WebAppAccessEndpoint] = None,
    web_app_units: Optional[WebAppUnits] = None,
    endpoint_details: Optional[UpdateWebAppEndpointDetails] = None,
) -> UpdateWebAppResponse

Assigns new properties to a web app. You can modify the access point, identity provider details, endpoint configuration, and the web app units.

For more information about using VPC endpoints with Transfer Family, see Create a Transfer Family web app in a VPC.

Parameters:

  • web_app_id (WebAppId) –

    Provide the identifier of the web app that you are updating.

  • identity_provider_details (Optional[UpdateWebAppIdentityProviderDetails], default: None ) –

    Provide updated identity provider values in a WebAppIdentityProviderDetails object.

  • access_endpoint (Optional[WebAppAccessEndpoint], default: None ) –

    The AccessEndpoint is the URL that you provide to your users for them to interact with the Transfer Family web app. You can specify a custom URL or use the default value.

  • web_app_units (Optional[WebAppUnits], default: None ) –

    A union that contains the value for number of concurrent connections or the user sessions on your web app.

  • endpoint_details (Optional[UpdateWebAppEndpointDetails], default: None ) –

    The updated endpoint configuration for the web app. You can modify the endpoint type and VPC configuration settings.

Raises:

  • AccessDeniedException –

    You do not have sufficient access to perform this action.

  • ConflictException –

    This exception is thrown when the UpdateServer is called for a file transfer protocol-enabled server that has VPC as the endpoint type and the server's VpcEndpointID is not in the available state.

  • InternalServiceError –

    This exception is thrown when an error occurs in the Transfer Family service.

  • InvalidRequestException –

    This exception is thrown when the client submits a malformed request.

  • ResourceNotFoundException –

    This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer Family service.

  • ThrottlingException –

    The request was denied due to request throttling.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_transfer/_services/transfer.py
def update_web_app(
    self,
    web_app_id: "capo_transfer.types.web_app_id.WebAppId",
    *,
    config_overrides: Optional[TransferClientConfig] = None,
    identity_provider_details: Optional[
        "capo_transfer.types.update_web_app_identity_provider_details.UpdateWebAppIdentityProviderDetails"
    ] = None,
    access_endpoint: Optional[
        "capo_transfer.types.web_app_access_endpoint.WebAppAccessEndpoint"
    ] = None,
    web_app_units: Optional["capo_transfer.types.web_app_units.WebAppUnits"] = None,
    endpoint_details: Optional[
        "capo_transfer.types.update_web_app_endpoint_details.UpdateWebAppEndpointDetails"
    ] = None,
) -> "capo_transfer.types.update_web_app_response.UpdateWebAppResponse":
    """<p>Assigns new properties to a web app. You can modify the access point, identity provider details, endpoint configuration, and the web app units.</p> <p>For more information about using VPC endpoints with Transfer Family, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/create-webapp-in-vpc.html">Create a Transfer Family web app in a VPC</a>.</p>

    Args:
        web_app_id: <p>Provide the identifier of the web app that you are updating.</p>
        identity_provider_details: <p>Provide updated identity provider values in a <code>WebAppIdentityProviderDetails</code> object.</p>
        access_endpoint: <p>The <code>AccessEndpoint</code> is the URL that you provide to your users for them to interact with the Transfer Family web app. You can specify a custom URL or use the default value.</p>
        web_app_units: <p>A union that contains the value for number of concurrent connections or the user sessions on your web app.</p>
        endpoint_details: <p>The updated endpoint configuration for the web app. You can modify the endpoint type and VPC configuration settings.</p>

    Raises:
        capo_transfer.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
        capo_transfer.errors.conflict_exception.ConflictException: <p>This exception is thrown when the <code>UpdateServer</code> is called for a file transfer protocol-enabled server that has VPC as the endpoint type and the server's <code>VpcEndpointID</code> is not in the available state.</p>
        capo_transfer.errors.internal_service_error.InternalServiceError: <p>This exception is thrown when an error occurs in the Transfer Family service.</p>
        capo_transfer.errors.invalid_request_exception.InvalidRequestException: <p>This exception is thrown when the client submits a malformed request.</p>
        capo_transfer.errors.resource_not_found_exception.ResourceNotFoundException: <p>This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer Family service.</p>
        capo_transfer.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling.</p>
        capo_transfer.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_transfer.types.update_web_app_request.UpdateWebAppRequest]",
    ) -> OperationResponse[
        "capo_transfer.types.update_web_app_response.UpdateWebAppResponse"
    ]:
        import capo_transfer._operations.transfer_service.update_web_app

        output, http_response = (
            capo_transfer._operations.transfer_service.update_web_app.update_web_app(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateWebApp")
    )
    input_: capo_transfer.types.update_web_app_request.UpdateWebAppRequest = {
        "web_app_id": web_app_id
    }
    if identity_provider_details is not None:
        input_["identity_provider_details"] = identity_provider_details
    if access_endpoint is not None:
        input_["access_endpoint"] = access_endpoint
    if web_app_units is not None:
        input_["web_app_units"] = web_app_units
    if endpoint_details is not None:
        input_["endpoint_details"] = endpoint_details

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output