Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1581 commits
Select commit Hold shift + click to select a range
e227f40
codegen metadata
stainless-app[bot] Oct 8, 2025
e772716
codegen metadata
stainless-app[bot] Oct 8, 2025
8bfd778
codegen metadata
stainless-app[bot] Oct 8, 2025
67788e6
codegen metadata
stainless-app[bot] Oct 8, 2025
65382bf
chore(api): update composite API spec
stainless-app[bot] Oct 9, 2025
807d5b8
codegen metadata
stainless-app[bot] Oct 9, 2025
f5a4523
codegen metadata
stainless-app[bot] Oct 9, 2025
8244fcc
codegen metadata
stainless-app[bot] Oct 9, 2025
2f0f596
codegen metadata
stainless-app[bot] Oct 9, 2025
da679ef
codegen metadata
stainless-app[bot] Oct 9, 2025
047f07f
codegen metadata
stainless-app[bot] Oct 9, 2025
375c7e4
codegen metadata
stainless-app[bot] Oct 9, 2025
44fc019
codegen metadata
stainless-app[bot] Oct 9, 2025
b7f344e
codegen metadata
stainless-app[bot] Oct 9, 2025
fc648ce
codegen metadata
stainless-app[bot] Oct 9, 2025
119f889
chore(api): update composite API spec
stainless-app[bot] Oct 9, 2025
08d81e1
codegen metadata
stainless-app[bot] Oct 9, 2025
bcd1c71
codegen metadata
stainless-app[bot] Oct 9, 2025
d7f93e2
codegen metadata
stainless-app[bot] Oct 9, 2025
3c3adc5
feat: feat: SDKs for Organizations and OrganizationsProfile
stainless-app[bot] Oct 9, 2025
a027aa8
codegen metadata
stainless-app[bot] Oct 9, 2025
8403975
codegen metadata
stainless-app[bot] Oct 9, 2025
a0d18a9
codegen metadata
stainless-app[bot] Oct 9, 2025
ec90778
codegen metadata
stainless-app[bot] Oct 9, 2025
412ed20
chore(api): update composite API spec
stainless-app[bot] Oct 9, 2025
578a539
codegen metadata
stainless-app[bot] Oct 9, 2025
69adcaf
codegen metadata
stainless-app[bot] Oct 9, 2025
000870c
codegen metadata
stainless-app[bot] Oct 9, 2025
345d46b
codegen metadata
stainless-app[bot] Oct 9, 2025
c73b6d4
codegen metadata
stainless-app[bot] Oct 9, 2025
ef19bde
codegen metadata
stainless-app[bot] Oct 9, 2025
d292832
codegen metadata
stainless-app[bot] Oct 10, 2025
e1ab1d5
codegen metadata
stainless-app[bot] Oct 10, 2025
7443dba
codegen metadata
stainless-app[bot] Oct 10, 2025
2ddc5f6
codegen metadata
stainless-app[bot] Oct 10, 2025
1e75cf1
codegen metadata
stainless-app[bot] Oct 10, 2025
5df5038
codegen metadata
stainless-app[bot] Oct 10, 2025
cdf24f6
codegen metadata
stainless-app[bot] Oct 10, 2025
d6985cf
codegen metadata
stainless-app[bot] Oct 10, 2025
f135b69
codegen metadata
stainless-app[bot] Oct 10, 2025
65b50c0
codegen metadata
stainless-app[bot] Oct 10, 2025
ead01b6
codegen metadata
stainless-app[bot] Oct 10, 2025
0e5445c
codegen metadata
stainless-app[bot] Oct 10, 2025
c8e36e5
codegen metadata
stainless-app[bot] Oct 10, 2025
c686a51
chore(api): update composite API spec
stainless-app[bot] Oct 10, 2025
392c50f
codegen metadata
stainless-app[bot] Oct 10, 2025
9ec22ad
codegen metadata
stainless-app[bot] Oct 10, 2025
242b8b3
codegen metadata
stainless-app[bot] Oct 10, 2025
b3537d9
codegen metadata
stainless-app[bot] Oct 10, 2025
7f2bca9
codegen metadata
stainless-app[bot] Oct 10, 2025
6ed08c0
codegen metadata
stainless-app[bot] Oct 10, 2025
676f8b5
codegen metadata
stainless-app[bot] Oct 10, 2025
9e8dfa7
codegen metadata
stainless-app[bot] Oct 10, 2025
bc97b30
codegen metadata
stainless-app[bot] Oct 10, 2025
af1f147
codegen metadata
stainless-app[bot] Oct 10, 2025
821ec53
codegen metadata
stainless-app[bot] Oct 10, 2025
e87641f
codegen metadata
stainless-app[bot] Oct 10, 2025
c90093f
codegen metadata
stainless-app[bot] Oct 10, 2025
b9cb84c
codegen metadata
stainless-app[bot] Oct 10, 2025
1f8a4b6
codegen metadata
stainless-app[bot] Oct 10, 2025
70e068e
feat: feat(api): add mcp portals endpoints
stainless-app[bot] Oct 13, 2025
845fba2
feat: feat(radar): add new group by dimension endpoints; deprecate to…
stainless-app[bot] Oct 13, 2025
f9160a4
chore(api): update composite API spec
stainless-app[bot] Oct 13, 2025
19d1d96
chore(api): update composite API spec
stainless-app[bot] Oct 13, 2025
9fd6645
chore(api): update composite API spec
stainless-app[bot] Oct 13, 2025
3c18fd3
feat: docs(zero_trust_gateway_policy): add /rules/tenants endpoint to…
stainless-app[bot] Oct 13, 2025
fc06837
feat: feat: add connectivity directory service APIs to openapi.stainl…
stainless-app[bot] Oct 14, 2025
25d603f
chore(api): update composite API spec
stainless-app[bot] Oct 14, 2025
53d59f4
chore(api): update composite API spec
stainless-app[bot] Oct 14, 2025
7baa51c
chore(api): update composite API spec
stainless-app[bot] Oct 14, 2025
c10d1c9
codegen metadata
stainless-app[bot] Oct 14, 2025
19daccb
codegen metadata
stainless-app[bot] Oct 14, 2025
7361723
codegen metadata
stainless-app[bot] Oct 14, 2025
dd0b6fb
feat: chore(abuse): rename path parameter
stainless-app[bot] Oct 15, 2025
ba5b5fc
chore(api): update composite API spec
stainless-app[bot] Oct 21, 2025
fe3da6c
codegen metadata
stainless-app[bot] Oct 21, 2025
541c9fb
chore(api): update composite API spec
stainless-app[bot] Oct 22, 2025
aa1460b
codegen metadata
stainless-app[bot] Oct 22, 2025
5d19869
chore(api): update composite API spec
stainless-app[bot] Oct 22, 2025
5f5caef
chore(api): update composite API spec
stainless-app[bot] Oct 22, 2025
bd177bd
codegen metadata
stainless-app[bot] Oct 22, 2025
d51cc42
codegen metadata
stainless-app[bot] Oct 23, 2025
9ea4469
codegen metadata
stainless-app[bot] Oct 27, 2025
6734e9b
chore(api): update composite API spec
stainless-app[bot] Oct 30, 2025
78f51ab
codegen metadata
stainless-app[bot] Oct 30, 2025
69b2326
codegen metadata
stainless-app[bot] Oct 30, 2025
13e6549
codegen metadata
stainless-app[bot] Oct 30, 2025
913dbf4
codegen metadata
stainless-app[bot] Oct 30, 2025
fd5477b
codegen metadata
stainless-app[bot] Oct 30, 2025
338f669
codegen metadata
stainless-app[bot] Oct 30, 2025
c39f45d
codegen metadata
stainless-app[bot] Oct 30, 2025
2f7a05a
codegen metadata
stainless-app[bot] Oct 30, 2025
e719bda
codegen metadata
stainless-app[bot] Oct 30, 2025
ea49058
chore(api): update composite API spec
stainless-app[bot] Oct 30, 2025
3a326dd
codegen metadata
stainless-app[bot] Oct 30, 2025
3ccb7fe
codegen metadata
stainless-app[bot] Oct 30, 2025
581c259
codegen metadata
stainless-app[bot] Oct 30, 2025
3b70a95
chore(api): update composite API spec
stainless-app[bot] Oct 30, 2025
6965762
feat: feat(mcp_portals): enable sdks generation
stainless-app[bot] Oct 30, 2025
2319591
chore(api): update composite API spec
stainless-app[bot] Oct 30, 2025
e0fd12a
codegen metadata
stainless-app[bot] Oct 30, 2025
58004f3
codegen metadata
stainless-app[bot] Oct 30, 2025
9fcb3e1
codegen metadata
stainless-app[bot] Oct 30, 2025
c2d7fd9
codegen metadata
stainless-app[bot] Oct 30, 2025
e917d0c
codegen metadata
stainless-app[bot] Oct 31, 2025
075d00c
codegen metadata
stainless-app[bot] Oct 31, 2025
96625f8
codegen metadata
stainless-app[bot] Oct 31, 2025
ca943bd
codegen metadata
stainless-app[bot] Oct 31, 2025
8a700f1
codegen metadata
stainless-app[bot] Oct 31, 2025
d9ab804
codegen metadata
stainless-app[bot] Oct 31, 2025
d8db24c
codegen metadata
stainless-app[bot] Oct 31, 2025
07a9232
codegen metadata
stainless-app[bot] Oct 31, 2025
e244422
codegen metadata
stainless-app[bot] Oct 31, 2025
f112b87
codegen metadata
stainless-app[bot] Oct 31, 2025
b5532ba
codegen metadata
stainless-app[bot] Oct 31, 2025
fd7b699
codegen metadata
stainless-app[bot] Oct 31, 2025
164e8b2
codegen metadata
stainless-app[bot] Oct 31, 2025
2184758
codegen metadata
stainless-app[bot] Oct 31, 2025
887aaa6
codegen metadata
stainless-app[bot] Oct 31, 2025
206bca3
codegen metadata
stainless-app[bot] Oct 31, 2025
91c5b2e
codegen metadata
stainless-app[bot] Oct 31, 2025
e6ec653
codegen metadata
stainless-app[bot] Oct 31, 2025
77960c9
feat: feat(iam): Add SSO Connectors resource to SDKs
stainless-app[bot] Oct 31, 2025
5fdf07b
chore(api): update composite API spec
stainless-app[bot] Oct 31, 2025
35670b1
chore(api): update composite API spec
stainless-app[bot] Oct 31, 2025
3d5d0e0
chore(api): update composite API spec
stainless-app[bot] Oct 31, 2025
96b52fa
codegen metadata
stainless-app[bot] Oct 31, 2025
1fa6569
codegen metadata
stainless-app[bot] Oct 31, 2025
6f09449
codegen metadata
stainless-app[bot] Oct 31, 2025
f31199b
codegen metadata
stainless-app[bot] Oct 31, 2025
93e3971
chore(api): update composite API spec
stainless-app[bot] Oct 31, 2025
b8d1c66
chore(api): update composite API spec
stainless-app[bot] Nov 2, 2025
b9191af
codegen metadata
stainless-app[bot] Nov 3, 2025
a1ddf7e
feat: feat: Add token validation to stainless config
stainless-app[bot] Nov 3, 2025
01fb118
feat: fix: Correctly reflect schema validation model <-> openapi mapping
stainless-app[bot] Nov 3, 2025
9eac1bf
codegen metadata
stainless-app[bot] Nov 3, 2025
b7c4b43
chore(api): update composite API spec
stainless-app[bot] Nov 3, 2025
faf1046
codegen metadata
stainless-app[bot] Nov 3, 2025
4b6e9cb
codegen metadata
stainless-app[bot] Nov 3, 2025
601eda0
codegen metadata
stainless-app[bot] Nov 3, 2025
eb2f696
codegen metadata
stainless-app[bot] Nov 3, 2025
2f787ab
codegen metadata
stainless-app[bot] Nov 3, 2025
38f5767
codegen metadata
stainless-app[bot] Nov 3, 2025
9547301
codegen metadata
stainless-app[bot] Nov 3, 2025
07cb878
codegen metadata
stainless-app[bot] Nov 3, 2025
0ba89d9
codegen metadata
stainless-app[bot] Nov 3, 2025
875f4f7
codegen metadata
stainless-app[bot] Nov 3, 2025
cba305a
codegen metadata
stainless-app[bot] Nov 3, 2025
353e11e
chore(api): update composite API spec
stainless-app[bot] Nov 3, 2025
6137ae2
codegen metadata
stainless-app[bot] Nov 3, 2025
40cfaa4
codegen metadata
stainless-app[bot] Nov 3, 2025
5ab7c0f
codegen metadata
stainless-app[bot] Nov 3, 2025
d31ea41
codegen metadata
stainless-app[bot] Nov 3, 2025
2e3ff8b
codegen metadata
stainless-app[bot] Nov 3, 2025
1aee3a2
codegen metadata
stainless-app[bot] Nov 3, 2025
116f174
codegen metadata
stainless-app[bot] Nov 3, 2025
b07f0d6
chore(api): update composite API spec
stainless-app[bot] Nov 3, 2025
a009bd0
chore(api): update composite API spec
stainless-app[bot] Nov 3, 2025
9988b02
codegen metadata
stainless-app[bot] Nov 3, 2025
a9a35ff
codegen metadata
stainless-app[bot] Nov 3, 2025
ebcb1d6
feat: fix(ai_controls): incorrect use of standalone_api
stainless-app[bot] Nov 3, 2025
1dbae15
codegen metadata
stainless-app[bot] Nov 4, 2025
b7a507c
codegen metadata
stainless-app[bot] Nov 4, 2025
f80e6d5
codegen metadata
stainless-app[bot] Nov 4, 2025
62e3a94
codegen metadata
stainless-app[bot] Nov 4, 2025
24b4e74
codegen metadata
stainless-app[bot] Nov 4, 2025
4900594
chore(api): update composite API spec
stainless-app[bot] Nov 4, 2025
46ce19f
chore(api): update composite API spec
stainless-app[bot] Nov 4, 2025
1093e51
codegen metadata
stainless-app[bot] Nov 4, 2025
83926a8
codegen metadata
stainless-app[bot] Nov 4, 2025
fd04baa
feat: docs: WC-4152 Expose subdomain delete for workers
stainless-app[bot] Nov 4, 2025
212fa00
codegen metadata
stainless-app[bot] Nov 4, 2025
d991d33
codegen metadata
stainless-app[bot] Nov 4, 2025
c402d88
codegen metadata
stainless-app[bot] Nov 4, 2025
7df16c3
codegen metadata
stainless-app[bot] Nov 4, 2025
e786ff4
codegen metadata
stainless-app[bot] Nov 4, 2025
b7c4e8c
codegen metadata
stainless-app[bot] Nov 4, 2025
e3d936e
codegen metadata
stainless-app[bot] Nov 4, 2025
c357dad
feat: fix: move wvpc
stainless-app[bot] Nov 4, 2025
ffd13df
codegen metadata
stainless-app[bot] Nov 4, 2025
c738522
codegen metadata
stainless-app[bot] Nov 4, 2025
e764ad8
codegen metadata
stainless-app[bot] Nov 4, 2025
592c9b5
codegen metadata
stainless-app[bot] Nov 4, 2025
cfafc0e
codegen metadata
stainless-app[bot] Nov 4, 2025
7447a8c
codegen metadata
stainless-app[bot] Nov 4, 2025
0f51b8e
codegen metadata
stainless-app[bot] Nov 4, 2025
234d9db
codegen metadata
stainless-app[bot] Nov 4, 2025
5994ce6
codegen metadata
stainless-app[bot] Nov 4, 2025
ee9bf2e
codegen metadata
stainless-app[bot] Nov 5, 2025
3e6dca2
codegen metadata
stainless-app[bot] Nov 5, 2025
bba0824
codegen metadata
stainless-app[bot] Nov 5, 2025
7199aa3
chore(api): update composite API spec
stainless-app[bot] Nov 5, 2025
b0fc29f
feat: feat(abuse_reports): Expose new abuse report endpoints. GET and…
stainless-app[bot] Nov 5, 2025
b33c23d
codegen metadata
stainless-app[bot] Nov 5, 2025
a6746dd
codegen metadata
stainless-app[bot] Nov 5, 2025
12823f5
codegen metadata
stainless-app[bot] Nov 5, 2025
dff2404
codegen metadata
stainless-app[bot] Nov 5, 2025
de5487c
codegen metadata
stainless-app[bot] Nov 5, 2025
a3c1950
codegen metadata
stainless-app[bot] Nov 5, 2025
52096cf
codegen metadata
stainless-app[bot] Nov 5, 2025
e1a8002
codegen metadata
stainless-app[bot] Nov 5, 2025
2c955c8
codegen metadata
stainless-app[bot] Nov 5, 2025
2cb9ef9
chore(api): update composite API spec
stainless-app[bot] Nov 5, 2025
e7397f6
codegen metadata
stainless-app[bot] Nov 5, 2025
12cd9ef
codegen metadata
stainless-app[bot] Nov 5, 2025
5909bb2
codegen metadata
stainless-app[bot] Nov 5, 2025
b5bea72
codegen metadata
stainless-app[bot] Nov 5, 2025
2cc2a3f
chore(api): update composite API spec
stainless-app[bot] Nov 5, 2025
9d14bdf
codegen metadata
stainless-app[bot] Nov 5, 2025
6939c9f
codegen metadata
stainless-app[bot] Nov 5, 2025
8ddc269
codegen metadata
stainless-app[bot] Nov 5, 2025
1004f37
codegen metadata
stainless-app[bot] Nov 5, 2025
6360c46
codegen metadata
stainless-app[bot] Nov 5, 2025
7e1d8b7
chore(api): update composite API spec
stainless-app[bot] Nov 6, 2025
bb4311f
chore(api): update composite API spec
stainless-app[bot] Nov 6, 2025
a03edca
codegen metadata
stainless-app[bot] Nov 6, 2025
61567e4
codegen metadata
stainless-app[bot] Nov 6, 2025
33cd609
codegen metadata
stainless-app[bot] Nov 6, 2025
de4f15a
codegen metadata
stainless-app[bot] Nov 6, 2025
315c8eb
chore(api): update composite API spec
stainless-app[bot] Nov 6, 2025
7fe3692
codegen metadata
stainless-app[bot] Nov 6, 2025
38b3425
codegen metadata
stainless-app[bot] Nov 6, 2025
4fac351
codegen metadata
stainless-app[bot] Nov 6, 2025
fee9ce0
chore(api): update composite API spec
stainless-app[bot] Nov 6, 2025
afbf485
codegen metadata
stainless-app[bot] Nov 6, 2025
dfd1c88
codegen metadata
stainless-app[bot] Nov 6, 2025
4e9deac
chore(api): update composite API spec
stainless-app[bot] Nov 6, 2025
cd4f924
chore(api): update composite API spec
stainless-app[bot] Nov 6, 2025
a4762dd
feat: fix: tabbing on realtime-kit api resources
stainless-app[bot] Nov 7, 2025
cb197df
chore(api): update composite API spec
stainless-app[bot] Nov 7, 2025
ebb9060
codegen metadata
stainless-app[bot] Nov 7, 2025
64bc54f
chore(api): update composite API spec
stainless-app[bot] Nov 7, 2025
622f384
chore(api): update composite API spec
stainless-app[bot] Nov 10, 2025
bf0d4bb
codegen metadata
stainless-app[bot] Nov 10, 2025
6a4f824
feat: feat(tomarkdown): add new markdown supported endpoint
stainless-app[bot] Nov 10, 2025
ce4789c
feat: feat(abuse_reports): add abuse mitigations in Client API
stainless-app[bot] Nov 10, 2025
f5ca4cc
chore(api): update composite API spec
stainless-app[bot] Nov 10, 2025
dafacb1
codegen metadata
stainless-app[bot] Nov 10, 2025
a59d1b6
chore(api): update composite API spec
stainless-app[bot] Nov 10, 2025
064478c
chore(api): update composite API spec
stainless-app[bot] Nov 11, 2025
c90c6e3
codegen metadata
stainless-app[bot] Nov 11, 2025
b75f514
codegen metadata
stainless-app[bot] Nov 11, 2025
7464286
chore(api): update composite API spec
stainless-app[bot] Nov 11, 2025
398b797
codegen metadata
stainless-app[bot] Nov 11, 2025
2fb65e6
codegen metadata
stainless-app[bot] Nov 11, 2025
afc24b0
codegen metadata
stainless-app[bot] Nov 11, 2025
008556f
feat: feat(pipelines): Configure SDKs/Terraform to use the new Pipeli…
stainless-app[bot] Nov 12, 2025
3186483
chore(api): update composite API spec
stainless-app[bot] Nov 12, 2025
ac247ff
chore(api): update composite API spec
stainless-app[bot] Nov 12, 2025
277e2f5
release: 5.0.0
stainless-app[bot] Nov 12, 2025
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
  •  
  •  
  •  
