Skip to content
Scalekit Docs
Talk to an EngineerDashboard

Token helpers

Token helpers and verification

Create and validate API tokens for programmatic access to Scalekit APIs in Java.

Use tokens for service access that is not a full end-user session. Create a token, store it securely, and validate it on incoming requests.

clientTokenshttps://github.com/scalekit-inc/scalekit-sdk-java/blob/main/src/main/java/com/scalekit/api/TokenClient.java
#create

Creates a new API token for an organization with custom options.

paramorganizationIdString

The organization ID to scope the token to

paramuserIdString

Optional user ID to scope the token to a specific user

paramcustomClaimsMap(String, String)

Optional custom claims key-value pairs

paramexpiryTimestamp

Optional expiry timestamp

paramdescriptionString

Optional human-readable description

returnsCreateTokenResponse

The created resource.

import java.util.HashMap;
import java.util.Map;
import com.google.protobuf.Timestamp;
Map<String, String> claims = new HashMap<>();
claims.put("environment", "production");
Timestamp expiry = Timestamp.newBuilder()
.setSeconds(System.currentTimeMillis() / 1000 + 86400)
.build();
scalekitClient.tokens().create("org_123", "user_123", claims, expiry, "Production access token");
clientTokenshttps://github.com/scalekit-inc/scalekit-sdk-java/blob/main/src/main/java/com/scalekit/api/TokenClient.java
#validate

Validates an API token and returns associated context.

paramtokenString

The opaque token string or token_id (apit_xxxxx)

returnsValidateTokenResponse

Verified claims or result.

scalekitClient.tokens().validate("apit_xxxxx");
clientTokenshttps://github.com/scalekit-inc/scalekit-sdk-java/blob/main/src/main/java/com/scalekit/api/TokenClient.java
#invalidate

Invalidates (soft deletes) an API token.

paramtokenString

The opaque token string or token_id (apit_xxxxx)

returnsvoid

No return value

scalekitClient.tokens().invalidate("apit_xxxxx");
clientTokenshttps://github.com/scalekit-inc/scalekit-sdk-java/blob/main/src/main/java/com/scalekit/api/TokenClient.java
#list

Lists API tokens for an organization and user with pagination.

paramorganizationIdString

The organization ID to list tokens for

paramuserIdString

The user ID to filter tokens for

parampageSizeint

Page size (default 10, max 30)

parampageTokenString

Pagination cursor for next page

returnsListTokensResponse

Paginated results.

scalekitClient.tokens().list("org_123", "user_123", 20, "");
clientTokenshttps://github.com/scalekit-inc/scalekit-sdk-java/blob/main/src/main/java/com/scalekit/api/TokenClient.java
#update

Updates the custom claims and/or description of an existing API token.

paramtokenString

The opaque token string or token_id (apit_xxxxx)

paramcustomClaimsMap(String, String)

Claims to merge; set value to "" to remove a claim

paramdescriptionString

Replacement description; null leaves unchanged, empty.

returnsUpdateTokenResponse

The updated resource.

import java.util.HashMap;
import java.util.Map;
Map<String, String> newClaims = new HashMap<>();
newClaims.put("environment", "staging");
newClaims.put("old_claim", ""); // Remove this claim
scalekitClient.tokens().update("apit_xxxxx", newClaims, "Updated description");