async fn describe_server(
        &self,
        input: DescribeServerRequest,
    ) -> Result<DescribeServerResponse, RusotoError<DescribeServerError>> {
        let mut request = self.new_signed_request("POST", "/");
        request.add_header("x-amz-target", "TransferService.DescribeServer");
        let encoded = serde_json::to_string(&input).unwrap();
        request.set_payload(Some(encoded));

        let response = self
            .sign_and_dispatch(request, DescribeServerError::from_response)
            .await?;
        let mut response = response;
        let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?;
        proto::json::ResponsePayload::new(&response).deserialize::<DescribeServerResponse, _>()
    }
<p>Describes a file transfer protocol-enabled server that you specify by passing the <code>ServerId</code> parameter.</p> <p>The response contains a description of a server's properties. When you set <code>EndpointType</code> to VPC, the response will contain the <code>EndpointDetails</code>.</p>
rusoto/services/transfer/src/generated.rs