Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
79 commits
Select commit Hold shift + click to select a range
46abca4
chore(internal): codegen related update
stainless-app[bot] Jan 20, 2026
eaca79d
feat(api): api update
stainless-app[bot] Jan 21, 2026
9aa3e27
chore(internal): update maven repo doc to include authentication
stainless-app[bot] Jan 21, 2026
10357a9
feat(client): send `X-Stainless-Kotlin-Version` header
stainless-app[bot] Jan 21, 2026
e2f42d1
docs: add comment for arbitrary value fields
stainless-app[bot] Jan 22, 2026
4a49c05
chore(internal): correct cache invalidation for `SKIP_MOCK_TESTS`
stainless-app[bot] Jan 22, 2026
928bfae
fix(client): preserve time zone in lenient date-time parsing
stainless-app[bot] Jan 23, 2026
7850067
chore(ci): upgrade `actions/github-script`
stainless-app[bot] Jan 23, 2026
1e5f897
feat(api): api update
stainless-app[bot] Jan 23, 2026
b8b2251
chore(internal): codegen related update
stainless-app[bot] Jan 27, 2026
ffbc747
chore(internal): allow passing args to `./scripts/test`
stainless-app[bot] Jan 30, 2026
49d56e2
feat(api): api update
stainless-app[bot] Feb 3, 2026
719f036
chore(internal): upgrade AssertJ
stainless-app[bot] Feb 6, 2026
69429b9
feat(api): api update
stainless-app[bot] Feb 10, 2026
acb4297
codegen metadata
stainless-app[bot] Feb 11, 2026
489bdd6
chore(internal): codegen related update
stainless-app[bot] Feb 11, 2026
a80ec0b
feat(api): api update
stainless-app[bot] Feb 12, 2026
5ba9c33
feat(api): manual updates
stainless-app[bot] Feb 12, 2026
c310e36
feat(api): api update
stainless-app[bot] Feb 16, 2026
3447469
chore(internal): update `TestServerExtension` comment
stainless-app[bot] Feb 17, 2026
3b82472
feat(api): api update
stainless-app[bot] Feb 18, 2026
05a1acc
chore(internal): make `OkHttp` constructor internal
stainless-app[bot] Feb 18, 2026
f56884d
feat(client): add more convenience service method overloads
stainless-app[bot] Feb 18, 2026
21b4047
feat(client): add connection pooling option
stainless-app[bot] Feb 18, 2026
ededc4d
feat(api): api update
stainless-app[bot] Feb 19, 2026
7661c8c
feat(api): api update
stainless-app[bot] Feb 21, 2026
39c553f
chore: make `Properties` more resilient to `null`
stainless-app[bot] Feb 23, 2026
edcdb51
chore: drop apache dependency
stainless-app[bot] Feb 23, 2026
c1195af
chore(internal): expand imports
stainless-app[bot] Feb 24, 2026
d101825
chore(docs): add missing descriptions
stainless-app[bot] Feb 27, 2026
522cf9b
feat(api): api update
stainless-app[bot] Feb 27, 2026
4ed5e39
feat(api): api update
stainless-app[bot] Mar 4, 2026
185d18d
fix: fix request delays for retrying to be more respectful of high re…
stainless-app[bot] Mar 5, 2026
82f17f8
chore(internal): bump palantir-java-format
stainless-app[bot] Mar 5, 2026
efdd6eb
chore(test): do not count install time for mock server timeout
stainless-app[bot] Mar 5, 2026
014ce03
feat(api): api update
stainless-app[bot] Mar 5, 2026
037dbcd
feat(api): api update
stainless-app[bot] Mar 7, 2026
2b236e9
chore(ci): skip uploading artifacts on stainless-internal branches
stainless-app[bot] Mar 7, 2026
154bdc7
fix(client): incorrect `Retry-After` parsing
stainless-app[bot] Mar 10, 2026
bac4aa0
feat(api): api update
stainless-app[bot] Mar 13, 2026
3b92540
chore(tests): update mock server to steady
stainless-app[bot] Mar 13, 2026
282b2c1
chore(internal): tweak CI branches
stainless-app[bot] Mar 16, 2026
8792a79
chore(internal): update retry delay tests
stainless-app[bot] Mar 17, 2026
fc7192d
fix(client): allow updating header/query affecting fields in `toBuild…
stainless-app[bot] Mar 17, 2026
36d0db0
feat(api): api update
stainless-app[bot] Mar 19, 2026
477914f
chore(tests): bump steady to v0.19.4
stainless-app[bot] Mar 20, 2026
f8a5c1e
chore(tests): bump steady to v0.19.5
stainless-app[bot] Mar 20, 2026
6b9c515
chore(internal): update gitignore
stainless-app[bot] Mar 23, 2026
26951e7
chore(tests): bump steady to v0.19.6
stainless-app[bot] Mar 23, 2026
0d80e8a
chore(ci): skip lint on metadata-only changes
stainless-app[bot] Mar 24, 2026
a8de590
chore(tests): bump steady to v0.19.7
stainless-app[bot] Mar 24, 2026
308f7b2
feat(api): api update
stainless-app[bot] Mar 24, 2026
7dd0e02
codegen metadata
stainless-app[bot] Mar 25, 2026
bd754d3
chore(internal): update multipart form array serialization
stainless-app[bot] Mar 26, 2026
c9dba44
chore(tests): bump steady to v0.20.1
stainless-app[bot] Mar 31, 2026
a572ceb
codegen metadata
stainless-app[bot] Mar 31, 2026
d480c4b
chore(tests): bump steady to v0.20.2
stainless-app[bot] Mar 31, 2026
1152bfb
feat(api): api update
stainless-app[bot] Apr 3, 2026
8e6ac31
docs: improve examples
stainless-app[bot] Apr 10, 2026
1581833
feat(api): api update
stainless-app[bot] Apr 11, 2026
e8b8d9a
feat(api): api update
stainless-app[bot] Apr 13, 2026
5bdd885
feat(api): api update
stainless-app[bot] Apr 16, 2026
7a01a25
chore(tests): bump steady to v0.22.1
stainless-app[bot] Apr 17, 2026
d875ca5
feat(api): api update
stainless-app[bot] Apr 17, 2026
d5b17d8
feat(api): api update
stainless-app[bot] Apr 24, 2026
79cd441
feat(api): api update
stainless-app[bot] Apr 26, 2026
9b9d608
feat: support setting headers via env
stainless-app[bot] Apr 27, 2026
4435313
feat(api): api update
stainless-app[bot] Apr 27, 2026
176432c
codegen metadata
stainless-app[bot] Apr 28, 2026
d139e2d
codegen metadata
stainless-app[bot] Apr 29, 2026
d563516
codegen metadata
stainless-app[bot] Apr 30, 2026
16f10e5
docs: clarify forwards compat behavior
stainless-app[bot] May 4, 2026
c56994a
feat(client): more robust error parsing
stainless-app[bot] May 4, 2026
bb2637a
perf(client): create one json mapper
stainless-app[bot] May 4, 2026
7f58f4b
feat(api): api update
stainless-app[bot] May 5, 2026
00a20b6
feat(client): support proxy authentication
stainless-app[bot] May 5, 2026
1ca2d2f
feat(client): improve logging
stainless-app[bot] May 6, 2026
1064c76
chore: redact api-key headers in debug logs
stainless-app[bot] May 7, 2026
25bb1fa
release: 1.11.0
stainless-app[bot] May 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
28 changes: 17 additions & 11 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
name: CI
on:
push:
branches-ignore:
- 'generated'
- 'codegen/**'
- 'integrated/**'
- 'stl-preview-head/**'
- 'stl-preview-base/**'
branches:
- '**'
- '!integrated/**'
- '!stl-preview-head/**'
- '!stl-preview-base/**'
- '!generated'
- '!codegen/**'
- 'codegen/stl/**'
pull_request:
branches-ignore:
- 'stl-preview-head/**'
Expand All @@ -17,7 +19,7 @@ jobs:
timeout-minutes: 15
name: lint
runs-on: ${{ github.repository == 'stainless-sdks/orb-java' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')

steps:
- uses: actions/checkout@v6
Expand All @@ -44,7 +46,7 @@ jobs:
contents: read
id-token: write
runs-on: ${{ github.repository == 'stainless-sdks/orb-java' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')

steps:
- uses: actions/checkout@v6
Expand All @@ -65,14 +67,18 @@ jobs:
run: ./scripts/build

- name: Get GitHub OIDC Token
if: github.repository == 'stainless-sdks/orb-java'
if: |-
github.repository == 'stainless-sdks/orb-java' &&
!startsWith(github.ref, 'refs/heads/stl/')
id: github-oidc
uses: actions/github-script@v6
uses: actions/github-script@v8
with:
script: core.setOutput('github_token', await core.getIDToken());

- name: Build and upload Maven artifacts
if: github.repository == 'stainless-sdks/orb-java'
if: |-
github.repository == 'stainless-sdks/orb-java' &&
!startsWith(github.ref, 'refs/heads/stl/')
env:
URL: https://pkg.stainless.com/s
AUTH: ${{ steps.github-oidc.outputs.github_token }}
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.prism.log
.stdy.log
.gradle
.idea
.kotlin
Expand Down
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "1.10.0"
".": "1.11.0"
}
8 changes: 4 additions & 4 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 126
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-c131de17773b450eb1ec03ca001f94d3777e35347234869a7efee083003e1513.yml
openapi_spec_hash: 5d2d4a3a9ada1c381efb318b6897994d
config_hash: bcf82bddb691f6be773ac6cae8c03b9a
configured_endpoints: 139
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb/orb-7f97a69f22372b818e8d24a72f6020bcf2f0c6d6b3ad07abb8395c87ec4a72ee.yml
openapi_spec_hash: a6261e730c54d08ad36f1b946e663fc3
config_hash: c01c1191b1cd696c7ca855ff6d28a8df
95 changes: 95 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,100 @@
# Changelog

## 1.11.0 (2026-05-07)

Full Changelog: [v1.10.0...v1.11.0](https://github.com/orbcorp/orb-java/compare/v1.10.0...v1.11.0)

### Features

* **api:** api update ([7f58f4b](https://github.com/orbcorp/orb-java/commit/7f58f4b19d30b44e8e2ee69e4e93264960b1d433))
* **api:** api update ([4435313](https://github.com/orbcorp/orb-java/commit/4435313a9f7fe6e44b4b43d72b540e33ba102c42))
* **api:** api update ([79cd441](https://github.com/orbcorp/orb-java/commit/79cd4418a453844f56ee7ba4d2e369357fb4db85))
* **api:** api update ([d5b17d8](https://github.com/orbcorp/orb-java/commit/d5b17d8165c5ce42c1ad5cc6ff9970b90667da01))
* **api:** api update ([d875ca5](https://github.com/orbcorp/orb-java/commit/d875ca51fd171ccb6f68e671cd80b1ba08b4e56d))
* **api:** api update ([5bdd885](https://github.com/orbcorp/orb-java/commit/5bdd8852877fe90b5f0b8cd6a4120ab0316a9719))
* **api:** api update ([e8b8d9a](https://github.com/orbcorp/orb-java/commit/e8b8d9afb5b6340f8a2d16d549e34823fb245dbd))
* **api:** api update ([1581833](https://github.com/orbcorp/orb-java/commit/15818339bc1d1b2098f3fe0d9c06d8fa4afa0055))
* **api:** api update ([1152bfb](https://github.com/orbcorp/orb-java/commit/1152bfb0f075438d170bdee2e4c3b02327501057))
* **api:** api update ([308f7b2](https://github.com/orbcorp/orb-java/commit/308f7b2ed70c479fd7b43e61ffc83e534e137f98))
* **api:** api update ([36d0db0](https://github.com/orbcorp/orb-java/commit/36d0db01c83dfacb297970d8fc48afad1c81d376))
* **api:** api update ([bac4aa0](https://github.com/orbcorp/orb-java/commit/bac4aa009a547a636faef396a183d4da5c573933))
* **api:** api update ([037dbcd](https://github.com/orbcorp/orb-java/commit/037dbcde5fbff819b3a65b43bdc92332a88d96e5))
* **api:** api update ([014ce03](https://github.com/orbcorp/orb-java/commit/014ce038155006c8874869d82da451b427b5a177))
* **api:** api update ([4ed5e39](https://github.com/orbcorp/orb-java/commit/4ed5e399e2aeb4ba507314f37ebe510a7f4dcecf))
* **api:** api update ([522cf9b](https://github.com/orbcorp/orb-java/commit/522cf9bee689650a217f54f12d93f1c548994fa0))
* **api:** api update ([7661c8c](https://github.com/orbcorp/orb-java/commit/7661c8c5892a01032cf4b24a74b309a2eac77f0c))
* **api:** api update ([ededc4d](https://github.com/orbcorp/orb-java/commit/ededc4dcf7a0dcbe132f60e4e06b7c0b3c538caa))
* **api:** api update ([3b82472](https://github.com/orbcorp/orb-java/commit/3b8247255097a5250b47059ca568429a26e0f285))
* **api:** api update ([c310e36](https://github.com/orbcorp/orb-java/commit/c310e36ffe22fafdd5ba9a00728e7816a8d0e1e6))
* **api:** api update ([a80ec0b](https://github.com/orbcorp/orb-java/commit/a80ec0b34dabf9595dbae9dfc4b4ed6c914cf5d2))
* **api:** api update ([69429b9](https://github.com/orbcorp/orb-java/commit/69429b99a2aa15ce52ebd45f7a2a531395f3dc94))
* **api:** api update ([49d56e2](https://github.com/orbcorp/orb-java/commit/49d56e2d1ef966ebf6ad4508c81b43a19e7cf9c5))
* **api:** api update ([1e5f897](https://github.com/orbcorp/orb-java/commit/1e5f8972d4dd8c4c955e8980b0c83901a2594bd6))
* **api:** api update ([eaca79d](https://github.com/orbcorp/orb-java/commit/eaca79da23a8cad0430abcb0319c8a37a5bbfc2a))
* **api:** manual updates ([5ba9c33](https://github.com/orbcorp/orb-java/commit/5ba9c33bba4f76344046e7cd93946fe96befaf34))
* **client:** add connection pooling option ([21b4047](https://github.com/orbcorp/orb-java/commit/21b4047e592f1d92782f6aacba9ba0f4d8d893d2))
* **client:** add more convenience service method overloads ([f56884d](https://github.com/orbcorp/orb-java/commit/f56884dcd6437584dabd311bf0583c6145515e60))
* **client:** improve logging ([1ca2d2f](https://github.com/orbcorp/orb-java/commit/1ca2d2f249f2554e0737c5c251d6c01b74f36770))
* **client:** more robust error parsing ([c56994a](https://github.com/orbcorp/orb-java/commit/c56994a7ff8e3d80d514796134161d031ab85c44))
* **client:** send `X-Stainless-Kotlin-Version` header ([10357a9](https://github.com/orbcorp/orb-java/commit/10357a946d98ffd0cb26409f81af477b4c4638b2))
* **client:** support proxy authentication ([00a20b6](https://github.com/orbcorp/orb-java/commit/00a20b682a4ba959024b745c40a5713a2dc8e7ab))
* support setting headers via env ([9b9d608](https://github.com/orbcorp/orb-java/commit/9b9d6087bc5ef54cdf57ff73bda39b2460a908a5))


### Bug Fixes

* **client:** allow updating header/query affecting fields in `toBuilder()` ([fc7192d](https://github.com/orbcorp/orb-java/commit/fc7192dcba2ed208109219a7df87608648ecbf8e))
* **client:** incorrect `Retry-After` parsing ([154bdc7](https://github.com/orbcorp/orb-java/commit/154bdc7e119b92a57a9798edf942564f288141a8))
* **client:** preserve time zone in lenient date-time parsing ([928bfae](https://github.com/orbcorp/orb-java/commit/928bfae14d9e8353f052404bf80873f1bd60d167))
* fix request delays for retrying to be more respectful of high requested delays ([185d18d](https://github.com/orbcorp/orb-java/commit/185d18dd791129bdbcf9c7c0fe12cdeb34474045))


### Performance Improvements

* **client:** create one json mapper ([bb2637a](https://github.com/orbcorp/orb-java/commit/bb2637a17a9ef89db3855320700d963fa5c04623))


### Chores

* **ci:** skip lint on metadata-only changes ([0d80e8a](https://github.com/orbcorp/orb-java/commit/0d80e8ab48e47fa1a00fefb89ef5203849d1b22e))
* **ci:** skip uploading artifacts on stainless-internal branches ([2b236e9](https://github.com/orbcorp/orb-java/commit/2b236e90a64e621b2f772208c4048ccb1f26c066))
* **ci:** upgrade `actions/github-script` ([7850067](https://github.com/orbcorp/orb-java/commit/7850067ac12719de79ff00ada02962f035782791))
* **docs:** add missing descriptions ([d101825](https://github.com/orbcorp/orb-java/commit/d101825fc5db427bb9d36c6b82154919eea85103))
* drop apache dependency ([edcdb51](https://github.com/orbcorp/orb-java/commit/edcdb514ff66cba287aab7ec5dec282078abb45f))
* **internal:** allow passing args to `./scripts/test` ([ffbc747](https://github.com/orbcorp/orb-java/commit/ffbc7473823b4ea0ccd27b9cfb85f8a5c165bb47))
* **internal:** bump palantir-java-format ([82f17f8](https://github.com/orbcorp/orb-java/commit/82f17f8f9081527292cc9ca2bc150d10b2b9dfc1))
* **internal:** codegen related update ([489bdd6](https://github.com/orbcorp/orb-java/commit/489bdd632da69ee3bafce9d5364861821f235c2b))
* **internal:** codegen related update ([b8b2251](https://github.com/orbcorp/orb-java/commit/b8b2251ef940a4d3a5276a9287bfc628fcc7fa2b))
* **internal:** codegen related update ([46abca4](https://github.com/orbcorp/orb-java/commit/46abca478b99884a07ac874f56f5ab7f615d9162))
* **internal:** correct cache invalidation for `SKIP_MOCK_TESTS` ([4a49c05](https://github.com/orbcorp/orb-java/commit/4a49c05fd112adb44adebff7481d4076ede46058))
* **internal:** expand imports ([c1195af](https://github.com/orbcorp/orb-java/commit/c1195afe5fc1798dbfd9c8c183501d1e4f33db75))
* **internal:** make `OkHttp` constructor internal ([05a1acc](https://github.com/orbcorp/orb-java/commit/05a1acc5dd4128fe698db34626ebaaed97ad17f6))
* **internal:** tweak CI branches ([282b2c1](https://github.com/orbcorp/orb-java/commit/282b2c15ade0d105ae975f9df2476cc647d51f04))
* **internal:** update `TestServerExtension` comment ([3447469](https://github.com/orbcorp/orb-java/commit/34474693bac76cf4855636d09bac7001108f2ccc))
* **internal:** update gitignore ([6b9c515](https://github.com/orbcorp/orb-java/commit/6b9c515adf31e37d75ff7507aa5e5b0f6083ce47))
* **internal:** update maven repo doc to include authentication ([9aa3e27](https://github.com/orbcorp/orb-java/commit/9aa3e2745cf3794784ee229af579142c6d560182))
* **internal:** update multipart form array serialization ([bd754d3](https://github.com/orbcorp/orb-java/commit/bd754d3554fc55b3a5f52c79111a714ed5d5c236))
* **internal:** update retry delay tests ([8792a79](https://github.com/orbcorp/orb-java/commit/8792a79536e435e2e4f51c75aaa75129f0db3e3c))
* **internal:** upgrade AssertJ ([719f036](https://github.com/orbcorp/orb-java/commit/719f036e81d72bf5c80a3e53de1e6fcdee49f15e))
* make `Properties` more resilient to `null` ([39c553f](https://github.com/orbcorp/orb-java/commit/39c553f7b878162f7affd567e9c0450d1411e653))
* redact api-key headers in debug logs ([1064c76](https://github.com/orbcorp/orb-java/commit/1064c76a2ef0ab90ed01fae2e89225709ab1873f))
* **test:** do not count install time for mock server timeout ([efdd6eb](https://github.com/orbcorp/orb-java/commit/efdd6ebf4a150e21f6edc283f5cd8f91ed049b12))
* **tests:** bump steady to v0.19.4 ([477914f](https://github.com/orbcorp/orb-java/commit/477914f0d8d4ee5c36aa22083629d6e7b3041ae4))
* **tests:** bump steady to v0.19.5 ([f8a5c1e](https://github.com/orbcorp/orb-java/commit/f8a5c1eabcfb0a78273e78b8e3ca017a0368a098))
* **tests:** bump steady to v0.19.6 ([26951e7](https://github.com/orbcorp/orb-java/commit/26951e743f106261e4c2f85cf8851e89fd628771))
* **tests:** bump steady to v0.19.7 ([a8de590](https://github.com/orbcorp/orb-java/commit/a8de590eb5afb9a0ab68e9b50e1ba6cd2ef0e68f))
* **tests:** bump steady to v0.20.1 ([c9dba44](https://github.com/orbcorp/orb-java/commit/c9dba44e6ff1302d5668d3490ba38799fb86a848))
* **tests:** bump steady to v0.20.2 ([d480c4b](https://github.com/orbcorp/orb-java/commit/d480c4b2d7fa3ba231ee40b4b79fb3b6d5b6c820))
* **tests:** bump steady to v0.22.1 ([7a01a25](https://github.com/orbcorp/orb-java/commit/7a01a2582e692add20034607a09ee313fc470f6c))
* **tests:** update mock server to steady ([3b92540](https://github.com/orbcorp/orb-java/commit/3b92540a62694a2865ef60e244f04b2f6abe4ba2))


### Documentation

* add comment for arbitrary value fields ([e2f42d1](https://github.com/orbcorp/orb-java/commit/e2f42d1f5d5b951c50798e943a64e14ff134b4f2))
* clarify forwards compat behavior ([16f10e5](https://github.com/orbcorp/orb-java/commit/16f10e56f568f802c64570477ed9edf082b5e5d0))
* improve examples ([8e6ac31](https://github.com/orbcorp/orb-java/commit/8e6ac31400bc21c291599235a1c8048a5a9c61b5))

## 1.10.0 (2026-01-17)

Full Changelog: [v1.9.0...v1.10.0](https://github.com/orbcorp/orb-java/compare/v1.9.0...v1.10.0)
Expand Down
59 changes: 53 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<!-- x-release-please-start-version -->

[![Maven Central](https://img.shields.io/maven-central/v/com.withorb.api/orb-java)](https://central.sonatype.com/artifact/com.withorb.api/orb-java/1.10.0)
[![Maven Central](https://img.shields.io/maven-central/v/com.withorb.api/orb-java)](https://central.sonatype.com/artifact/com.withorb.api/orb-java/1.11.0)

<!-- x-release-please-end -->

Expand All @@ -19,7 +19,7 @@ The REST API documentation can be found on [docs.withorb.com](https://docs.witho
### Gradle

```kotlin
implementation("com.withorb.api:orb-java:1.10.0")
implementation("com.withorb.api:orb-java:1.11.0")
```

### Maven
Expand All @@ -28,7 +28,7 @@ implementation("com.withorb.api:orb-java:1.10.0")
<dependency>
<groupId>com.withorb.api</groupId>
<artifactId>orb-java</artifactId>
<version>1.10.0</version>
<version>1.11.0</version>
</dependency>
```

