diff --git a/pom.xml b/pom.xml
index d61359e..593674a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -86,6 +86,10 @@
${record-builder.version}
provided
+
+ io.quarkus
+ quarkus-smallrye-health
+
io.quarkus
quarkus-junit
diff --git a/src/main/java/com/backend/unifier/title/service/health/KodikServiceHealthCheck.java b/src/main/java/com/backend/unifier/title/service/health/KodikServiceHealthCheck.java
new file mode 100644
index 0000000..d33bb1e
--- /dev/null
+++ b/src/main/java/com/backend/unifier/title/service/health/KodikServiceHealthCheck.java
@@ -0,0 +1,44 @@
+package com.backend.unifier.title.service.health;
+
+import java.time.Instant;
+
+import org.eclipse.microprofile.health.HealthCheck;
+import org.eclipse.microprofile.health.HealthCheckResponse;
+import org.eclipse.microprofile.health.HealthCheckResponseBuilder;
+import org.eclipse.microprofile.health.Readiness;
+import org.eclipse.microprofile.rest.client.inject.RestClient;
+
+import com.backend.metadata.kodik.service.api.model.KodikResponse;
+import com.backend.unifier.title.service.api.KodikSearchService;
+
+import jakarta.enterprise.context.ApplicationScoped;
+
+@Readiness
+@ApplicationScoped
+public class KodikServiceHealthCheck implements HealthCheck {
+ @RestClient
+ KodikSearchService kodikService;
+
+ @Override
+ public HealthCheckResponse call() {
+ HealthCheckResponseBuilder responseBuilder = HealthCheckResponse.named("Kodik Service Connection");
+
+ try {
+ KodikResponse response = kodikService.search("Хеллсинг");
+
+ return responseBuilder
+ .up()
+ .withData("status", "connected")
+ .withData("timestamp", Instant.now().toString())
+ .build();
+
+ } catch (Exception e) {
+ return responseBuilder
+ .down()
+ .withData("reason", e.getMessage())
+ .withData("timestamp", Instant.now().toString())
+ .build();
+ }
+ }
+
+}