ensureAbility($request, 'read')) { return $error; } $teamId = $this->resolveTeamId($request); if (is_null($teamId)) { return Response::error('Invalid token.'); } $uuid = $request->get('uuid'); if (! is_string($uuid) || $uuid === '') { return Response::error('uuid argument is required.'); } $server = Server::whereTeamId($teamId)->where('uuid', $uuid)->with('settings')->first(); if (! $server) { return Response::error("Server [{$uuid}] not found."); } $data = $this->scrubSensitive($server->toArray()); $data['is_reachable'] = $server->settings?->is_reachable; $data['is_usable'] = $server->settings?->is_usable; $data['connection_timeout'] = $server->settings?->connection_timeout; return $this->respond($data, $this->actionsForServer($uuid)); } public function schema(JsonSchema $schema): array { return [ 'uuid' => $schema->string()->description('Server UUID.')->required(), ]; } }