Expand Down Expand Up @@ -339,8 +339,6 @@ while (true) {

## Logging

The SDK uses the standard [OkHttp logging interceptor](https://github.com/square/okhttp/tree/master/okhttp-logging-interceptor).

Enable logging by setting the `ORB_LOG` environment variable to `info`:

```sh
Expand All @@ -353,6 +351,19 @@ Or to `debug` for more verbose logging:
export ORB_LOG=debug
```

Or configure the client manually using the `logLevel` method:

```java
import com.withorb.api.client.OrbClient;
import com.withorb.api.client.okhttp.OrbOkHttpClient;
import com.withorb.api.core.LogLevel;

OrbClient client = OrbOkHttpClient.builder()
.fromEnv()
.logLevel(LogLevel.INFO)
.build();
```

## Webhook Verification

We provide helper methods for verifying that a webhook request came from Orb, and not a malicious third party.
Expand Down Expand Up @@ -457,6 +468,40 @@ OrbClient client = OrbOkHttpClient.builder()
.build();
```

If the proxy responds with `407 Proxy Authentication Required`, supply credentials by also configuring `proxyAuthenticator`:

```java
import com.withorb.api.client.OrbClient;
import com.withorb.api.client.okhttp.OrbOkHttpClient;
import com.withorb.api.core.http.ProxyAuthenticator;

OrbClient client = OrbOkHttpClient.builder()
.fromEnv()
.proxy(...)
// Or a custom implementation of `ProxyAuthenticator`.
.proxyAuthenticator(ProxyAuthenticator.basic("username", "password"))
.build();
```

### Connection pooling

To customize the underlying OkHttp connection pool, configure the client using the `maxIdleConnections` and `keepAliveDuration` methods:

```java
import com.withorb.api.client.OrbClient;
import com.withorb.api.client.okhttp.OrbOkHttpClient;
import java.time.Duration;

OrbClient client = OrbOkHttpClient.builder()
.fromEnv()
// If `maxIdleConnections` is set, then `keepAliveDuration` must be set, and vice versa.
.maxIdleConnections(10)
.keepAliveDuration(Duration.ofMinutes(2))
.build();
```

If both options are unset, OkHttp's default connection pool settings are used.

### HTTPS

> [!NOTE]
Expand Down Expand Up @@ -676,7 +721,9 @@ In rare cases, the API may return a response that doesn't match the expected typ

By default, the SDK will not throw an exception in this case. It will throw [`OrbInvalidDataException`](orb-java-core/src/main/kotlin/com/withorb/api/errors/OrbInvalidDataException.kt) only if you directly access the property.

If you would prefer to check that the response is completely well-typed upfront, then either call `validate()`:
Validating the response is _not_ forwards compatible with new types from the API for existing fields.

If you would still prefer to check that the response is completely well-typed upfront, then either call `validate()`:

```java
import com.withorb.api.models.Customer;
Expand Down
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
allprojects {
group = "com.withorb.api"
version = "1.10.0" // x-release-please-version
version = "1.11.0" // x-release-please-version
}

subprojects {
Expand Down
2 changes: 1 addition & 1 deletion buildSrc/src/main/kotlin/orb.java.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ tasks.withType<Test>().configureEach {

val palantir by configurations.creating
dependencies {
palantir("com.palantir.javaformat:palantir-java-format:2.73.0")
palantir("com.palantir.javaformat:palantir-java-format:2.89.0")
}

fun registerPalantir(
Expand Down
5 changes: 4 additions & 1 deletion buildSrc/src/main/kotlin/orb.kotlin.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,14 @@ kotlin {
tasks.withType<Test>().configureEach {
systemProperty("junit.jupiter.execution.parallel.enabled", true)
systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent")

// `SKIP_MOCK_TESTS` affects which tests run so it must be added as input for proper cache invalidation.
inputs.property("skipMockTests", System.getenv("SKIP_MOCK_TESTS")).optional(true)
}

val ktfmt by configurations.creating
dependencies {
ktfmt("com.facebook:ktfmt:0.56")
ktfmt("com.facebook:ktfmt:0.61")
}

fun registerKtfmt(
Expand Down
4 changes: 0 additions & 4 deletions examples/.keep

This file was deleted.

3 changes: 1 addition & 2 deletions orb-java-client-okhttp/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,8 @@ dependencies {
api(project(":orb-java-core"))

implementation("com.squareup.okhttp3:okhttp:4.12.0")
implementation("com.squareup.okhttp3:logging-interceptor:4.12.0")

testImplementation(kotlin("test"))
testImplementation("org.assertj:assertj-core:3.25.3")
testImplementation("org.assertj:assertj-core:3.27.7")
testImplementation("com.github.tomakehurst:wiremock-jre8:2.35.2")
}
Loading
Loading