Java SDK methods

⚠️
Preview — this feature is being built; the design below is the spec.

Every method of the planned Java SDK, by resource, with the endpoint it calls. Names follow Java conventions; behaviour, parameters and return shapes match the Python and TypeScript references, which have a full example per method.

Conventions

Every resource is reached through accessor methods; params use builders. Streaming methods are named createStreaming and return an AutoCloseable stream. …Async() twins return CompletableFuture.

Admin and Compliance methods live on a separate admin client: SynticAdminClient admin = SynticAdminClient.fromEnv();

Install and first request: Java SDK.

Chat completions

MethodEndpointWhat it does
client.chat().completions().create(params)POST /v1/chat/completionsSend a conversation and get the reply. Pass stream=True to get an iterator of chunks instead.
client.chat().completions().createStreaming(params)POST /v1/chat/completionsStream with a helper that accumulates text, tool calls and usage, and exposes the final message when done.
client.chat().completions().parse(params)POST /v1/chat/completionsStructured output from a Pydantic model (Python) or Zod schema (TypeScript); returns the parsed object on message.parsed.
client.chat().completions().countTokens(params)POST /v1/chat/completions/count_tokensCount input tokens for a request body without running it.

Messages

MethodEndpointWhat it does
client.messages().create(params)POST /v1/messagesSend content blocks and receive content blocks.
client.messages().createStreaming(params)POST /v1/messagesStream typed events (content_block_delta, message_delta…) with a final-message accumulator.
client.messages().countTokens(params)POST /v1/messages/count_tokensCount tokens for a Messages request.

Models

MethodEndpointWhat it does
client.models().list(params)GET /v1/modelsList the models your key can use. Auto-paginates when iterated.
client.models().retrieve(params)GET /v1/models/{id}One model’s limits, capabilities and prices.

Files

MethodEndpointWhat it does
client.files().upload(params)POST /v1/filesUpload from a path, bytes or a file object. Multipart encoding is handled for you.
client.files().list(params)GET /v1/filesList files, newest first, filtered by purpose.
client.files().retrieve(params)GET /v1/files/{file_id}Metadata for one file.
client.files().content(params)GET /v1/files/{file_id}/contentDownload bytes. .write_to_file(path) streams to disk.
client.files().delete(params)DELETE /v1/files/{file_id}Delete a file.

Batches

MethodEndpointWhat it does
client.batches().create(params)POST /v1/batchesFrom an uploaded JSONL input_file_id, or up to 1,000 inline requests.
client.batches().list(params)GET /v1/batchesList batches.
client.batches().retrieve(params)GET /v1/batches/{batch_id}Status and counts.
client.batches().wait(params)(helper; polls GET /v1/batches/{batch_id})Helper: poll until the batch ends, with back-off. Returns the final batch.
client.batches().results(params)GET /v1/batches/{batch_id}/resultsIterate result lines as typed objects, streaming from the server.
client.batches().cancel(params)POST /v1/batches/{batch_id}/cancelCancel a running batch.
client.batches().delete(params)DELETE /v1/batches/{batch_id}Delete an ended batch and its result files.

Embeddings

MethodEndpointWhat it does
client.embeddings().create(params)POST /v1/embeddingsEmbed one string or a list of up to 2,048 strings.

Webhooks

MethodEndpointWhat it does
client.webhooks().create(params)POST /v1/webhooksRegister an endpoint; the result holds the signing secret once.
client.webhooks().list(params)GET /v1/webhooksList endpoints.
client.webhooks().update(params)PATCH /v1/webhooks/{webhook_id}Change events, URL or status.
client.webhooks().delete(params)DELETE /v1/webhooks/{webhook_id}Remove an endpoint.
client.webhooks().rotateSecret(params)POST /v1/webhooks/{webhook_id}/rotate_secretNew signing secret; both are valid during the overlap.
client.webhooks().test(params)POST /v1/webhooks/{webhook_id}/testSend a webhook.test event.
client.webhooks().unwrap(params)(local, no request)Verify the syntic-signature header against the raw body and return the typed event; raises on a bad signature or a stale timestamp.

Agents

MethodEndpointWhat it does
client.agents().create(params)POST /v1/agentsCreate a versioned agent definition.
client.agents().list(params)GET /v1/agentsList agents.
client.agents().retrieve(params)GET /v1/agents/{agent_id}One agent at its latest or a given version.
client.agents().update(params)PATCH /v1/agents/{agent_id}Change the definition; creates a new version.
client.agents().versions().list(params)GET /v1/agents/{agent_id}/versionsAll versions.
client.agents().archive(params)POST /v1/agents/{agent_id}/archiveStop new sessions from using it.

