# Java and Kotlin

Coming soon to Maven Central. Until then, call the Texa API over HTTP.


!!! note "Coming soon"
    The Java SDK is written and passes the contract tests, but isn't on Maven Central yet, so the
    dependency below doesn't resolve today. Until it is, call the [API](/api-reference/texa-api) over
    HTTP. This is how the client will look.

```xml
<dependency>
  <groupId>com.texadesk</groupId>
  <artifactId>texa-java</artifactId>
  <version>1.0.0</version>
</dependency>
```

```java
TexaClient texa = new TexaClient(System.getenv("TEXA_API_KEY"));
var convo = texa.openConversation(Map.of("channel", "web", "customer_ref", "user-1842"),
                                  "open-user-1842");
String id = (String) convo.get("conversation_id");
var out = texa.sendMessage(id, Map.of("text", "Where is my transfer?", "message_id", "msg-551"));
var events = texa.runActions(id, out,
    Map.of("get_transfer_status", in -> Map.of("status", "paid_out")));

var event = Webhooks.parse(secret, timestampHeader, signatureHeader, rawBody);
```

Java 17+, and Kotlin with the same client.
