deepgram-java-text-intelligence
by deepgram
Use when writing or reviewing Java code in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for text analysis. Covers…
npx skills add https://github.com/deepgram/deepgram-java-sdk --skill deepgram-java-text-intelligenceUsing Deepgram Text Intelligence (Java SDK)
Analyze text you already have — transcripts, chats, documents, or other plain text — via /v1/read.
When to use this product
- You already have text, not audio.
- You want one-shot REST analysis for sentiment, topics, intents, or summary-like outputs.
Use a different skill when:
- The source is audio and you want analysis during transcription →
deepgram-java-audio-intelligence.
Authentication
import com.deepgram.DeepgramClient;
DeepgramClient client = DeepgramClient.builder()
.apiKey(System.getenv("DEEPGRAM_API_KEY"))
.build();
Quick start
import com.deepgram.resources.read.v1.text.requests.TextAnalyzeRequest;
import com.deepgram.types.ReadV1Request;
import com.deepgram.types.ReadV1RequestText;
import com.deepgram.types.ReadV1Response;
ReadV1RequestText textBody = ReadV1RequestText.builder()
.text("Life moves pretty fast. If you don't stop and look around once in a while, you could miss it.")
.build();
TextAnalyzeRequest request = TextAnalyzeRequest.builder()
.body(ReadV1Request.of(textBody))
.sentiment(true)
.topics(true)
.intents(true)
.language("en")
.build();
ReadV1Response response = client.read().v1().text().analyze(request);
response.getResults().getTopics().ifPresent(System.out::println);
response.getResults().getIntents().ifPresent(System.out::println);
response.getResults().getSentiments().ifPresent(System.out::println);
Quick start — custom topics and intents
import com.deepgram.resources.read.v1.text.types.TextAnalyzeRequestCustomIntentMode;
import com.deepgram.resources.read.v1.text.types.TextAnalyzeRequestCustomTopicMode;
import java.util.Arrays;
TextAnalyzeRequest request = TextAnalyzeRequest.builder()
.body(ReadV1Request.of(textBody))
.language("en")
.sentiment(true)
.topics(true)
.intents(true)
.customTopic(Arrays.asList("Customer Retention", "Product Quality"))
.customTopicMode(TextAnalyzeRequestCustomTopicMode.EXTENDED)
.customIntent(Arrays.asList("Request Refund", "Complaint"))
.customIntentMode(TextAnalyzeRequestCustomIntentMode.EXTENDED)
.build();
Async equivalent
import com.deepgram.AsyncDeepgramClient;
import java.util.concurrent.CompletableFuture;
AsyncDeepgramClient asyncClient = AsyncDeepgramClient.builder()
.apiKey(System.getenv("DEEPGRAM_API_KEY"))
.build();
CompletableFuture<com.deepgram.types.ReadV1Response> future =
asyncClient.read().v1().text().analyze(request);
Key parameters / API surface
TextAnalyzeRequest.builder().body(ReadV1Request.of(...))is the high-level request path- Body types are
ReadV1RequestTextor URL-basedReadV1Requestvariants - Verified request fields:
language,sentiment,summarize,topics,intents,customTopic,customTopicMode,customIntent,customIntentMode,callback,callbackMethod,tag - Methods:
text().analyze(ReadV1Request),text().analyze(TextAnalyzeRequest), plus async andwithRawResponse()variants - Results live under
ReadV1Response.getResults()
API reference (layered)
- In-repo source of truth:
src/main/java/com/deepgram/resources/read/v1/text/andexamples/read/. Noreference.mdfile is present here. - Canonical OpenAPI: https://developers.deepgram.com/openapi.yaml
- Context7:
/llmstxt/developers_deepgram_llms_txt - Product docs:
Gotchas
- Use
body(ReadV1Request.of(...)), not raw maps. This SDK is strongly typed. TextAnalyzeRequestwraps both query-style options and the request body.ReadV1Requestalone only supplies the input content.- Custom topics/intents need matching modes (
STRICTorEXTENDED) if you want deterministic behavior. - The request surface exposes
summarizeseparately from Listen V1. Do not assume Listen's versioned summarize enum applies here. - Language is explicit in examples. Follow that pattern when using topics, intents, or sentiment.
- This repo has no dedicated async example for Read. Use
AsyncDeepgramClientandCompletableFuturedirectly.
Example files in this repo
examples/read/AnalyzeText.javaexamples/read/AdvancedAnalysis.java
Central product skills
For cross-language Deepgram product knowledge — the consolidated API reference, documentation finder, focused runnable recipes, third-party integration examples, and MCP setup — install the central skills:
npx skills add deepgram/skills
This SDK ships language-idiomatic code skills; deepgram/skills ships cross-language product knowledge (see api, docs, recipes, examples, starters, setup-mcp).