Sessions

MethodEndpointWhat it does
client.sessions().create(params)POST /v1/sessionsStart a session, optionally with first events.
client.sessions().send(params)POST /v1/sessions/{session_id}/eventsSend user messages, tool results or approvals.
client.sessions().createStreaming(params)GET /v1/sessions/{session_id}/streamIterate live events; reconnects with Last-Event-ID automatically.
client.sessions().events().list(params)GET /v1/sessions/{session_id}/eventsFull history, paginated.
client.sessions().interrupt(params)POST /v1/sessions/{session_id}/interruptStop the current turn.
client.sessions().resources().add(params)POST /v1/sessions/{session_id}/resourcesMount a file, repository or memory store.
client.sessions().threads().list(params)GET /v1/sessions/{session_id}/threadsPrimary and delegate threads with their usage.
client.sessions().archive(params)POST /v1/sessions/{session_id}/archiveClose the session.

Environments, memory and more

MethodEndpointWhat it does
client.environments().create(params)POST /v1/environmentsDefine a sandbox image.
client.environments().rebuild(params)POST /v1/environments/{environment_id}/rebuildBuild the image again.
client.memoryStores().memories().search(params)POST /v1/memory_stores/{store_id}/memories/searchSemantic search within a scope.
client.memoryStores().consolidations().create(params)POST /v1/memory_stores/{store_id}/consolidationsStart a consolidation job.
client.vaults().secrets().set(params)PUT /v1/vaults/{vault_id}/secrets/{name}Write a secret (write-only).
client.deployments().runs().list(params)GET /v1/deployments/{deployment_id}/runsRecent runs of a deployment.
client.skills().versions().create(params)POST /v1/skills/{skill_id}/versionsUpload a new skill version from a directory; the SDK zips it.
client.userProfiles().create(params)POST /v1/user_profilesCreate an end-user profile.
client.tunnels().create(params)POST /v1/tunnelsCreate an MCP tunnel.

Evaluations and prompts

MethodEndpointWhat it does
client.evals().datasets().create(params)POST /v1/evals/datasetsCreate a dataset.
client.evals().datasets().items().add(params)POST /v1/evals/datasets/{dataset_id}/itemsAdd up to 1,000 items.
client.evals().graders().create(params)POST /v1/evals/gradersDefine a grader.
client.evals().runs().create(params)POST /v1/evals/runsStart a run with up to four variants.
client.evals().runs().wait(params)(helper; polls GET /v1/evals/runs/{eval_run_id})Helper: wait for a run to finish.
client.evals().runs().results(params)GET /v1/evals/runs/{eval_run_id}/resultsIterate graded results.
client.prompts().improve(params)POST /v1/prompts/improveRewrite a prompt against feedback.
client.prompts().templates().setLabel(params)PUT /v1/prompts/templates/{template}/labels/{label}Promote a version.

Admin API

MethodEndpointWhat it does
admin.organization().retrieve(params)GET /v1/organizations/meOrganization info and real plan name.
admin.workspaces().create(params)POST /v1/organizations/workspacesCreate a workspace.
admin.members().list(params)GET /v1/organizations/usersList members; auto-paginates.
admin.invites().create(params)POST /v1/organizations/invitesInvite by email.
admin.apiKeys().update(params)PATCH /v1/organizations/api_keys/{api_key_id}Rename or disable a key.
admin.serviceAccounts().create(params)POST /v1/organizations/service_accountsCreate a service account.
admin.usageReport().messages(params)GET /v1/organizations/usage_report/messagesToken usage in buckets, grouped as you choose.
admin.costReport().retrieve(params)GET /v1/organizations/cost_reportSpend by day and workspace.
admin.analytics().summary(params)GET /v1/organizations/analytics/summaryHeadline numbers for a period.
admin.auditEvents().list(params)GET /v1/organizations/audit_eventsAudit feed, cursor-paginated.

Compliance API

MethodEndpointWhat it does
admin.compliance().activities().list(params)GET /v1/compliance/activitiesIterate activity records.
admin.compliance().exports().create(params)POST /v1/compliance/exportsStart a bulk export.
admin.compliance().exports().download(params)GET /v1/compliance/exports/{export_id}/contentStream an export to disk.
admin.compliance().legalHolds().create(params)POST /v1/compliance/legal_holdsPreserve records for named people.
Was this page helpful?