Skip to content

Repository files navigation

Bitcaster Java SDK

GitHub Release CI OpenSSF Best Practices CodeQLJ

Spring-friendly Java client for the Bitcaster REST API. Java 17 and Spring Boot 3.5 are supported.

Usage

BitcasterClient client = new BitcasterClient(
        "https://API_KEY@example.com/api/o/my-organization/");
client.setDomain("my-project", "my-application");

Map<String, Object> result = client.triggerEvent(
        "order.created", Map.of("id", "abc-123"), null, null);
List<Map<String, Object>> users = client.listUsers();

The client sends the same requests as the Python SDK. It supports ping, resource listing, event triggering, user creation/update, application registration, and unregistration. AsyncBitcasterClient exposes the same mutating operations as CompletableFuture values.

Spring Boot

The auto-configuration creates a BitcasterClient bean when the starter is on the classpath. Configure it with bitcaster.bae, bitcaster.project, and bitcaster.application; environment variables such as BITCASTER_BAE work through Spring Boot's relaxed binding.

bitcaster:
  bae: https://API_KEY@example.com/api/o/my-organization/
  project: my-project
  application: my-application

The endpoint token is removed from request URLs and sent as Authorization: Key ....

Testing

Run the complete test suite with the Maven Wrapper:

./mvnw test

Run a focused test class:

./mvnw test -Dtest=BitcasterClientTest

Enable the optional JaCoCo coverage profile:

./mvnw -Pcoverage verify

The HTML coverage report is generated at target/site/jacoco/index.html. The coverage profile enforces at least 80% branch coverage; a failed check blocks the build and should be resolved before a major release.

About

Spring-friendly Java client for the Bitcaster REST API

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages