Summary
Add a Spring Boot auto-configuration module (deepgram-spring-boot-starter) that provides automatic DeepgramClient bean configuration from application.yml / application.properties, making it trivial to use Deepgram in Spring Boot applications.
Problem it solves
Spring Boot is the dominant Java web framework, and its auto-configuration pattern is the expected way to integrate third-party services. Currently, Java developers must manually instantiate and configure DeepgramClient in every Spring Boot app. A Spring Boot starter would let developers add Deepgram to any Spring Boot project with a single dependency and a config property, following the same pattern as other service SDKs (AWS, Stripe, Twilio all provide Spring Boot starters). This is especially important for Deepgram's new Java SDK — making it Spring-native from the start establishes the right developer experience pattern.
Proposed API
# application.yml
deepgram:
api-key: ${DEEPGRAM_API_KEY}
model: nova-3
language: en
@RestController
public class TranscriptionController {
private final DeepgramClient deepgram;
// Auto-injected by Spring Boot starter
public TranscriptionController(DeepgramClient deepgram) {
this.deepgram = deepgram;
}
@PostMapping("/transcribe")
public TranscriptionResponse transcribe(@RequestParam MultipartFile audio) {
// Client is pre-configured from application.yml
return deepgram.listen().transcribeFile(audio.getBytes(), options);
}
}
<!-- pom.xml -->
<dependency>
<groupId>com.deepgram</groupId>
<artifactId>deepgram-spring-boot-starter</artifactId>
<version>${deepgram.version}</version>
</dependency>
Acceptance criteria
Raised by the DX intelligence system.
Summary
Add a Spring Boot auto-configuration module (
deepgram-spring-boot-starter) that provides automaticDeepgramClientbean configuration fromapplication.yml/application.properties, making it trivial to use Deepgram in Spring Boot applications.Problem it solves
Spring Boot is the dominant Java web framework, and its auto-configuration pattern is the expected way to integrate third-party services. Currently, Java developers must manually instantiate and configure
DeepgramClientin every Spring Boot app. A Spring Boot starter would let developers add Deepgram to any Spring Boot project with a single dependency and a config property, following the same pattern as other service SDKs (AWS, Stripe, Twilio all provide Spring Boot starters). This is especially important for Deepgram's new Java SDK — making it Spring-native from the start establishes the right developer experience pattern.Proposed API
Acceptance criteria
DeepgramClientbean fromdeepgram.*propertiesapplication.ymlandapplication.propertiesconfigurationDeepgramPropertiesclass with Spring configuration metadata (IDE auto-complete)deepgram.api-keybeing present (no bean created without config)/actuator/health)Raised by the DX intelligence system.