-
Notifications
You must be signed in to change notification settings - Fork 1
Java client integration example (API v3)
Oddsmarket maintains Java client library for using in Java application. The library source code and JAR file are published in this repository.
Additionally, in this repository you will find a reference implementation of Oddsmarket websocket client - a Java command-line application called FeedReader.
Maven pom.xml example
<repositories>
...
<repository>
<id>oddsmarket_client</id>
<url>https://public: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@maven.pkg.github.com/AspiraLimited/oddsmarket_client</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
Gradle example
repositories {
...
maven("https://maven.pkg.github.com/AspiraLimited/oddsmarket_client") {
credentials {
username = "public"
password = "\u0067hp_U8EDZgjmRsd2BIWznz3UQLcSDW14gV4LGDRF"
}
}
}
configurations.all {
// check for updates every build
resolutionStrategy.cacheChangingModulesFor 60, 'seconds'
}
When using Gradle, please mark dependencies with "-SNAPSHOT" version suffix as changing: true in your dependencies list.
See the latest <dependency> snippet on the oddsmarket client library package page.
OddsmarketClient client = OddsmarketClient.connect("wss://api-pr.oddsmarket.org/v3/odds_ws", "YOUR_API_KEY");
Use wss://api-pr.oddsmarket.org/v3/odds_ws for prematch events and wss://api-lv.oddsmarket.org/v3/odds_ws for live events.
OddsmarketClient.Handler handler = new OddsmarketClient.Handler() {
@Override
public void info(String message) {
// ...
}
@Override
public void bookmakerEvent(BookmakerEvent bookmakerEvent) {
// ...
}
@Override
public void odds(Map<String, Odd> oddByOddId) {
// ...
}
@Override
public void removeBookmakerEvents(Collection<Long> bookmakerEventIds) {
// ...
}
};
client.handler(handler);
| Handler method | Description |
|---|---|
| info | Method is called when FIELDS, SUBSCRIBED or unknown command are received from server. May be used for debugging and logging. |
| bookmakerEvent | Method is called when BookmakerEvent message arrives from server. In this method you should implement updating of your internal bookmaker events state. |
| odds | Method is called when Odds message arrives from server. In this method you should implement updating of your internal outcomes state. |
| removeBookmakerEvents | Method is called when bookmaker event removal command removed arrives from server. |
OddsmarketClient.Subscribe subscribe = new OddsmarketClient.Subscribe()
.bookmakerIds(2)
.sportIds(2);
client.subscribe(subscribe);
Usage example:
OddsmarketRestHttpClient oddsmarketRestHttpClient = new OddsmarketRestHttpClient(
"https://api-mst.oddsmarket.org",
"https://api-lv.oddsmarket.org",
"https://api-pr.oddsmarket.org",
5000L
);
List<MarketAndBetTypeDto> marketAndBetTypeDtos = oddsmarketRestHttpClient.getMarketAndBetTypes().get();
List<BetTypeDto> betTypeDtos = oddsmarketRestHttpClient.getBetTypes().get();
List<SportDto> sportDtos = oddsmarketRestHttpClient.getSports().get();
List<BookmakerDto> bookmakerDtos = oddsmarketRestHttpClient.getBookmakers().get();
Please read how to get a list of bookmakers from here.
Please read how to get a list of sports from here.
This section describes API v3.
If you are using API v4 go to API v4 documentation root page.