32 changes: 27 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ on:
- 'integrated/**'
- 'stl-preview-head/**'
- 'stl-preview-base/**'
pull_request:
branches-ignore:
- 'stl-preview-head/**'
- 'stl-preview-base/**'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand All @@ -18,6 +22,7 @@ jobs:
timeout-minutes: 10
name: lint
runs-on: ${{ github.repository == 'stainless-sdks/cloudflare-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
steps:
- uses: actions/checkout@v4

Expand All @@ -35,24 +40,40 @@ jobs:
- name: Run lints
run: ./scripts/lint

upload:
if: github.repository == 'stainless-sdks/cloudflare-python'
build:
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
timeout-minutes: 10
name: upload
name: build
permissions:
contents: read
id-token: write
runs-on: depot-ubuntu-24.04
runs-on: ${{ github.repository == 'stainless-sdks/cloudflare-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
steps:
- uses: actions/checkout@v4

- 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: Install dependencies
run: rye sync --all-features

- name: Run build
run: rye build

- name: Get GitHub OIDC Token
if: github.repository == 'stainless-sdks/cloudflare-python'
id: github-oidc
uses: actions/github-script@v6
with:
script: core.setOutput('github_token', await core.getIDToken());

- name: Upload tarball
if: github.repository == 'stainless-sdks/cloudflare-python'
env:
URL: https://pkg.stainless.com/s
AUTH: ${{ steps.github-oidc.outputs.github_token }}
Expand All @@ -63,6 +84,7 @@ jobs:
timeout-minutes: 30
name: test
runs-on: ${{ github.repository == 'stainless-sdks/cloudflare-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
steps:
- uses: actions/checkout@v4

Expand All @@ -84,7 +106,7 @@ jobs:
timeout-minutes: 10
name: examples
runs-on: ${{ github.repository == 'stainless-sdks/cloudflare-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.repository == 'cloudflare/cloudflare-python'
if: github.repository == 'cloudflare/cloudflare-python' && (github.event_name == 'push' || github.event.pull_request.head.repo.fork)

steps:
- uses: actions/checkout@v4
Expand Down
42 changes: 42 additions & 0 deletions .github/workflows/detect-breaking-changes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: CI
on:
pull_request:
branches:
- main
- next

jobs:
detect_breaking_changes:
runs-on: 'ubuntu-latest'
name: detect-breaking-changes
if: github.repository == 'cloudflare/cloudflare-python'
steps:
- name: Calculate fetch-depth
run: |
echo "FETCH_DEPTH=$(expr ${{ github.event.pull_request.commits }} + 1)" >> $GITHUB_ENV
- uses: actions/checkout@v4
with:
# Ensure we can check out the pull request base in the script below.
fetch-depth: ${{ env.FETCH_DEPTH }}

- 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: Install dependencies
run: |
rye sync --all-features
- name: Detect removed symbols
run: |
rye run python scripts/detect-breaking-changes.py "${{ github.event.pull_request.base.sha }}"
- name: Detect breaking changes
run: |
# Try to check out previous versions of the breaking change detection script. This ensures that
# we still detect breaking changes when entire files and their tests are removed.
git checkout "${{ github.event.pull_request.base.sha }}" -- ./scripts/detect-breaking-changes 2>/dev/null || true
./scripts/detect-breaking-changes ${{ github.event.pull_request.base.sha }}
Comment on lines +10 to +42

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI 3 months ago

To fix this issue, we should explicitly set minimal required permissions for the workflow/job by adding a permissions block. The simplest and safest starting point is to set contents: read at the workflow level, as the steps only clone/checkout code and do not perform any write operations on issues, deployments, etc. This should be placed at the top level of the YAML file (directly below the name: or on: block) so all jobs inherit these permissions, unless overridden. No additional functionality is added or changed; this only restricts the escalated permissions that the workflow's GitHub token might inherit.


Suggested changeset 1
.github/workflows/detect-breaking-changes.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/detect-breaking-changes.yml b/.github/workflows/detect-breaking-changes.yml
--- a/.github/workflows/detect-breaking-changes.yml
+++ b/.github/workflows/detect-breaking-changes.yml
@@ -1,3 +1,5 @@
+permissions:
+  contents: read
 name: CI
 on:
   pull_request:
EOF
@@ -1,3 +1,5 @@
permissions:
contents: read
name: CI
on:
pull_request:
Copilot is powered by AI and may make mistakes. Always verify output.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
.prism.log
.vscode
_dev

__pycache__
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 @@
{
".": "4.3.1"
".": "5.0.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: 1752
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-b15b44e0efd207de48e7e74e742b0b4b190c74f12a941a1a0ef59a51656a5224.yml
openapi_spec_hash: 83243c9ee06f88d0fa91e9b185d8a42e
config_hash: 8601d43fd5ccaf9e3d08f26748a5a63a
configured_endpoints: 1908
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-cc732ca8d1d7f1c11a1ee579060ddfd8f953a3ad94fd5053056b53370129d040.yml
openapi_spec_hash: a3e1e833dfe13845abd1e2227993a979
config_hash: 0c4384f215154a287ab7fbe937bf1621
3 changes: 3 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"python.analysis.importFormat": "relative",
}
82 changes: 82 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,87 @@
# Changelog

## 5.0.0 (2025-11-12)

Full Changelog: [v4.3.1...v5.0.0](https://github.com/cloudflare/cloudflare-python/compare/v4.3.1...v5.0.0)

### Features

* chore(abuse): rename path parameter ([dd0b6fb](https://github.com/cloudflare/cloudflare-python/commit/dd0b6fbd8042a4cde1625d945369b28d6e69bbb0))
* docs: WC-4152 Expose subdomain delete for workers ([fd04baa](https://github.com/cloudflare/cloudflare-python/commit/fd04baa03e03fe1601a0d3db991ddad1f4267f7d))
* docs(zero_trust_gateway_policy): add /rules/tenants endpoint to Gateway API docs ([3c18fd3](https://github.com/cloudflare/cloudflare-python/commit/3c18fd307d5cf804eb9d68c8474d5ecc5f481a3e))
* feat: add connectivity directory service APIs to openapi.stainless.yml ([fc06837](https://github.com/cloudflare/cloudflare-python/commit/fc06837d768b4291bbaa1d9a5e0d3303d0a82ba1))
* feat: Add token validation to stainless config ([a1ddf7e](https://github.com/cloudflare/cloudflare-python/commit/a1ddf7ef6249fb36530a787bfa5987d1ce488e7f))
* feat: SDKs for Organizations and OrganizationsProfile ([3c3adc5](https://github.com/cloudflare/cloudflare-python/commit/3c3adc5853478da4154805746ac19ffa6e6b4b4e))
* feat(abuse_reports): add abuse mitigations in Client API ([ce4789c](https://github.com/cloudflare/cloudflare-python/commit/ce4789cabe80d5833e3393fcd93c92d191c8d5f5))
* feat(abuse_reports): Expose new abuse report endpoints. GET and LIST. ([b0fc29f](https://github.com/cloudflare/cloudflare-python/commit/b0fc29f708cd4c2fb4237dbe74959ff2b22dcac2))
* feat(api): add mcp portals endpoints ([70e068e](https://github.com/cloudflare/cloudflare-python/commit/70e068e9497013d0c8d8e7689ae87b3beafeeb46))
* feat(iam): Add SSO Connectors resource to SDKs ([77960c9](https://github.com/cloudflare/cloudflare-python/commit/77960c9620d293937886791fb8c72b43abc1e19e))
* feat(mcp_portals): enable sdks generation ([6965762](https://github.com/cloudflare/cloudflare-python/commit/69657624f4f9f83a41de3f4e927a047d798ca89e))
* feat(pipelines): Configure SDKs/Terraform to use the new Pipelines, Streams, Sinks routes ([008556f](https://github.com/cloudflare/cloudflare-python/commit/008556f6aa27c2292c24c5ff368f37cce91e2e5b))
* feat(radar): add new group by dimension endpoints; deprecate to_markdown endpoint ([845fba2](https://github.com/cloudflare/cloudflare-python/commit/845fba278d6d58c6b4b8de8fa54d02efdc4dddee))
* feat(tomarkdown): add new markdown supported endpoint ([6a4f824](https://github.com/cloudflare/cloudflare-python/commit/6a4f824f942f35cc8467cdaf950cfb2af4017949))
* fix: Correctly reflect schema validation model &lt;-&gt; openapi mapping ([01fb118](https://github.com/cloudflare/cloudflare-python/commit/01fb1181dd1aedb409872013251a77912f00476b))
* fix: move wvpc ([c357dad](https://github.com/cloudflare/cloudflare-python/commit/c357dadc80540a78f7505bc8f8dbcd2f1da69070))
* fix: tabbing on realtime-kit api resources ([a4762dd](https://github.com/cloudflare/cloudflare-python/commit/a4762dd21ecf123322f80c7cba7f2caa5021efe2))
* fix(ai_controls): incorrect use of standalone_api ([ebcb1d6](https://github.com/cloudflare/cloudflare-python/commit/ebcb1d6d9124a355b06ce80efb8869635bae5e3f))


### Chores

* **api:** update composite API spec ([ac247ff](https://github.com/cloudflare/cloudflare-python/commit/ac247fffebbcbfff58ef6862247f2b72ff74c6f8))
* **api:** update composite API spec ([3186483](https://github.com/cloudflare/cloudflare-python/commit/318648332d360503d6e0e1738d4ca87202535a96))
* **api:** update composite API spec ([7464286](https://github.com/cloudflare/cloudflare-python/commit/7464286b3544db010af78b14ebec2e02609ddc75))
* **api:** update composite API spec ([064478c](https://github.com/cloudflare/cloudflare-python/commit/064478cd35708cb0eb78b35abc5f4636bd514037))
* **api:** update composite API spec ([a59d1b6](https://github.com/cloudflare/cloudflare-python/commit/a59d1b68755b777fc8a17018cb062d1a33db723a))
* **api:** update composite API spec ([f5ca4cc](https://github.com/cloudflare/cloudflare-python/commit/f5ca4ccc70428b1e7614420defbde2a463091456))
* **api:** update composite API spec ([622f384](https://github.com/cloudflare/cloudflare-python/commit/622f38474dcf9bd9e433189ac0e168c66dbebd7d))
* **api:** update composite API spec ([64bc54f](https://github.com/cloudflare/cloudflare-python/commit/64bc54ff61983ffa129109dd013cf5bedd25d29d))
* **api:** update composite API spec ([cb197df](https://github.com/cloudflare/cloudflare-python/commit/cb197dfe45ce225e6d441680e11260cb4c39d24f))
* **api:** update composite API spec ([cd4f924](https://github.com/cloudflare/cloudflare-python/commit/cd4f924e73268c20f1af894dfd4707c8b18c955f))
* **api:** update composite API spec ([4e9deac](https://github.com/cloudflare/cloudflare-python/commit/4e9deac8efe75518e113cc4d681929c5a1ae1d7d))
* **api:** update composite API spec ([fee9ce0](https://github.com/cloudflare/cloudflare-python/commit/fee9ce09141ea3c314dfb6d746472e316e3b515d))
* **api:** update composite API spec ([315c8eb](https://github.com/cloudflare/cloudflare-python/commit/315c8eb85a3f17299cd81a16ac092e4c85a012a5))
* **api:** update composite API spec ([bb4311f](https://github.com/cloudflare/cloudflare-python/commit/bb4311fb705edab29746297b91f3478cd179afc8))
* **api:** update composite API spec ([7e1d8b7](https://github.com/cloudflare/cloudflare-python/commit/7e1d8b72aff2b087f5e3a395a445573b74f0a2f7))
* **api:** update composite API spec ([2cc2a3f](https://github.com/cloudflare/cloudflare-python/commit/2cc2a3fad9f2f1e9eeee0683a9cff9d330fd6357))
* **api:** update composite API spec ([2cb9ef9](https://github.com/cloudflare/cloudflare-python/commit/2cb9ef9a29a81faff8fa34ee4e4edbe40f50d507))
* **api:** update composite API spec ([7199aa3](https://github.com/cloudflare/cloudflare-python/commit/7199aa33f07a631aa066df6da6aa25a86bf3aca8))
* **api:** update composite API spec ([46ce19f](https://github.com/cloudflare/cloudflare-python/commit/46ce19f5f170aa5b74c6071569666dd59186e3e9))
* **api:** update composite API spec ([4900594](https://github.com/cloudflare/cloudflare-python/commit/49005943c184ab9f713e664434f05270ca97d619))
* **api:** update composite API spec ([a009bd0](https://github.com/cloudflare/cloudflare-python/commit/a009bd0251a96e2eafee9411bbc669b82dfba342))
* **api:** update composite API spec ([b07f0d6](https://github.com/cloudflare/cloudflare-python/commit/b07f0d6468e1cc1d8b5009b252b21a4d9bb0543d))
* **api:** update composite API spec ([353e11e](https://github.com/cloudflare/cloudflare-python/commit/353e11eba442b1d75b1d42549abb26db9fe9f2c7))
* **api:** update composite API spec ([b7c4b43](https://github.com/cloudflare/cloudflare-python/commit/b7c4b43635c91a1be5852d9542ca29362e80491b))
* **api:** update composite API spec ([b8d1c66](https://github.com/cloudflare/cloudflare-python/commit/b8d1c661b9b34b6db72d65ef82db61494013b3ba))
* **api:** update composite API spec ([93e3971](https://github.com/cloudflare/cloudflare-python/commit/93e39713d9e7d19cb67ec65a6fa9b5c9643d75ed))
* **api:** update composite API spec ([3d5d0e0](https://github.com/cloudflare/cloudflare-python/commit/3d5d0e0407dec974128bcbf09d8c3b789b2dbcf6))
* **api:** update composite API spec ([35670b1](https://github.com/cloudflare/cloudflare-python/commit/35670b1611cee8629a86f7e2795fac262dd3394f))
* **api:** update composite API spec ([5fdf07b](https://github.com/cloudflare/cloudflare-python/commit/5fdf07be01036fb1c08e19f31c05ff995d75e01c))
* **api:** update composite API spec ([2319591](https://github.com/cloudflare/cloudflare-python/commit/231959124ce85fd5cb6a2f639042459189f3626b))
* **api:** update composite API spec ([3b70a95](https://github.com/cloudflare/cloudflare-python/commit/3b70a9544c85c451ba277875e1f6cb6188d866f3))
* **api:** update composite API spec ([ea49058](https://github.com/cloudflare/cloudflare-python/commit/ea49058cc07ca8549b0b0e437af0bf80a92fc65a))
* **api:** update composite API spec ([6734e9b](https://github.com/cloudflare/cloudflare-python/commit/6734e9ba95be37e8abf917e8e034a4fe8403017f))
* **api:** update composite API spec ([5f5caef](https://github.com/cloudflare/cloudflare-python/commit/5f5caef1eed2c6a2c5cd80b77c2c7e01e19e57fc))
* **api:** update composite API spec ([5d19869](https://github.com/cloudflare/cloudflare-python/commit/5d1986964f7344c79285a47c9bd4ae6928805ed5))
* **api:** update composite API spec ([541c9fb](https://github.com/cloudflare/cloudflare-python/commit/541c9fb7974741641bcef74ba99f7b54f142e0b1))
* **api:** update composite API spec ([ba5b5fc](https://github.com/cloudflare/cloudflare-python/commit/ba5b5fcd1936b0cadb189ba4c2c674dc6ec956e3))
* **api:** update composite API spec ([7baa51c](https://github.com/cloudflare/cloudflare-python/commit/7baa51ccf00f66c8871156e674214504984dc066))
* **api:** update composite API spec ([53d59f4](https://github.com/cloudflare/cloudflare-python/commit/53d59f439ba34edaf2628d89c2a1d7363693a38d))
* **api:** update composite API spec ([25d603f](https://github.com/cloudflare/cloudflare-python/commit/25d603f8cb36473107bb739c1217a10becd82302))
* **api:** update composite API spec ([9fd6645](https://github.com/cloudflare/cloudflare-python/commit/9fd66450b998a9b0bea72a8f3ac9fdcb26edd88a))
* **api:** update composite API spec ([19d1d96](https://github.com/cloudflare/cloudflare-python/commit/19d1d96bae88d6af838574218fc09b541a94da81))
* **api:** update composite API spec ([f9160a4](https://github.com/cloudflare/cloudflare-python/commit/f9160a47dec2c31bc7f591bc73bc9dff420d10f4))
* **api:** update composite API spec ([c686a51](https://github.com/cloudflare/cloudflare-python/commit/c686a511cc457bb92c7ba7e0c0593fe871b56744))
* **api:** update composite API spec ([412ed20](https://github.com/cloudflare/cloudflare-python/commit/412ed203f44de2e2c45996bb9382f6278f05fa55))
* **api:** update composite API spec ([119f889](https://github.com/cloudflare/cloudflare-python/commit/119f889eaf1bc73df1a6cb1e96c44aae289f5a7c))
* **api:** update composite API spec ([65382bf](https://github.com/cloudflare/cloudflare-python/commit/65382bf11bc785cb991cb57cbee6f0f6f155ad54))
* **api:** update composite API spec ([b3a3cf6](https://github.com/cloudflare/cloudflare-python/commit/b3a3cf678acf7db925104ecd3ecc2b68767b5081))
* **api:** update composite API spec ([c78ef5e](https://github.com/cloudflare/cloudflare-python/commit/c78ef5e952f7f7db180e312d7175188810ff6a95))
* **api:** update composite API spec ([71a023c](https://github.com/cloudflare/cloudflare-python/commit/71a023cf63064090e9aa27e08ac3b0ad6f468cde))
* **api:** update composite API spec ([3805db3](https://github.com/cloudflare/cloudflare-python/commit/3805db3abfdb8cb11dd13483f670f3264eec8360))
* **api:** update composite API spec ([c882cba](https://github.com/cloudflare/cloudflare-python/commit/c882cba3a638fd663068ba565bfd3bba9dd90aaf))
* **api:** update composite API spec ([06eb2a6](https://github.com/cloudflare/cloudflare-python/commit/06eb2a664feed8661b93b893a1cd00e268688a54))

## 4.3.1 (2025-06-16)

Full Changelog: [v4.3.0...v4.3.1](https://github.com/cloudflare/cloudflare-python/compare/v4.3.0...v4.3.1)
Expand Down
40 changes: 38 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Cloudflare Python API library

[![PyPI version](https://img.shields.io/pypi/v/cloudflare.svg)](https://pypi.org/project/cloudflare/)
<!-- prettier-ignore -->
[![PyPI version](https://img.shields.io/pypi/v/cloudflare.svg?label=pypi%20(stable))](https://pypi.org/project/cloudflare/)

The Cloudflare Python library provides convenient access to the Cloudflare REST API from any Python 3.8+
application. The library includes type definitions for all request params and response fields,
Expand Down Expand Up @@ -70,6 +71,41 @@ asyncio.run(main())

Functionality between the synchronous and asynchronous clients is otherwise identical.

### With aiohttp

By default, the async client uses `httpx` for HTTP requests. However, for improved concurrency performance you may also use `aiohttp` as the HTTP backend.

You can enable this by installing `aiohttp`:

```sh
# install from PyPI
pip install cloudflare[aiohttp]
```

Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:

```python
import asyncio
from cloudflare import DefaultAioHttpClient
from cloudflare import AsyncCloudflare


async def main() -> None:
async with AsyncCloudflare(
api_token="Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY",
http_client=DefaultAioHttpClient(),
) as client:
zone = await client.zones.create(
account={"id": "023e105f4ecef8ad9ca31a8372d0c353"},
name="example.com",
type="full",
)
print(zone.id)


asyncio.run(main())
```

## Using types

Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typing.html#typing.TypedDict). Responses are [Pydantic models](https://docs.pydantic.dev) which also provide helper methods for things like:
Expand Down Expand Up @@ -244,7 +280,7 @@ client.with_options(max_retries=5).zones.get(
### Timeouts

By default requests time out after 1 minute. You can configure this with a `timeout` option,
which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/#fine-tuning-the-configuration) object:
which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/timeouts/#fine-tuning-the-configuration) object:

```python
from cloudflare import Cloudflare
Expand Down
Loading
Loading