Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
4cc0ce7
chore(deps): mypy 1.18.1 has a regression, pin to 1.17
stainless-app[bot] Nov 27, 2025
e7ca96e
feat(api): api update
stainless-app[bot] Dec 2, 2025
1d768d3
release: 4.44.0
stainless-app[bot] Dec 2, 2025
99dfd34
chore: update lockfile
stainless-app[bot] Dec 2, 2025
b133fa0
chore(docs): use environment variables for authentication in code sni…
stainless-app[bot] Dec 2, 2025
d74d407
feat(api): api update
stainless-app[bot] Dec 3, 2025
3dc4d3f
release: 4.45.0
stainless-app[bot] Dec 3, 2025
9258125
codegen metadata
stainless-app[bot] Dec 4, 2025
04f7754
feat(api): api update
stainless-app[bot] Dec 6, 2025
5c17da6
release: 4.46.0
stainless-app[bot] Dec 6, 2025
eaa220f
fix(types): allow pyright to infer TypedDict types within SequenceNotStr
stainless-app[bot] Dec 8, 2025
d68a102
release: 4.46.1
stainless-app[bot] Dec 8, 2025
729ed0b
chore: add missing docstrings
stainless-app[bot] Dec 8, 2025
5cb8f18
fix(client): use UTC timezone as default if webhook timestamp header …
dtmeadows Aug 20, 2025
9a0da3c
revert vscode settings
dtmeadows Aug 20, 2025
f672307
release: 4.46.2
stainless-app[bot] Dec 9, 2025
b193ddc
codegen metadata
stainless-app[bot] Dec 12, 2025
7dfc665
chore(internal): add missing files argument to base client
stainless-app[bot] Dec 15, 2025
a246d8f
fix: use async_to_httpx_files in patch method
stainless-app[bot] Dec 17, 2025
0c022df
release: 4.46.3
stainless-app[bot] Dec 17, 2025
cf1321e
codegen metadata
stainless-app[bot] Dec 17, 2025
eb52b9e
chore(internal): add `--fix` argument to lint script
stainless-app[bot] Dec 18, 2025
a05885c
codegen metadata
stainless-app[bot] Dec 28, 2025
bb78ee0
chore(internal): codegen related update
stainless-app[bot] Jan 5, 2026
9e6b73f
feat(api): api update
stainless-app[bot] Jan 6, 2026
28c3065
release: 4.47.0
stainless-app[bot] Jan 6, 2026
535bafe
feat(api): manual updates
stainless-app[bot] Jan 8, 2026
9dd428d
release: 4.48.0
stainless-app[bot] Jan 8, 2026
c8a4610
chore(internal): codegen related update
stainless-app[bot] Jan 20, 2026
e8e5839
feat(api): api update
stainless-app[bot] Jan 21, 2026
d44ed54
release: 4.49.0
stainless-app[bot] Jan 21, 2026
59f9b8f
chore(ci): upgrade `actions/github-script`
stainless-app[bot] Jan 23, 2026
6755e2a
feat(api): api update
stainless-app[bot] Jan 23, 2026
76511cb
release: 4.50.0
stainless-app[bot] Jan 23, 2026
a751372
feat(client): add custom JSON encoder for extended type support
stainless-app[bot] Jan 29, 2026
d28246f
release: 4.51.0
stainless-app[bot] Jan 29, 2026
179026a
feat(api): api update
stainless-app[bot] Feb 3, 2026
c7c218f
release: 4.52.0
stainless-app[bot] Feb 3, 2026
37c098b
chore(internal): bump dependencies
stainless-app[bot] Feb 9, 2026
fe21e52
feat(api): api update
stainless-app[bot] Feb 10, 2026
73c989b
release: 4.53.0
stainless-app[bot] Feb 10, 2026
69390d6
codegen metadata
stainless-app[bot] Feb 11, 2026
b3e1ca1
chore(internal): fix lint error on Python 3.14
stainless-app[bot] Feb 11, 2026
79b9596
chore(internal): codegen related update
stainless-app[bot] Feb 11, 2026
b86c8d9
chore: format all `api.md` files
stainless-app[bot] Feb 12, 2026
0ccfd37
feat(api): api update
stainless-app[bot] Feb 12, 2026
aaa2d8d
release: 4.54.0
stainless-app[bot] Feb 12, 2026
67f48b4
feat(api): manual updates
stainless-app[bot] Feb 12, 2026
48e6486
release: 4.55.0
stainless-app[bot] Feb 12, 2026
e20b7e2
Merge remote-tracking branch 'upstream/main' into fix-upstream
shaunakpp Feb 14, 2026
470d503
fix: apply customizations
shaunakpp Feb 14, 2026
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
8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
runs-on: ${{ github.repository == 'stainless-sdks/orb-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Install Rye
run: |
Expand All @@ -44,7 +44,7 @@ jobs:
id-token: write
runs-on: ${{ github.repository == 'stainless-sdks/orb-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Install Rye
run: |
Expand All @@ -63,7 +63,7 @@ jobs:
- name: Get GitHub OIDC Token
if: github.repository == 'stainless-sdks/orb-python'
id: github-oidc
uses: actions/github-script@v6
uses: actions/github-script@v8
with:
script: core.setOutput('github_token', await core.getIDToken());

Expand All @@ -81,7 +81,7 @@ jobs:
runs-on: ${{ github.repository == 'stainless-sdks/orb-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Install Rye
run: |
Expand Down
31 changes: 31 additions & 0 deletions .github/workflows/publish-pypi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# This workflow is triggered when a GitHub release is created.
# It can also be run manually to re-publish to PyPI in case it failed for some reason.
# You can run this workflow by navigating to https://www.github.com/orbcorp/orb-python/actions/workflows/publish-pypi.yml
name: Publish PyPI
on:
workflow_dispatch:

release:
types: [published]

jobs:
publish:
name: publish
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v6

- name: Install Rye
run: |
curl -sSf https://rye.astral.sh/get | bash
echo "$HOME/.rye/shims" >> $GITHUB_PATH
env:
RYE_VERSION: '0.44.0'
RYE_INSTALL_OPTION: '--yes'

- name: Publish to PyPI
run: |
bash ./bin/publish-pypi
env:
PYPI_TOKEN: ${{ secrets.ORB_PYPI_TOKEN || secrets.PYPI_TOKEN }}
21 changes: 21 additions & 0 deletions .github/workflows/release-doctor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Release Doctor
on:
pull_request:
branches:
- main
workflow_dispatch:

jobs:
release_doctor:
name: release doctor
runs-on: ubuntu-latest
if: github.repository == 'orbcorp/orb-python' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')

steps:
- uses: actions/checkout@v6

- name: Check release environment
run: |
bash ./bin/check-release-environment
env:
PYPI_TOKEN: ${{ secrets.ORB_PYPI_TOKEN || secrets.PYPI_TOKEN }}
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "4.43.1"
".": "4.55.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: 118
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-0ab0946487d1ee971683d894554494d9940010403874c0be724ffc3a82d696db.yml
openapi_spec_hash: 66b792328a4faee3c7659185accc3f0e
config_hash: e6db17547fe854b1c240407cf4c6dc9e
configured_endpoints: 139
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-c92fb451e13f157b3735f188acc8d57aa3adfbaac1683645e1ba4f432dd7a4f8.yml
openapi_spec_hash: dbcd87ecfbd3976eb3b99ec6f9fbc606
config_hash: 3279841440b02d4e8303c961d6983492
164 changes: 164 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,169 @@
# Changelog

## 4.55.0 (2026-02-12)

Full Changelog: [v4.54.0...v4.55.0](https://github.com/orbcorp/orb-python/compare/v4.54.0...v4.55.0)

### Features

* **api:** manual updates ([1e311d0](https://github.com/orbcorp/orb-python/commit/1e311d0f910abcc60dddaf50fa7a2d13ebc73927))

## 4.54.0 (2026-02-12)

Full Changelog: [v4.53.0...v4.54.0](https://github.com/orbcorp/orb-python/compare/v4.53.0...v4.54.0)

### Features

* **api:** api update ([e19d0dd](https://github.com/orbcorp/orb-python/commit/e19d0dd64cbdd35e4df9a865863f27f4dbbaa947))


### Chores

* format all `api.md` files ([814eda2](https://github.com/orbcorp/orb-python/commit/814eda22555fe97fe641823f61389c2a673e913d))
* **internal:** codegen related update ([98c5208](https://github.com/orbcorp/orb-python/commit/98c5208b72deeb740f0e548fb89c61239f4b7492))
* **internal:** fix lint error on Python 3.14 ([ca05c35](https://github.com/orbcorp/orb-python/commit/ca05c357163d78a443aadc1648bf848ab7e6b9f0))

## 4.53.0 (2026-02-10)

Full Changelog: [v4.52.0...v4.53.0](https://github.com/orbcorp/orb-python/compare/v4.52.0...v4.53.0)

### Features

* **api:** api update ([09030b5](https://github.com/orbcorp/orb-python/commit/09030b54fbd1787c8b53a66f1d1f82f34ff6ed7f))


### Chores

* **internal:** bump dependencies ([8408c34](https://github.com/orbcorp/orb-python/commit/8408c34ef4bc900ad843f945283c9ad3a7e39ebe))

## 4.52.0 (2026-02-03)

Full Changelog: [v4.51.0...v4.52.0](https://github.com/orbcorp/orb-python/compare/v4.51.0...v4.52.0)

### Features

* **api:** api update ([6e955d0](https://github.com/orbcorp/orb-python/commit/6e955d040735eca89ab38fcae425478a410313eb))

## 4.51.0 (2026-01-29)

Full Changelog: [v4.50.0...v4.51.0](https://github.com/orbcorp/orb-python/compare/v4.50.0...v4.51.0)

### Features

* **client:** add custom JSON encoder for extended type support ([223e84e](https://github.com/orbcorp/orb-python/commit/223e84e59076bc26023a5c66121396bbdccf368f))

## 4.50.0 (2026-01-23)

Full Changelog: [v4.49.0...v4.50.0](https://github.com/orbcorp/orb-python/compare/v4.49.0...v4.50.0)

### Features

* **api:** api update ([7ca6606](https://github.com/orbcorp/orb-python/commit/7ca6606e01b7b05801ae85817a067513a4427442))


### Chores

* **ci:** upgrade `actions/github-script` ([e2dc8e2](https://github.com/orbcorp/orb-python/commit/e2dc8e2a6beee09ee4fbd80952b0623abc7708bf))

## 4.49.0 (2026-01-21)

Full Changelog: [v4.48.0...v4.49.0](https://github.com/orbcorp/orb-python/compare/v4.48.0...v4.49.0)

### Features

* **api:** api update ([5b5c348](https://github.com/orbcorp/orb-python/commit/5b5c348e954f79937614e47481e3a91dc8692751))


### Chores

* **internal:** codegen related update ([9f74fa5](https://github.com/orbcorp/orb-python/commit/9f74fa57c3d4bfebf2d5b4765d100f0e663b4ed6))

## 4.48.0 (2026-01-08)

Full Changelog: [v4.47.0...v4.48.0](https://github.com/orbcorp/orb-python/compare/v4.47.0...v4.48.0)

### Features

* **api:** manual updates ([19e971e](https://github.com/orbcorp/orb-python/commit/19e971ed6f2da625b7d29101aa3ae8aab99e4401))

## 4.47.0 (2026-01-06)

Full Changelog: [v4.46.3...v4.47.0](https://github.com/orbcorp/orb-python/compare/v4.46.3...v4.47.0)

### Features

* **api:** api update ([3685f1a](https://github.com/orbcorp/orb-python/commit/3685f1a5eb5e9d43c96eb0b253c79be02ba32285))


### Chores

* **internal:** add `--fix` argument to lint script ([a63545c](https://github.com/orbcorp/orb-python/commit/a63545cbdd128e08ca89cdbb9050d28c56e4022f))
* **internal:** codegen related update ([e46bd76](https://github.com/orbcorp/orb-python/commit/e46bd7631ded1045eedc100118e5329600c3fd7e))

## 4.46.3 (2025-12-17)

Full Changelog: [v4.46.2...v4.46.3](https://github.com/orbcorp/orb-python/compare/v4.46.2...v4.46.3)

### Bug Fixes

* use async_to_httpx_files in patch method ([25a4f49](https://github.com/orbcorp/orb-python/commit/25a4f49c670676bb82daf89deb18657bca7e2973))


### Chores

* **internal:** add missing files argument to base client ([770853a](https://github.com/orbcorp/orb-python/commit/770853af542db967e769efe1d371c51495fb0553))

## 4.46.2 (2025-12-09)

Full Changelog: [v4.46.1...v4.46.2](https://github.com/orbcorp/orb-python/compare/v4.46.1...v4.46.2)

### Chores

* add missing docstrings ([073bfcb](https://github.com/orbcorp/orb-python/commit/073bfcb247316e483dc732908e7c0ab0d42a3551))

## 4.46.1 (2025-12-08)

Full Changelog: [v4.46.0...v4.46.1](https://github.com/orbcorp/orb-python/compare/v4.46.0...v4.46.1)

### Bug Fixes

* **types:** allow pyright to infer TypedDict types within SequenceNotStr ([4d0910a](https://github.com/orbcorp/orb-python/commit/4d0910a183bb2435b91cfecd4c643e50e23eff67))

## 4.46.0 (2025-12-06)

Full Changelog: [v4.45.0...v4.46.0](https://github.com/orbcorp/orb-python/compare/v4.45.0...v4.46.0)

### Features

* **api:** api update ([a0222a2](https://github.com/orbcorp/orb-python/commit/a0222a2406664b664a79f094c35dcb5af8ace149))

## 4.45.0 (2025-12-03)

Full Changelog: [v4.44.0...v4.45.0](https://github.com/orbcorp/orb-python/compare/v4.44.0...v4.45.0)

### Features

* **api:** api update ([3959281](https://github.com/orbcorp/orb-python/commit/3959281daeb67e4c41bade06590d66a246659d86))


### Chores

* **docs:** use environment variables for authentication in code snippets ([5527cac](https://github.com/orbcorp/orb-python/commit/5527cac85f39a9178e2ea77203bbc8141f1bbca5))
* update lockfile ([b78de8a](https://github.com/orbcorp/orb-python/commit/b78de8a33d1cea6a7de2c018ba98b8014e8f3e68))

## 4.44.0 (2025-12-02)

Full Changelog: [v4.43.1...v4.44.0](https://github.com/orbcorp/orb-python/compare/v4.43.1...v4.44.0)

### Features

* **api:** api update ([d05cd59](https://github.com/orbcorp/orb-python/commit/d05cd599518f89f531ddb4588e8bbf9ae4c9b6bb))


### Chores

* **deps:** mypy 1.18.1 has a regression, pin to 1.17 ([fe99db5](https://github.com/orbcorp/orb-python/commit/fe99db5c9904f9a83fe60cf6738316226510d839))

## 4.43.1 (2025-11-27)

Full Changelog: [v4.43.0...v4.43.1](https://github.com/orbcorp/orb-python/compare/v4.43.0...v4.43.1)
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright 2025 Orb
Copyright 2026 Orb

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,14 +83,15 @@ pip install orb-billing[aiohttp]
Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:

```python
import os
import asyncio
from orb import DefaultAioHttpClient
from orb import AsyncOrb


async def main() -> None:
async with AsyncOrb(
api_key="My API Key",
api_key=os.environ.get("ORB_API_KEY"), # This is the default and can be omitted
http_client=DefaultAioHttpClient(),
) as client:
customer = await client.customers.create(
Expand Down
Loading