Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "2.46.0"
".": "2.47.0"
}
6 changes: 3 additions & 3 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 116
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/anthropic/anthropic-04d07a5a32685ff9769f89d63e4ceaa49738b4d8dac73041bc9a691759350108.yml
openapi_spec_hash: d793931588b3a62fad0cfbae27ad6654
config_hash: 7315b549547ccd1891c7fe53f6a1796a
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/anthropic/anthropic-dffbd6e37f0be6d218800cdb283e5ad958c715021986d788e10c89c0a80a9f44.yml
openapi_spec_hash: 753042938edfcbf43eb60c63c3369a30
config_hash: 2fc184efddefac872a2f58876711b4f5
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 2.47.0 (2026-06-30)

Full Changelog: [v2.46.0...v2.47.0](https://github.com/anthropics/anthropic-sdk-java/compare/v2.46.0...v2.47.0)

### Features

* **api:** add support for Managed Agents event delta streaming, agent overrides, reverse pagination, vault credential injection scoping, and agent and deployment webhook events ([5eed04b](https://github.com/anthropics/anthropic-sdk-java/commit/5eed04b793a44b9d3dabbafe079d88ba0ac6651f))

## 2.46.0 (2026-06-30)

Full Changelog: [v2.45.0...v2.46.0](https://github.com/anthropics/anthropic-sdk-java/compare/v2.45.0...v2.46.0)
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Full documentation is available at **[platform.claude.com/docs/en/api/sdks/java]
### Gradle

```kotlin
implementation("com.anthropic:anthropic-java:2.46.0")
implementation("com.anthropic:anthropic-java:2.47.0")
```

### Maven
Expand All @@ -24,7 +24,7 @@ implementation("com.anthropic:anthropic-java:2.46.0")
<dependency>
<groupId>com.anthropic</groupId>
<artifactId>anthropic-java</artifactId>
<version>2.46.0</version>
<version>2.47.0</version>
</dependency>
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,8 @@ internal fun sseHandler(jsonMapper: JsonMapper): Handler<StreamResponse<SseMessa
"session.thread_status_idle",
"session.thread_status_rescheduled",
"session.thread_status_terminated",
"event_start",
"event_delta",
"system.message" -> yield(message)
"ping" -> continue
"error" -> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ private constructor(
private val environmentId: JsonField<String>,
private val latestHeartbeatAt: JsonField<String>,
private val metadata: JsonField<Metadata>,
private val secret: JsonField<String>,
private val startedAt: JsonField<String>,
private val state: JsonField<State>,
private val stopRequestedAt: JsonField<String>,
Expand All @@ -60,6 +61,7 @@ private constructor(
@ExcludeMissing
latestHeartbeatAt: JsonField<String> = JsonMissing.of(),
@JsonProperty("metadata") @ExcludeMissing metadata: JsonField<Metadata> = JsonMissing.of(),
@JsonProperty("secret") @ExcludeMissing secret: JsonField<String> = JsonMissing.of(),
@JsonProperty("started_at") @ExcludeMissing startedAt: JsonField<String> = JsonMissing.of(),
@JsonProperty("state") @ExcludeMissing state: JsonField<State> = JsonMissing.of(),
@JsonProperty("stop_requested_at")
Expand All @@ -75,6 +77,7 @@ private constructor(
environmentId,
latestHeartbeatAt,
metadata,
secret,
startedAt,
state,
stopRequestedAt,
Expand Down Expand Up @@ -139,6 +142,15 @@ private constructor(
*/
fun metadata(): Metadata = metadata.getRequired("metadata")

/**
* Credential payload used by the environment worker to execute this work item. May be populated
* when polling for work; null on all other retrieval paths.
*
* @throws AnthropicInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
*/
fun secret(): Optional<String> = secret.getOptional("secret")

/**
* RFC 3339 timestamp when work execution started
*
Expand Down Expand Up @@ -240,6 +252,13 @@ private constructor(
*/
@JsonProperty("metadata") @ExcludeMissing fun _metadata(): JsonField<Metadata> = metadata

/**
* Returns the raw JSON value of [secret].
*
* Unlike [secret], this method doesn't throw if the JSON field has an unexpected type.
*/
@JsonProperty("secret") @ExcludeMissing fun _secret(): JsonField<String> = secret

/**
* Returns the raw JSON value of [startedAt].
*
Expand Down Expand Up @@ -296,6 +315,7 @@ private constructor(
* .environmentId()
* .latestHeartbeatAt()
* .metadata()
* .secret()
* .startedAt()
* .state()
* .stopRequestedAt()
Expand All @@ -315,6 +335,7 @@ private constructor(
private var environmentId: JsonField<String>? = null
private var latestHeartbeatAt: JsonField<String>? = null
private var metadata: JsonField<Metadata>? = null
private var secret: JsonField<String>? = null
private var startedAt: JsonField<String>? = null
private var state: JsonField<State>? = null
private var stopRequestedAt: JsonField<String>? = null
Expand All @@ -331,6 +352,7 @@ private constructor(
environmentId = betaSelfHostedWork.environmentId
latestHeartbeatAt = betaSelfHostedWork.latestHeartbeatAt
metadata = betaSelfHostedWork.metadata
secret = betaSelfHostedWork.secret
startedAt = betaSelfHostedWork.startedAt
state = betaSelfHostedWork.state
stopRequestedAt = betaSelfHostedWork.stopRequestedAt
Expand Down Expand Up @@ -441,6 +463,23 @@ private constructor(
*/
fun metadata(metadata: JsonField<Metadata>) = apply { this.metadata = metadata }

/**
* Credential payload used by the environment worker to execute this work item. May be
* populated when polling for work; null on all other retrieval paths.
*/
fun secret(secret: String?) = secret(JsonField.ofNullable(secret))

/** Alias for calling [Builder.secret] with `secret.orElse(null)`. */
fun secret(secret: Optional<String>) = secret(secret.getOrNull())

/**
* Sets [Builder.secret] to an arbitrary JSON value.
*
* You should usually call [Builder.secret] with a well-typed [String] value instead. This
* method is primarily for setting the field to an undocumented or not yet supported value.
*/
fun secret(secret: JsonField<String>) = apply { this.secret = secret }

/** RFC 3339 timestamp when work execution started */
fun startedAt(startedAt: String?) = startedAt(JsonField.ofNullable(startedAt))

Expand Down Expand Up @@ -548,6 +587,7 @@ private constructor(
* .environmentId()
* .latestHeartbeatAt()
* .metadata()
* .secret()
* .startedAt()
* .state()
* .stopRequestedAt()
Expand All @@ -565,6 +605,7 @@ private constructor(
checkRequired("environmentId", environmentId),
checkRequired("latestHeartbeatAt", latestHeartbeatAt),
checkRequired("metadata", metadata),
checkRequired("secret", secret),
checkRequired("startedAt", startedAt),
checkRequired("state", state),
checkRequired("stopRequestedAt", stopRequestedAt),
Expand Down Expand Up @@ -596,6 +637,7 @@ private constructor(
environmentId()
latestHeartbeatAt()
metadata().validate()
secret()
startedAt()
state().validate()
stopRequestedAt()
Expand Down Expand Up @@ -630,6 +672,7 @@ private constructor(
(if (environmentId.asKnown().isPresent) 1 else 0) +
(if (latestHeartbeatAt.asKnown().isPresent) 1 else 0) +
(metadata.asKnown().getOrNull()?.validity() ?: 0) +
(if (secret.asKnown().isPresent) 1 else 0) +
(if (startedAt.asKnown().isPresent) 1 else 0) +
(state.asKnown().getOrNull()?.validity() ?: 0) +
(if (stopRequestedAt.asKnown().isPresent) 1 else 0) +
Expand Down Expand Up @@ -913,6 +956,7 @@ private constructor(
environmentId == other.environmentId &&
latestHeartbeatAt == other.latestHeartbeatAt &&
metadata == other.metadata &&
secret == other.secret &&
startedAt == other.startedAt &&
state == other.state &&
stopRequestedAt == other.stopRequestedAt &&
Expand All @@ -930,6 +974,7 @@ private constructor(
environmentId,
latestHeartbeatAt,
metadata,
secret,
startedAt,
state,
stopRequestedAt,
Expand All @@ -942,5 +987,5 @@ private constructor(
override fun hashCode(): Int = hashCode

override fun toString() =
"BetaSelfHostedWork{id=$id, acknowledgedAt=$acknowledgedAt, createdAt=$createdAt, data=$data, environmentId=$environmentId, latestHeartbeatAt=$latestHeartbeatAt, metadata=$metadata, startedAt=$startedAt, state=$state, stopRequestedAt=$stopRequestedAt, stoppedAt=$stoppedAt, type=$type, additionalProperties=$additionalProperties}"
"BetaSelfHostedWork{id=$id, acknowledgedAt=$acknowledgedAt, createdAt=$createdAt, data=$data, environmentId=$environmentId, latestHeartbeatAt=$latestHeartbeatAt, metadata=$metadata, secret=$secret, startedAt=$startedAt, state=$state, stopRequestedAt=$stopRequestedAt, stoppedAt=$stoppedAt, type=$type, additionalProperties=$additionalProperties}"
}
Loading
Loading