private GetHostResponse getHost(RestApi.RequestContext context) {
        String hostNameString = context.pathParameters().getStringOrThrow("hostname");
        HostName hostName = new HostName(hostNameString);
        try {
            Host host = orchestrator.getHost(hostName);

            URI applicationUri = context.baseRequestURL()
                    .withPath(Path.parse( "/orchestrator/v1/instances/" + host.getApplicationInstanceReference().asString()))
                    .asURI();

            List<HostService> hostServices = host.getServiceInstances().stream()
                    .map(serviceInstance -> new HostService(
                            serviceInstance.getServiceCluster().clusterId().s(),
                            serviceInstance.getServiceCluster().serviceType().s(),
                            serviceInstance.configId().s(),
                            serviceInstance.serviceStatus().name()))
                    .toList();

            return new GetHostResponse(
                    host.getHostName().s(),
                    host.getHostInfo().status().name(),
                    host.getHostInfo().suspendedSince().map(Instant::toString).orElse(null),
                    applicationUri.toString(),
                    hostServices);
        } catch (UncheckedTimeoutException e) {
            log.log(Level.FINE, () -> "Failed to get host " + hostName + ": " + e.getMessage());
            throw restApiExceptionFromTimeout("getHost", hostName, e);
        } catch (HostNameNotFoundException e) {
            log.log(Level.FINE, () -> "Host not found: " + hostName);
            throw new RestApiException.NotFound(e);
        }
    }
Shows the Orchestrator state of a host.
orchestrator/src/main/java/com/yahoo/vespa/orchestrator/resources/HostRequestHandler.java