Java SDK
Use the TwexAPI Java SDK for tweet search, follower exports, and public reads in Spring and JVM backends.
Use the Java SDK when you want typed builders, CompletableFuture support, retries, and pagination helpers for TwexAPI REST workflows in Spring Boot, worker, and JVM backend applications.
twexapi-dev/x-api-scraper-javaJava SDK for TwexAPI public social data and approved account workflows. Independent third-party service.00| Java task | SDK call | Save |
|---|---|---|
| Search tweets | sdk.search().advanced() |
nextCursor |
| Read profile | sdk.users().getAbout() |
screenName |
| List followers | sdk.users().followers().list() |
cursor |
Install
Gradle:
implementation 'io.twexapi:x-api-scraper:0.1.0'
Maven:
<dependency>
<groupId>io.twexapi</groupId>
<artifactId>x-api-scraper</artifactId>
<version>0.1.0</version>
</dependency>
Maven Central publication is pending. Build from source at twexapi-dev/x-api-scraper-java.
Authenticate
export X_API_SCRAPER_KEY="YOUR_API_KEY"
import io.twexapi.sdk.XApiScraper;
import io.twexapi.sdk.models.components.AdvancedSearchCursorQuery;
XApiScraper sdk = XApiScraper.builder()
.bearerAuth(System.getenv("X_API_SCRAPER_KEY"))
.build();
AdvancedSearchCursorQuery req = AdvancedSearchCursorQuery.builder()
.searchTerms(java.util.List.of("from:elonmusk"))
.sortBy("Latest")
.nextCursor("")
.build();
var res = sdk.search().advanced().request(req).call();
Basic example
Look up a profile and list followers:
var about = sdk.users().getAbout()
.screenName("elonmusk")
.call();
var followers = sdk.users().followers().list()
.request(FollowersFollowingV3Query.builder()
.username("elonmusk")
.build())
.call();
Workflow: search tweets
String cursor = "";
while (true) {
var page = sdk.search().advanced()
.request(AdvancedSearchCursorQuery.builder()
.searchTerms(java.util.List.of("from:elonmusk AI"))
.sortBy("Latest")
.nextCursor(cursor)
.build())
.call();
// process page.tweets()
if (!page.hasNextPage() || page.nextCursor() == null || page.nextCursor().isEmpty()) {
break;
}
cursor = page.nextCursor();
}
Error handling
The SDK throws typed exceptions for HTTP failures. Use try/catch around .call() and inspect status codes before retrying 4xx responses.
Add an SLF4j implementation such as Logback for debug logging during local development.
References
- SDKs overview
- Kotlin SDK (coroutine wrapper over this client)
- Authentication
- Advanced Twitter Search
- Source Repository