← ClaudeAtlas

kora-http-clientlisted

Declarative Kora HTTP clients — @HttpClient with @HttpRoute, @Path/@Query/@Header, @Json, interceptors, OkHttp/Async/JDK transports. Use for typed outbound calls. For OpenAPI clients see kora-openapi-generator-client; for the inbound server see kora-http-server.
kora-projects/kora-skills · ★ 1 · API & Backend · score 72
Install: claude install-skill kora-projects/kora-skills
# Kora HTTP Client > **Kora sub-skill — obey the [kora-v1 meta rules](../../SKILL.md) on every task:** **R0** ensure `.kora-agent/` docs+examples are cloned · **R1** read this sub-skill before writing code · **R2** Kora APIs only — no Spring/Micronaut/Quarkus, no invented annotations or config keys · **R3** journal any incorrect Kora usage. Add comments/Javadoc only if asked. Declarative, compile-time HTTP clients: annotate an interface with `@HttpClient`, declare methods with `@HttpRoute`, and the annotation processor generates the implementation. No reflection, no runtime proxies. Inject the client interface like any other Kora component. **Dependencies:** `http-client-ok` (transport) + `json-module` (for `@Json`) + `annotation-processors`. All Kora artifacts inherit their version from the `ru.tinkoff.kora:kora-parent` BOM (the examples pin `1.2.19`). Never version individual `ru.tinkoff.kora:*` artifacts. --- ## Quick Start ### 1. Dependencies (Java) ```groovy dependencies { koraBom platform("ru.tinkoff.kora:kora-parent:1.2.19") annotationProcessor "ru.tinkoff.kora:annotation-processors" implementation "ru.tinkoff.kora:http-client-ok" implementation "ru.tinkoff.kora:json-module" implementation "ru.tinkoff.kora:config-hocon" } ``` For Kotlin, use `ksp "ru.tinkoff.kora:symbol-processors"` instead of `annotationProcessor`. ### 2. Plug the transport module into `@KoraApp` ```java @KoraApp public interface Application extends HoconConfig