diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
deleted file mode 100644
index 8ea34be96f..0000000000
--- a/.devcontainer/Dockerfile
+++ /dev/null
@@ -1,23 +0,0 @@
-# syntax=docker/dockerfile:1
-FROM debian:bookworm-slim AS stainless
-
-RUN apt-get update && apt-get install -y \
- nodejs \
- npm \
- yarnpkg \
- && apt-get clean autoclean
-
-# Ensure UTF-8 encoding
-ENV LANG=C.UTF-8
-ENV LC_ALL=C.UTF-8
-
-# Yarn
-RUN ln -sf /usr/bin/yarnpkg /usr/bin/yarn
-
-WORKDIR /workspace
-
-COPY package.json yarn.lock /workspace/
-
-RUN yarn install
-
-COPY . /workspace
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index d55fc4d671..763462fada 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -1,20 +1,17 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/debian
{
- "name": "Debian",
- "build": {
- "dockerfile": "Dockerfile"
+ "name": "Development",
+ "image": "mcr.microsoft.com/devcontainers/typescript-node:latest",
+ "features": {
+ "ghcr.io/devcontainers/features/node:1": {}
+ },
+ "postCreateCommand": "yarn install",
+ "customizations": {
+ "vscode": {
+ "extensions": [
+ "esbenp.prettier-vscode"
+ ]
+ }
}
-
- // Features to add to the dev container. More info: https://containers.dev/features.
- // "features": {},
-
- // Use 'forwardPorts' to make a list of ports inside the container available locally.
- // "forwardPorts": [],
-
- // Configure tool-specific properties.
- // "customizations": {},
-
- // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
- // "remoteUser": "root"
}
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
new file mode 100644
index 0000000000..a7b23ca1de
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -0,0 +1,60 @@
+name: Bug report
+description: Report an issue or bug with this library
+labels: ['bug']
+body:
+ - type: checkboxes
+ id: non_api
+ attributes:
+ label: Confirm this is a Typescript library issue and not an underlying Cloudflare API issue
+ description: Issues with the underlying Cloudflare API should be reported via [Cloudflare Support](https://developers.cloudflare.com/support/contacting-cloudflare-support)
+ options:
+ - label: This is an issue with the Typescript library
+ required: true
+ - type: textarea
+ id: what-happened
+ attributes:
+ label: Describe the bug
+ description: A clear and concise description of what the bug is, and any additional context.
+ placeholder: Tell us what you see!
+ validations:
+ required: true
+ - type: textarea
+ id: repro-steps
+ attributes:
+ label: To Reproduce
+ description: Steps to reproduce the behavior.
+ placeholder: |
+ 1. Fetch a '...'
+ 2. Update the '....'
+ 3. See error
+ validations:
+ required: true
+ - type: textarea
+ id: code-snippets
+ attributes:
+ label: Code snippets
+ description: If applicable, add code snippets to help explain your problem.
+ render: Typescript
+ validations:
+ required: false
+ - type: input
+ id: os
+ attributes:
+ label: OS
+ placeholder: macOS
+ validations:
+ required: true
+ - type: input
+ id: language-version
+ attributes:
+ label: Runtime version
+ placeholder: Typescript 5.7.3
+ validations:
+ required: true
+ - type: input
+ id: lib-version
+ attributes:
+ label: Library version
+ placeholder: v4.0.0
+ validations:
+ required: true
diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml
new file mode 100644
index 0000000000..1aa271f3a1
--- /dev/null
+++ b/.github/workflows/stale.yml
@@ -0,0 +1,22 @@
+name: Mark stale issues and pull requests
+
+on:
+ schedule:
+ - cron: '38 16 * * *'
+
+jobs:
+ stale:
+
+ runs-on: ubuntu-latest
+ permissions:
+ issues: write
+ pull-requests: write
+
+ steps:
+ - uses: actions/stale@v5
+ with:
+ repo-token: ${{ secrets.GITHUB_TOKEN }}
+ stale-issue-message: "This issue hasn't been updated in a while. If it's still reproducing, please comment to let us know. Thank you!"
+ stale-pr-message: "This pull request hasn't been updated in a while, and is being marked as stale. Thanks!"
+ stale-issue-label: 'no-issue-activity'
+ stale-pr-label: 'no-pr-activity'
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 411256bcab..34a3350a9a 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "4.1.0"
+ ".": "4.2.0"
}
diff --git a/.stats.yml b/.stats.yml
index c3ce53a2b8..025f3a2867 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,2 +1,2 @@
-configured_endpoints: 1525
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-4c85e60ad7ca96a7ddadf88e1e3c7b62fb791d39d435bedfe6caac2c27081a48.yml
+configured_endpoints: 1655
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-0ed9f898b31619623e50d660d04beca50e44987bfd3eb3a6ff98d3bca2a9c569.yml
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3432b87852..4d9a93117b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,105 @@
# Changelog
+## 4.2.0 (2025-03-18)
+
+Full Changelog: [v4.1.0...v4.2.0](https://github.com/cloudflare/cloudflare-typescript/compare/v4.1.0...v4.2.0)
+
+### Features
+
+* add SKIP_BREW env var to ./scripts/bootstrap ([#2480](https://github.com/cloudflare/cloudflare-typescript/issues/2480)) ([9cf8f0a](https://github.com/cloudflare/cloudflare-typescript/commit/9cf8f0ab7504e873ad337bcd866760114e8b499c))
+* **ai_gateway:** add urls support ([#2517](https://github.com/cloudflare/cloudflare-typescript/issues/2517)) ([a2624e6](https://github.com/cloudflare/cloudflare-typescript/commit/a2624e6159639863c9da66ee6243bddbcb529243))
+* **api:** api update ([#2436](https://github.com/cloudflare/cloudflare-typescript/issues/2436)) ([e6f6e17](https://github.com/cloudflare/cloudflare-typescript/commit/e6f6e179b0feeeaf76dc57967cca4cb6755450ef))
+* **api:** api update ([#2439](https://github.com/cloudflare/cloudflare-typescript/issues/2439)) ([c03fa42](https://github.com/cloudflare/cloudflare-typescript/commit/c03fa42f1cb74d3634981452d5d642db4ebafade))
+* **api:** api update ([#2441](https://github.com/cloudflare/cloudflare-typescript/issues/2441)) ([9c819a8](https://github.com/cloudflare/cloudflare-typescript/commit/9c819a8bc4c680a6ae32e075a64638c13e769e5d))
+* **api:** api update ([#2444](https://github.com/cloudflare/cloudflare-typescript/issues/2444)) ([cd03eaa](https://github.com/cloudflare/cloudflare-typescript/commit/cd03eaa3cd3f12e3c948d6a740ec4ea0f07ebb70))
+* **api:** api update ([#2445](https://github.com/cloudflare/cloudflare-typescript/issues/2445)) ([eb4e5b2](https://github.com/cloudflare/cloudflare-typescript/commit/eb4e5b2907df1d38761e6a9bd9859fd5c691cd84))
+* **api:** api update ([#2453](https://github.com/cloudflare/cloudflare-typescript/issues/2453)) ([4c8540b](https://github.com/cloudflare/cloudflare-typescript/commit/4c8540b873dc28750cf32d4877e83112b40b829c))
+* **api:** api update ([#2457](https://github.com/cloudflare/cloudflare-typescript/issues/2457)) ([7f00303](https://github.com/cloudflare/cloudflare-typescript/commit/7f00303615633fd3b56666f22bc90cfd2a4fbf18))
+* **api:** api update ([#2458](https://github.com/cloudflare/cloudflare-typescript/issues/2458)) ([5eafe54](https://github.com/cloudflare/cloudflare-typescript/commit/5eafe54447365ff0fd57b6cb5a0e85f856d3291b))
+* **api:** api update ([#2459](https://github.com/cloudflare/cloudflare-typescript/issues/2459)) ([27e4048](https://github.com/cloudflare/cloudflare-typescript/commit/27e404887a844a366b79c1c5d594c1d60082b7a5))
+* **api:** api update ([#2460](https://github.com/cloudflare/cloudflare-typescript/issues/2460)) ([cc704ac](https://github.com/cloudflare/cloudflare-typescript/commit/cc704ac315f4488091331590e00e6989e10aa832))
+* **api:** api update ([#2463](https://github.com/cloudflare/cloudflare-typescript/issues/2463)) ([3fb110d](https://github.com/cloudflare/cloudflare-typescript/commit/3fb110d400eece17cc8396165869b735d825fd81))
+* **api:** api update ([#2465](https://github.com/cloudflare/cloudflare-typescript/issues/2465)) ([c09dcf8](https://github.com/cloudflare/cloudflare-typescript/commit/c09dcf866c2d99078df0c2b980d07a44f60f74c1))
+* **api:** api update ([#2468](https://github.com/cloudflare/cloudflare-typescript/issues/2468)) ([eb196c4](https://github.com/cloudflare/cloudflare-typescript/commit/eb196c4fc24a25a779f667aba540e148971bd6da))
+* **api:** api update ([#2469](https://github.com/cloudflare/cloudflare-typescript/issues/2469)) ([50486e4](https://github.com/cloudflare/cloudflare-typescript/commit/50486e47cefef228ade31172409b1d485565935d))
+* **api:** api update ([#2471](https://github.com/cloudflare/cloudflare-typescript/issues/2471)) ([33322e9](https://github.com/cloudflare/cloudflare-typescript/commit/33322e909a584ac62e5f0f6902e23caaf7c14c66))
+* **api:** api update ([#2473](https://github.com/cloudflare/cloudflare-typescript/issues/2473)) ([8e3df71](https://github.com/cloudflare/cloudflare-typescript/commit/8e3df714c501ba08d2c2af94486371c8f5de1b23))
+* **api:** api update ([#2474](https://github.com/cloudflare/cloudflare-typescript/issues/2474)) ([87c659a](https://github.com/cloudflare/cloudflare-typescript/commit/87c659ae7ce5d4bcda157fbc3443082d38ad7ff4))
+* **api:** api update ([#2475](https://github.com/cloudflare/cloudflare-typescript/issues/2475)) ([6e65552](https://github.com/cloudflare/cloudflare-typescript/commit/6e65552a866127bf642de3c9f8a1f09ae4e0a20c))
+* **api:** api update ([#2476](https://github.com/cloudflare/cloudflare-typescript/issues/2476)) ([49a48d8](https://github.com/cloudflare/cloudflare-typescript/commit/49a48d840cdacdab8bf7387717c442e8d40690f4))
+* **api:** api update ([#2478](https://github.com/cloudflare/cloudflare-typescript/issues/2478)) ([9402eb1](https://github.com/cloudflare/cloudflare-typescript/commit/9402eb1ad45133726350c321f67aadd7579ff542))
+* **api:** api update ([#2479](https://github.com/cloudflare/cloudflare-typescript/issues/2479)) ([e78893a](https://github.com/cloudflare/cloudflare-typescript/commit/e78893a6dc24cdd25a88a4c724098bf42ab230bc))
+* **api:** api update ([#2491](https://github.com/cloudflare/cloudflare-typescript/issues/2491)) ([95331f0](https://github.com/cloudflare/cloudflare-typescript/commit/95331f08397882bb0901e2a4a5a719d595c3c94f))
+* **api:** api update ([#2492](https://github.com/cloudflare/cloudflare-typescript/issues/2492)) ([9c3ef42](https://github.com/cloudflare/cloudflare-typescript/commit/9c3ef42cba2e269e3130fa866fe29bec3459993d))
+* **api:** api update ([#2493](https://github.com/cloudflare/cloudflare-typescript/issues/2493)) ([0b006c6](https://github.com/cloudflare/cloudflare-typescript/commit/0b006c69ad812ead1e5de5ffe7aaa71a8d07bc58))
+* **api:** api update ([#2494](https://github.com/cloudflare/cloudflare-typescript/issues/2494)) ([91e7a25](https://github.com/cloudflare/cloudflare-typescript/commit/91e7a25722f862073f0ceb49b4f4bf1fafcf77c5))
+* **api:** api update ([#2495](https://github.com/cloudflare/cloudflare-typescript/issues/2495)) ([57c7f54](https://github.com/cloudflare/cloudflare-typescript/commit/57c7f54abe12cb9d4bd45a6de0048bf8ecf851cb))
+* **api:** api update ([#2497](https://github.com/cloudflare/cloudflare-typescript/issues/2497)) ([aefc773](https://github.com/cloudflare/cloudflare-typescript/commit/aefc773875f32aedc0aa53b8efd90aabb4bd905c))
+* **api:** api update ([#2498](https://github.com/cloudflare/cloudflare-typescript/issues/2498)) ([253dc00](https://github.com/cloudflare/cloudflare-typescript/commit/253dc00bcd0ab6053b0f75d9afdd7dccbc83a6f3))
+* **api:** api update ([#2503](https://github.com/cloudflare/cloudflare-typescript/issues/2503)) ([e74872e](https://github.com/cloudflare/cloudflare-typescript/commit/e74872e4494756be241bdc2f489f3f160336a139))
+* **api:** api update ([#2504](https://github.com/cloudflare/cloudflare-typescript/issues/2504)) ([179b4dd](https://github.com/cloudflare/cloudflare-typescript/commit/179b4dda539edf9500592d0b5c90761395773f68))
+* **api:** api update ([#2505](https://github.com/cloudflare/cloudflare-typescript/issues/2505)) ([723a06b](https://github.com/cloudflare/cloudflare-typescript/commit/723a06b66327dcece0708c1f999918d0324753b2))
+* **api:** api update ([#2507](https://github.com/cloudflare/cloudflare-typescript/issues/2507)) ([35e4991](https://github.com/cloudflare/cloudflare-typescript/commit/35e49911548aed2515862e3e846ae7baaa3abe24))
+* **api:** api update ([#2509](https://github.com/cloudflare/cloudflare-typescript/issues/2509)) ([1eda18e](https://github.com/cloudflare/cloudflare-typescript/commit/1eda18e2fc710fa51bda1d26dbab990b4edd2a8b))
+* **api:** api update ([#2510](https://github.com/cloudflare/cloudflare-typescript/issues/2510)) ([699f14f](https://github.com/cloudflare/cloudflare-typescript/commit/699f14f83ddd43765b4da35ec5bf5c0a7b3eeebb))
+* **api:** api update ([#2511](https://github.com/cloudflare/cloudflare-typescript/issues/2511)) ([ebe6695](https://github.com/cloudflare/cloudflare-typescript/commit/ebe669581430fa6b135c884e75957f0608378217))
+* **api:** api update ([#2513](https://github.com/cloudflare/cloudflare-typescript/issues/2513)) ([a5b6b5f](https://github.com/cloudflare/cloudflare-typescript/commit/a5b6b5f59dfc582caca2daa17afe8c4a7c3f6b32))
+* **api:** api update ([#2514](https://github.com/cloudflare/cloudflare-typescript/issues/2514)) ([240e90c](https://github.com/cloudflare/cloudflare-typescript/commit/240e90c47cfd1cfd08e997d6e5677fc75da880f8))
+* **api:** api update ([#2515](https://github.com/cloudflare/cloudflare-typescript/issues/2515)) ([9196753](https://github.com/cloudflare/cloudflare-typescript/commit/9196753afbf77d0ff954e5459a3a952171ce3e2b))
+* **api:** api update ([#2521](https://github.com/cloudflare/cloudflare-typescript/issues/2521)) ([b8f3091](https://github.com/cloudflare/cloudflare-typescript/commit/b8f3091987476ac90d50e3929825df26b5ecceaa))
+* **api:** api update ([#2522](https://github.com/cloudflare/cloudflare-typescript/issues/2522)) ([cb257d1](https://github.com/cloudflare/cloudflare-typescript/commit/cb257d16a0bfb59dff7d0f427cf116b2b9ad1b67))
+* **api:** api update ([#2524](https://github.com/cloudflare/cloudflare-typescript/issues/2524)) ([50f80fb](https://github.com/cloudflare/cloudflare-typescript/commit/50f80fb51c708e54df2e87a8da09337925f56d75))
+* **api:** cloudforce one port scan APIs ([#2464](https://github.com/cloudflare/cloudflare-typescript/issues/2464)) ([f346c6c](https://github.com/cloudflare/cloudflare-typescript/commit/f346c6c966b9f379e2b8db41c0da3ff45b393557))
+* **api:** manual updates ([#2456](https://github.com/cloudflare/cloudflare-typescript/issues/2456)) ([b2d54a0](https://github.com/cloudflare/cloudflare-typescript/commit/b2d54a062e328113b0568b373da1f6fe54ffcb00))
+* **api:** manual updates ([#2487](https://github.com/cloudflare/cloudflare-typescript/issues/2487)) ([e31950a](https://github.com/cloudflare/cloudflare-typescript/commit/e31950a672e7ffabdb41e33b4c760cc05a27252a))
+* **api:** manual updates ([#2501](https://github.com/cloudflare/cloudflare-typescript/issues/2501)) ([e372a1d](https://github.com/cloudflare/cloudflare-typescript/commit/e372a1d0329661963ff69e595875c1a210c2649c))
+* **api:** manual updates ([#2502](https://github.com/cloudflare/cloudflare-typescript/issues/2502)) ([ba01d4d](https://github.com/cloudflare/cloudflare-typescript/commit/ba01d4d3f59f2c710706129cd20d14ae4430a660))
+* **api:** rename browsing_rendering to browser_rendering ([#2452](https://github.com/cloudflare/cloudflare-typescript/issues/2452)) ([3aca731](https://github.com/cloudflare/cloudflare-typescript/commit/3aca731fd0b13f7a0e32ba81be4dea85666b1039))
+* **api:** Update scans and scan results routes ([#2512](https://github.com/cloudflare/cloudflare-typescript/issues/2512)) ([190dd24](https://github.com/cloudflare/cloudflare-typescript/commit/190dd24e45c6933f1d1b58fdbded044962b0f346))
+* **browser_rendering:** move methods to top level ([#2455](https://github.com/cloudflare/cloudflare-typescript/issues/2455)) ([84c530e](https://github.com/cloudflare/cloudflare-typescript/commit/84c530e9b3fef1f99e907302995abd2ebc847961))
+* **browsing_rendering:** add support for subresources ([#2448](https://github.com/cloudflare/cloudflare-typescript/issues/2448)) ([f2c0ffc](https://github.com/cloudflare/cloudflare-typescript/commit/f2c0ffcfc3b35b09cd135cfaa22625777bf40c19))
+* **client:** accept RFC6838 JSON content types ([#2490](https://github.com/cloudflare/cloudflare-typescript/issues/2490)) ([7dd7294](https://github.com/cloudflare/cloudflare-typescript/commit/7dd7294987e3e968eecc711185363711f3ec9a84))
+* **cloudforce_one:** add support for `config` and `scans` ([#2472](https://github.com/cloudflare/cloudflare-typescript/issues/2472)) ([0bb375e](https://github.com/cloudflare/cloudflare-typescript/commit/0bb375ea6746f8f0e64652d7d6f99019655f4214))
+* **cloudforce_one:** fix scans model ([#2481](https://github.com/cloudflare/cloudflare-typescript/issues/2481)) ([34b088c](https://github.com/cloudflare/cloudflare-typescript/commit/34b088caeb1006bcde87aa795479a5331de15caa))
+* **dns_settings:** fix hierarchy ([#2488](https://github.com/cloudflare/cloudflare-typescript/issues/2488)) ([e0a3e08](https://github.com/cloudflare/cloudflare-typescript/commit/e0a3e089df9f35beb8951fbed3d73ce491bb54f6))
+* **dns:** split account and zone DNS settings ([#2483](https://github.com/cloudflare/cloudflare-typescript/issues/2483)) ([f28ac46](https://github.com/cloudflare/cloudflare-typescript/commit/f28ac463a899793cb9212e251cd54f86c9385863))
+* **internal:** group browser rendering ([#2484](https://github.com/cloudflare/cloudflare-typescript/issues/2484)) ([7161eee](https://github.com/cloudflare/cloudflare-typescript/commit/7161eeeb72f5e911988c4cf44b46d1eec29df859))
+* **internal:** support `documentation_url` and `source.pointer` in error responses ([#2466](https://github.com/cloudflare/cloudflare-typescript/issues/2466)) ([98646d8](https://github.com/cloudflare/cloudflare-typescript/commit/98646d85c114226076d286edec2e623d27c9b711))
+* **magic_cloud_networking:** add endpoint mappings ([#2525](https://github.com/cloudflare/cloudflare-typescript/issues/2525)) ([1dc6add](https://github.com/cloudflare/cloudflare-typescript/commit/1dc6add4244c7913c8541a4c0df6f305a6990fae))
+* **radar:** add compromised credential endpoints ([#2527](https://github.com/cloudflare/cloudflare-typescript/issues/2527)) ([231c959](https://github.com/cloudflare/cloudflare-typescript/commit/231c959a2720033d02f907eb619c473ed2bce3b6))
+* **radar:** add DNS endpoint ([#2451](https://github.com/cloudflare/cloudflare-typescript/issues/2451)) ([e3be640](https://github.com/cloudflare/cloudflare-typescript/commit/e3be6407634d707f287ed50d0ec4d64690a15dff))
+* **threat_events:** fix create endpoint ([#2506](https://github.com/cloudflare/cloudflare-typescript/issues/2506)) ([4ca4c2c](https://github.com/cloudflare/cloudflare-typescript/commit/4ca4c2c946f3aa40763a204d695e8b93678c0444))
+* **threat_events:** shuffle endpoints from POST => PATCH ([#2500](https://github.com/cloudflare/cloudflare-typescript/issues/2500)) ([967ae2d](https://github.com/cloudflare/cloudflare-typescript/commit/967ae2dde0bb1429096bc54ec3e7858ecb557c04))
+* **vpc_flows:** add token support ([#2449](https://github.com/cloudflare/cloudflare-typescript/issues/2449)) ([7b27715](https://github.com/cloudflare/cloudflare-typescript/commit/7b277153296df46a4eeaf351207464b6056b706a))
+* **waiting_rooms:** add account level list API ([#2499](https://github.com/cloudflare/cloudflare-typescript/issues/2499)) ([efc07f1](https://github.com/cloudflare/cloudflare-typescript/commit/efc07f1db0b197021ace2aadd9ebf9be807dbedc))
+* **workers:** add in secrets endpoints ([#2518](https://github.com/cloudflare/cloudflare-typescript/issues/2518)) ([467558f](https://github.com/cloudflare/cloudflare-typescript/commit/467558f733c8da99d74c025e0e8eca6018fddb3b))
+* **workflows:** add `bulk` support ([#2526](https://github.com/cloudflare/cloudflare-typescript/issues/2526)) ([07e8813](https://github.com/cloudflare/cloudflare-typescript/commit/07e8813596908e63de8862a913ac8b955e6cd080))
+
+
+### Bug Fixes
+
+* **api:** missing union discriminator naming ([#2523](https://github.com/cloudflare/cloudflare-typescript/issues/2523)) ([74cb5e8](https://github.com/cloudflare/cloudflare-typescript/commit/74cb5e8a3cb96bc62bb47a28eeae37523aae2fa7))
+* **exports:** ensure resource imports don't require /index ([#2508](https://github.com/cloudflare/cloudflare-typescript/issues/2508)) ([096c3c7](https://github.com/cloudflare/cloudflare-typescript/commit/096c3c765423241480b91df4d4b568bd283afc0b))
+* **internal:** remove port scans pending path fixes ([#2467](https://github.com/cloudflare/cloudflare-typescript/issues/2467)) ([0567d83](https://github.com/cloudflare/cloudflare-typescript/commit/0567d83635e03cff24d6c1d73d50deec24140f92))
+* **r2_custom_domain:** update path placeholders to de-duplicate internal values ([#2482](https://github.com/cloudflare/cloudflare-typescript/issues/2482)) ([18312d8](https://github.com/cloudflare/cloudflare-typescript/commit/18312d8168a3867f5b4438d7bfa6462d8ccb171f))
+* **workers_for_platforms:** remove cyclic import due to model ([#2519](https://github.com/cloudflare/cloudflare-typescript/issues/2519)) ([9f79e97](https://github.com/cloudflare/cloudflare-typescript/commit/9f79e972bb6858ac87e0eadc246dc76e0ef9e61e))
+
+
+### Chores
+
+* **api:** deprecate resources ([#2462](https://github.com/cloudflare/cloudflare-typescript/issues/2462)) ([df6a965](https://github.com/cloudflare/cloudflare-typescript/commit/df6a965a4aece6cb792feef6a60572899482ba8a))
+* **internal:** codegen related update ([#2440](https://github.com/cloudflare/cloudflare-typescript/issues/2440)) ([a76c8c2](https://github.com/cloudflare/cloudflare-typescript/commit/a76c8c29d7363fdd571389e4259dd6a38bf1c5f0))
+* **internal:** codegen related update ([#2470](https://github.com/cloudflare/cloudflare-typescript/issues/2470)) ([b74f3d1](https://github.com/cloudflare/cloudflare-typescript/commit/b74f3d17fc0a75e7f310670e42543e61dc0dbbd7))
+* **internal:** codegen related update ([#2477](https://github.com/cloudflare/cloudflare-typescript/issues/2477)) ([7c4cae5](https://github.com/cloudflare/cloudflare-typescript/commit/7c4cae5f7e0826e4ed214c72dead50f95799bc81))
+* **internal:** codegen related update ([#2485](https://github.com/cloudflare/cloudflare-typescript/issues/2485)) ([267750e](https://github.com/cloudflare/cloudflare-typescript/commit/267750e280495428e92dc65023cc5ce985a8b3ca))
+* **internal:** codegen related update ([#2486](https://github.com/cloudflare/cloudflare-typescript/issues/2486)) ([c398a7d](https://github.com/cloudflare/cloudflare-typescript/commit/c398a7d81f0310e8459efeb62e00fc425f718fb9))
+* **internal:** mark VPC and PDF as initialisms ([#2450](https://github.com/cloudflare/cloudflare-typescript/issues/2450)) ([4ad8f8c](https://github.com/cloudflare/cloudflare-typescript/commit/4ad8f8c8bd07b4318c86ffe680b64ca5d58e21b0))
+
+
+### Documentation
+
+* update URLs from stainlessapi.com to stainless.com ([#2446](https://github.com/cloudflare/cloudflare-typescript/issues/2446)) ([fe99c42](https://github.com/cloudflare/cloudflare-typescript/commit/fe99c42e49264d5e1e1fdbdcc5004bae83ad23b7))
+
## 4.1.0 (2025-02-11)
Full Changelog: [v4.0.0...v4.1.0](https://github.com/cloudflare/cloudflare-typescript/compare/v4.0.0...v4.1.0)
diff --git a/README.md b/README.md
index 0bae1d8d3e..a81507ee54 100644
--- a/README.md
+++ b/README.md
@@ -65,6 +65,56 @@ main();
Documentation for each method, request param, and response field are available in docstrings and will appear on hover in most modern editors.
+## File uploads
+
+Request parameters that correspond to file uploads can be passed in many different forms:
+
+- `File` (or an object with the same structure)
+- a `fetch` `Response` (or an object with the same structure)
+- an `fs.ReadStream`
+- the return value of our `toFile` helper
+
+```ts
+import fs from 'fs';
+import fetch from 'node-fetch';
+import Cloudflare, { toFile } from 'cloudflare';
+
+const client = new Cloudflare();
+
+// If you have access to Node `fs` we recommend using `fs.createReadStream()`:
+await client.apiGateway.userSchemas.create({
+ zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
+ file: fs.createReadStream('/path/to/file'),
+ kind: 'openapi_v3',
+});
+
+// Or if you have the web `File` API you can pass a `File` instance:
+await client.apiGateway.userSchemas.create({
+ zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
+ file: new File(['my bytes'], 'file'),
+ kind: 'openapi_v3',
+});
+
+// You can also pass a `fetch` `Response`:
+await client.apiGateway.userSchemas.create({
+ zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
+ file: await fetch('https://somesite/file'),
+ kind: 'openapi_v3',
+});
+
+// Finally, if none of the above are convenient, you can use our `toFile` helper:
+await client.apiGateway.userSchemas.create({
+ zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
+ file: await toFile(Buffer.from('my bytes'), 'file'),
+ kind: 'openapi_v3',
+});
+await client.apiGateway.userSchemas.create({
+ zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
+ file: await toFile(new Uint8Array([0, 1, 2]), 'file'),
+ kind: 'openapi_v3',
+});
+```
+
## Handling errors
When the library is unable to connect to the API,
@@ -335,6 +385,12 @@ Note that React Native is not supported at this time.
If you are interested in other runtime environments, please open or upvote an issue on GitHub.
+## Maintenance
+
+This SDK is actively maintained, however, many issues are tracked outside of GitHub on internal Cloudflare systems. Members of the community are welcome to join and discuss your issues during our twice monthly triage meetings. For urgent issues, please contact [Cloudflare support](https://www.support.cloudflare.com/s/?language=en_US).
+
+* [Community triage meeting](https://calendar.google.com/calendar/embed?src=c_dbf6ce250643f2e60f806d28f3fc09a9de24cbe0ab3ffb699838303d2adfc9e4%40group.calendar.google.com&ctz=America%2FLos_Angeles)
+
## Contributing
See [the contributing documentation](./CONTRIBUTING.md).
diff --git a/api.md b/api.md
index 43bf0818d0..f45e2c74fc 100644
--- a/api.md
+++ b/api.md
@@ -998,31 +998,48 @@ Methods:
Types:
- DNSSetting
-- SettingEditResponse
-- SettingGetResponse
+
+### Zone
+
+Types:
+
+- ZoneEditResponse
+- ZoneGetResponse
+
+Methods:
+
+- client.dns.settings.zone.edit({ ...params }) -> ZoneEditResponse
+- client.dns.settings.zone.get({ ...params }) -> ZoneGetResponse
+
+### Account
+
+Types:
+
+- AccountEditResponse
+- AccountGetResponse
Methods:
-- client.dns.settings.edit({ ...params }) -> SettingEditResponse
-- client.dns.settings.get({ ...params }) -> SettingGetResponse
+- client.dns.settings.account.edit({ ...params }) -> AccountEditResponse
+- client.dns.settings.account.get({ ...params }) -> AccountGetResponse
-### Views
+#### Views
Types:
-- ViewCreateResponse
-- ViewListResponse
-- ViewDeleteResponse
-- ViewEditResponse
-- ViewGetResponse
+- ViewCreateResponse
+- ViewListResponse
+- ViewDeleteResponse
+- ViewEditResponse
+- ViewGetResponse
Methods:
-- client.dns.settings.views.create({ ...params }) -> ViewCreateResponse
-- client.dns.settings.views.list({ ...params }) -> ViewListResponsesV4PagePaginationArray
-- client.dns.settings.views.delete(viewId, { ...params }) -> ViewDeleteResponse
-- client.dns.settings.views.edit(viewId, { ...params }) -> ViewEditResponse
-- client.dns.settings.views.get(viewId, { ...params }) -> ViewGetResponse
+- client.dns.settings.account.views.create({ ...params }) -> ViewCreateResponse
+- client.dns.settings.account.views.list({ ...params }) -> ViewListResponsesV4PagePaginationArray
+- client.dns.settings.account.views.delete(viewId, { ...params }) -> ViewDeleteResponse
+- client.dns.settings.account.views.edit(viewId, { ...params }) -> ViewEditResponse
+- client.dns.settings.account.views.get(viewId, { ...params }) -> ViewGetResponse
## Analytics
@@ -1483,11 +1500,11 @@ Types:
Methods:
-- client.firewall.accessRules.create({ ...params }) -> AccessRuleCreateResponse
-- client.firewall.accessRules.list({ ...params }) -> AccessRuleListResponsesV4PagePaginationArray
-- client.firewall.accessRules.delete(ruleId, { ...params }) -> AccessRuleDeleteResponse | null
-- client.firewall.accessRules.edit(ruleId, { ...params }) -> AccessRuleEditResponse
-- client.firewall.accessRules.get(ruleId, { ...params }) -> AccessRuleGetResponse
+- client.firewall.accessRules.create({ ...params }) -> AccessRuleCreateResponse
+- client.firewall.accessRules.list({ ...params }) -> AccessRuleListResponsesV4PagePaginationArray
+- client.firewall.accessRules.delete(ruleId, { ...params }) -> AccessRuleDeleteResponse | null
+- client.firewall.accessRules.edit(ruleId, { ...params }) -> AccessRuleEditResponse
+- client.firewall.accessRules.get(ruleId, { ...params }) -> AccessRuleGetResponse
## UARules
@@ -1629,13 +1646,13 @@ Types:
Methods:
-- client.logpush.datasets.fields.get(datasetId, { ...params }) -> FieldGetResponse
+- client.logpush.datasets.fields.get(datasetId, { ...params }) -> FieldGetResponse
### Jobs
Methods:
-- client.logpush.datasets.jobs.get(datasetId, { ...params }) -> LogpushJobsSinglePage
+- client.logpush.datasets.jobs.get(datasetId, { ...params }) -> LogpushJobsSinglePage
## Edge
@@ -1658,11 +1675,11 @@ Types:
Methods:
-- client.logpush.jobs.create({ ...params }) -> LogpushJob | null
-- client.logpush.jobs.update(jobId, { ...params }) -> LogpushJob | null
-- client.logpush.jobs.list({ ...params }) -> LogpushJobsSinglePage
-- client.logpush.jobs.delete(jobId, { ...params }) -> JobDeleteResponse
-- client.logpush.jobs.get(jobId, { ...params }) -> LogpushJob | null
+- client.logpush.jobs.create({ ...params }) -> LogpushJob | null
+- client.logpush.jobs.update(jobId, { ...params }) -> LogpushJob | null
+- client.logpush.jobs.list({ ...params }) -> LogpushJobsSinglePage
+- client.logpush.jobs.delete(jobId, { ...params }) -> JobDeleteResponse
+- client.logpush.jobs.get(jobId, { ...params }) -> LogpushJob | null
## Ownership
@@ -1673,8 +1690,8 @@ Types:
Methods:
-- client.logpush.ownership.create({ ...params }) -> OwnershipCreateResponse | null
-- client.logpush.ownership.validate({ ...params }) -> OwnershipValidation | null
+- client.logpush.ownership.create({ ...params }) -> OwnershipCreateResponse | null
+- client.logpush.ownership.validate({ ...params }) -> OwnershipValidation | null
## Validate
@@ -1686,9 +1703,9 @@ Types:
Methods:
-- client.logpush.validate.destination({ ...params }) -> ValidateDestinationResponse | null
-- client.logpush.validate.destinationExists({ ...params }) -> ValidateDestinationExistsResponse | null
-- client.logpush.validate.origin({ ...params }) -> ValidateOriginResponse | null
+- client.logpush.validate.destination({ ...params }) -> ValidateDestinationResponse | null
+- client.logpush.validate.destinationExists({ ...params }) -> ValidateDestinationExistsResponse | null
+- client.logpush.validate.origin({ ...params }) -> ValidateOriginResponse | null
# Logs
@@ -1858,7 +1875,7 @@ Methods:
- client.waitingRooms.create({ ...params }) -> WaitingRoom
- client.waitingRooms.update(waitingRoomId, { ...params }) -> WaitingRoom
-- client.waitingRooms.list({ ...params }) -> WaitingRoomsV4PagePaginationArray
+- client.waitingRooms.list({ ...params }) -> WaitingRoomsV4PagePaginationArray
- client.waitingRooms.delete(waitingRoomId, { ...params }) -> WaitingRoomDeleteResponse
- client.waitingRooms.edit(waitingRoomId, { ...params }) -> WaitingRoom
- client.waitingRooms.get(waitingRoomId, { ...params }) -> WaitingRoom
@@ -2134,6 +2151,22 @@ Methods:
- client.workers.scripts.versions.list(scriptName, { ...params }) -> VersionListResponsesV4PagePagination
- client.workers.scripts.versions.get(scriptName, versionId, { ...params }) -> VersionGetResponse
+### Secrets
+
+Types:
+
+- SecretUpdateResponse
+- SecretListResponse
+- SecretDeleteResponse
+- SecretGetResponse
+
+Methods:
+
+- client.workers.scripts.secrets.update(scriptName, { ...params }) -> SecretUpdateResponse
+- client.workers.scripts.secrets.list(scriptName, { ...params }) -> SecretListResponsesSinglePage
+- client.workers.scripts.secrets.delete(scriptName, secretName, { ...params }) -> SecretDeleteResponse | null
+- client.workers.scripts.secrets.get(scriptName, secretName, { ...params }) -> SecretGetResponse
+
## AccountSettings
Types:
@@ -2539,11 +2572,11 @@ Types:
Methods:
-- client.rulesets.create({ ...params }) -> RulesetCreateResponse
-- client.rulesets.update(rulesetId, { ...params }) -> RulesetUpdateResponse
-- client.rulesets.list({ ...params }) -> RulesetListResponsesCursorPagination
-- client.rulesets.delete(rulesetId, { ...params }) -> void
-- client.rulesets.get(rulesetId, { ...params }) -> RulesetGetResponse
+- client.rulesets.create({ ...params }) -> RulesetCreateResponse
+- client.rulesets.update(rulesetId, { ...params }) -> RulesetUpdateResponse
+- client.rulesets.list({ ...params }) -> RulesetListResponsesCursorPagination
+- client.rulesets.delete(rulesetId, { ...params }) -> void
+- client.rulesets.get(rulesetId, { ...params }) -> RulesetGetResponse
## Phases
@@ -2554,8 +2587,8 @@ Types:
Methods:
-- client.rulesets.phases.update(rulesetPhase, { ...params }) -> PhaseUpdateResponse
-- client.rulesets.phases.get(rulesetPhase, { ...params }) -> PhaseGetResponse
+- client.rulesets.phases.update(rulesetPhase, { ...params }) -> PhaseUpdateResponse
+- client.rulesets.phases.get(rulesetPhase, { ...params }) -> PhaseGetResponse
### Versions
@@ -2566,8 +2599,8 @@ Types:
Methods:
-- client.rulesets.phases.versions.list(rulesetPhase, { ...params }) -> VersionListResponsesSinglePage
-- client.rulesets.phases.versions.get(rulesetPhase, rulesetVersion, { ...params }) -> VersionGetResponse
+- client.rulesets.phases.versions.list(rulesetPhase, { ...params }) -> VersionListResponsesSinglePage
+- client.rulesets.phases.versions.get(rulesetPhase, rulesetVersion, { ...params }) -> VersionGetResponse
## Rules
@@ -2598,9 +2631,9 @@ Types:
Methods:
-- client.rulesets.rules.create(rulesetId, { ...params }) -> RuleCreateResponse
-- client.rulesets.rules.delete(rulesetId, ruleId, { ...params }) -> RuleDeleteResponse
-- client.rulesets.rules.edit(rulesetId, ruleId, { ...params }) -> RuleEditResponse
+- client.rulesets.rules.create(rulesetId, { ...params }) -> RuleCreateResponse
+- client.rulesets.rules.delete(rulesetId, ruleId, { ...params }) -> RuleDeleteResponse
+- client.rulesets.rules.edit(rulesetId, ruleId, { ...params }) -> RuleEditResponse
## Versions
@@ -2611,9 +2644,9 @@ Types:
Methods:
-- client.rulesets.versions.list(rulesetId, { ...params }) -> VersionListResponsesSinglePage
-- client.rulesets.versions.delete(rulesetId, rulesetVersion, { ...params }) -> void
-- client.rulesets.versions.get(rulesetId, rulesetVersion, { ...params }) -> VersionGetResponse
+- client.rulesets.versions.list(rulesetId, { ...params }) -> VersionListResponsesSinglePage
+- client.rulesets.versions.delete(rulesetId, rulesetVersion, { ...params }) -> void
+- client.rulesets.versions.get(rulesetId, rulesetVersion, { ...params }) -> VersionGetResponse
# URLNormalization
@@ -3374,17 +3407,41 @@ Methods:
Types:
-- ConnectorUpdateResponse
-- ConnectorListResponse
-- ConnectorEditResponse
-- ConnectorGetResponse
+- ConnectorUpdateResponse
+- ConnectorListResponse
+- ConnectorEditResponse
+- ConnectorGetResponse
+
+Methods:
+
+- client.magicTransit.connectors.update(connectorId, { ...params }) -> ConnectorUpdateResponse
+- client.magicTransit.connectors.list({ ...params }) -> ConnectorListResponsesSinglePage
+- client.magicTransit.connectors.edit(connectorId, { ...params }) -> ConnectorEditResponse
+- client.magicTransit.connectors.get(connectorId, { ...params }) -> ConnectorGetResponse
+
+### Events
+
+Types:
+
+- EventListResponse
+- EventGetResponse
+
+Methods:
+
+- client.magicTransit.connectors.events.list(connectorId, { ...params }) -> EventListResponse
+- client.magicTransit.connectors.events.get(connectorId, eventT, eventN, { ...params }) -> EventGetResponse
+
+### Snapshots
+
+Types:
+
+- SnapshotListResponse
+- SnapshotGetResponse
Methods:
-- client.magicTransit.connectors.update(connectorId, { ...params }) -> ConnectorUpdateResponse
-- client.magicTransit.connectors.list({ ...params }) -> ConnectorListResponsesSinglePage
-- client.magicTransit.connectors.edit(connectorId, { ...params }) -> ConnectorEditResponse
-- client.magicTransit.connectors.get(connectorId, { ...params }) -> ConnectorGetResponse
+- client.magicTransit.connectors.snapshots.list(connectorId, { ...params }) -> SnapshotListResponse
+- client.magicTransit.connectors.snapshots.get(connectorId, snapshotT, { ...params }) -> SnapshotGetResponse
## PCAPs
@@ -3423,6 +3480,18 @@ Methods:
# MagicNetworkMonitoring
+## VPCFlows
+
+### Tokens
+
+Types:
+
+- TokenCreateResponse
+
+Methods:
+
+- client.magicNetworkMonitoring.vpcFlows.tokens.create({ ...params }) -> TokenCreateResponse
+
## Configs
Types:
@@ -3468,6 +3537,120 @@ Methods:
- client.magicNetworkMonitoring.rules.advertisements.edit(ruleId, { ...params }) -> Advertisement | null
+# MagicCloudNetworking
+
+## CatalogSyncs
+
+Types:
+
+- CatalogSyncCreateResponse
+- CatalogSyncUpdateResponse
+- CatalogSyncListResponse
+- CatalogSyncDeleteResponse
+- CatalogSyncEditResponse
+- CatalogSyncGetResponse
+- CatalogSyncRefreshResponse
+
+Methods:
+
+- client.magicCloudNetworking.catalogSyncs.create({ ...params }) -> CatalogSyncCreateResponse
+- client.magicCloudNetworking.catalogSyncs.update(syncId, { ...params }) -> CatalogSyncUpdateResponse
+- client.magicCloudNetworking.catalogSyncs.list({ ...params }) -> CatalogSyncListResponsesSinglePage
+- client.magicCloudNetworking.catalogSyncs.delete(syncId, { ...params }) -> CatalogSyncDeleteResponse
+- client.magicCloudNetworking.catalogSyncs.edit(syncId, { ...params }) -> CatalogSyncEditResponse
+- client.magicCloudNetworking.catalogSyncs.get(syncId, { ...params }) -> CatalogSyncGetResponse
+- client.magicCloudNetworking.catalogSyncs.refresh(syncId, { ...params }) -> CatalogSyncRefreshResponse
+
+### PrebuiltPolicies
+
+Types:
+
+- PrebuiltPolicyListResponse
+
+Methods:
+
+- client.magicCloudNetworking.catalogSyncs.prebuiltPolicies.list({ ...params }) -> PrebuiltPolicyListResponsesSinglePage
+
+## OnRamps
+
+Types:
+
+- OnRampCreateResponse
+- OnRampUpdateResponse
+- OnRampListResponse
+- OnRampDeleteResponse
+- OnRampApplyResponse
+- OnRampEditResponse
+- OnRampGetResponse
+- OnRampPlanResponse
+
+Methods:
+
+- client.magicCloudNetworking.onRamps.create({ ...params }) -> OnRampCreateResponse
+- client.magicCloudNetworking.onRamps.update(onrampId, { ...params }) -> OnRampUpdateResponse
+- client.magicCloudNetworking.onRamps.list({ ...params }) -> OnRampListResponsesSinglePage
+- client.magicCloudNetworking.onRamps.delete(onrampId, { ...params }) -> OnRampDeleteResponse
+- client.magicCloudNetworking.onRamps.apply(onrampId, { ...params }) -> OnRampApplyResponse
+- client.magicCloudNetworking.onRamps.edit(onrampId, { ...params }) -> OnRampEditResponse
+- client.magicCloudNetworking.onRamps.export(onrampId, { ...params }) -> Response
+- client.magicCloudNetworking.onRamps.get(onrampId, { ...params }) -> OnRampGetResponse
+- client.magicCloudNetworking.onRamps.plan(onrampId, { ...params }) -> OnRampPlanResponse
+
+### AddressSpaces
+
+Types:
+
+- AddressSpaceUpdateResponse
+- AddressSpaceListResponse
+- AddressSpaceEditResponse
+
+Methods:
+
+- client.magicCloudNetworking.onRamps.addressSpaces.update({ ...params }) -> AddressSpaceUpdateResponse
+- client.magicCloudNetworking.onRamps.addressSpaces.list({ ...params }) -> AddressSpaceListResponse
+- client.magicCloudNetworking.onRamps.addressSpaces.edit({ ...params }) -> AddressSpaceEditResponse
+
+## CloudIntegrations
+
+Types:
+
+- CloudIntegrationCreateResponse
+- CloudIntegrationUpdateResponse
+- CloudIntegrationListResponse
+- CloudIntegrationDeleteResponse
+- CloudIntegrationDiscoverResponse
+- CloudIntegrationDiscoverAllResponse
+- CloudIntegrationEditResponse
+- CloudIntegrationGetResponse
+- CloudIntegrationInitialSetupResponse
+
+Methods:
+
+- client.magicCloudNetworking.cloudIntegrations.create({ ...params }) -> CloudIntegrationCreateResponse
+- client.magicCloudNetworking.cloudIntegrations.update(providerId, { ...params }) -> CloudIntegrationUpdateResponse
+- client.magicCloudNetworking.cloudIntegrations.list({ ...params }) -> CloudIntegrationListResponsesSinglePage
+- client.magicCloudNetworking.cloudIntegrations.delete(providerId, { ...params }) -> CloudIntegrationDeleteResponse
+- client.magicCloudNetworking.cloudIntegrations.discover(providerId, { ...params }) -> CloudIntegrationDiscoverResponse
+- client.magicCloudNetworking.cloudIntegrations.discoverAll({ ...params }) -> CloudIntegrationDiscoverAllResponse
+- client.magicCloudNetworking.cloudIntegrations.edit(providerId, { ...params }) -> CloudIntegrationEditResponse
+- client.magicCloudNetworking.cloudIntegrations.get(providerId, { ...params }) -> CloudIntegrationGetResponse
+- client.magicCloudNetworking.cloudIntegrations.initialSetup(providerId, { ...params }) -> CloudIntegrationInitialSetupResponse
+
+## Resources
+
+Types:
+
+- ResourceListResponse
+- ResourceGetResponse
+- ResourcePolicyPreviewResponse
+
+Methods:
+
+- client.magicCloudNetworking.resources.list({ ...params }) -> ResourceListResponsesV4PagePaginationArray
+- client.magicCloudNetworking.resources.export({ ...params }) -> Response
+- client.magicCloudNetworking.resources.get(resourceId, { ...params }) -> ResourceGetResponse
+- client.magicCloudNetworking.resources.policyPreview({ ...params }) -> ResourcePolicyPreviewResponse
+
# NetworkInterconnects
## CNIs
@@ -4073,10 +4256,10 @@ Types:
Methods:
- client.r2.buckets.domains.custom.create(bucketName, { ...params }) -> CustomCreateResponse
-- client.r2.buckets.domains.custom.update(bucketName, domainName, { ...params }) -> CustomUpdateResponse
+- client.r2.buckets.domains.custom.update(bucketName, domain, { ...params }) -> CustomUpdateResponse
- client.r2.buckets.domains.custom.list(bucketName, { ...params }) -> CustomListResponse
-- client.r2.buckets.domains.custom.delete(bucketName, domainName, { ...params }) -> CustomDeleteResponse
-- client.r2.buckets.domains.custom.get(bucketName, domainName, { ...params }) -> CustomGetResponse
+- client.r2.buckets.domains.custom.delete(bucketName, domain, { ...params }) -> CustomDeleteResponse
+- client.r2.buckets.domains.custom.get(bucketName, domain, { ...params }) -> CustomGetResponse
#### Managed
@@ -4227,15 +4410,16 @@ Methods:
Types:
-- WorkersSecretModel
- SecretUpdateResponse
- SecretListResponse
+- SecretDeleteResponse
- SecretGetResponse
Methods:
- client.workersForPlatforms.dispatch.namespaces.scripts.secrets.update(dispatchNamespace, scriptName, { ...params }) -> SecretUpdateResponse
- client.workersForPlatforms.dispatch.namespaces.scripts.secrets.list(dispatchNamespace, scriptName, { ...params }) -> SecretListResponsesSinglePage
+- client.workersForPlatforms.dispatch.namespaces.scripts.secrets.delete(dispatchNamespace, scriptName, secretName, { ...params }) -> SecretDeleteResponse | null
- client.workersForPlatforms.dispatch.namespaces.scripts.secrets.get(dispatchNamespace, scriptName, secretName, { ...params }) -> SecretGetResponse
##### Tags
@@ -4497,11 +4681,11 @@ Types:
Methods:
-- client.zeroTrust.identityProviders.create({ ...params }) -> IdentityProvider
-- client.zeroTrust.identityProviders.update(identityProviderId, { ...params }) -> IdentityProvider
-- client.zeroTrust.identityProviders.list({ ...params }) -> IdentityProviderListResponsesSinglePage
-- client.zeroTrust.identityProviders.delete(identityProviderId, { ...params }) -> IdentityProviderDeleteResponse
-- client.zeroTrust.identityProviders.get(identityProviderId, { ...params }) -> IdentityProvider
+- client.zeroTrust.identityProviders.create({ ...params }) -> IdentityProvider
+- client.zeroTrust.identityProviders.update(identityProviderId, { ...params }) -> IdentityProvider
+- client.zeroTrust.identityProviders.list({ ...params }) -> IdentityProviderListResponsesSinglePage
+- client.zeroTrust.identityProviders.delete(identityProviderId, { ...params }) -> IdentityProviderDeleteResponse
+- client.zeroTrust.identityProviders.get(identityProviderId, { ...params }) -> IdentityProvider
### SCIM
@@ -4527,10 +4711,10 @@ Types:
Methods:
-- client.zeroTrust.organizations.create({ ...params }) -> Organization
-- client.zeroTrust.organizations.update({ ...params }) -> Organization
-- client.zeroTrust.organizations.list({ ...params }) -> Organization
-- client.zeroTrust.organizations.revokeUsers({ ...params }) -> OrganizationRevokeUsersResponse
+- client.zeroTrust.organizations.create({ ...params }) -> Organization
+- client.zeroTrust.organizations.update({ ...params }) -> Organization
+- client.zeroTrust.organizations.list({ ...params }) -> Organization
+- client.zeroTrust.organizations.revokeUsers({ ...params }) -> OrganizationRevokeUsersResponse
### DOH
@@ -4624,12 +4808,12 @@ Types:
Methods:
-- client.zeroTrust.access.applications.create({ ...params }) -> ApplicationCreateResponse
-- client.zeroTrust.access.applications.update(appId, { ...params }) -> ApplicationUpdateResponse
-- client.zeroTrust.access.applications.list({ ...params }) -> ApplicationListResponsesSinglePage
-- client.zeroTrust.access.applications.delete(appId, { ...params }) -> ApplicationDeleteResponse
-- client.zeroTrust.access.applications.get(appId, { ...params }) -> ApplicationGetResponse
-- client.zeroTrust.access.applications.revokeTokens(appId, { ...params }) -> ApplicationRevokeTokensResponse | null
+- client.zeroTrust.access.applications.create({ ...params }) -> ApplicationCreateResponse
+- client.zeroTrust.access.applications.update(appId, { ...params }) -> ApplicationUpdateResponse
+- client.zeroTrust.access.applications.list({ ...params }) -> ApplicationListResponsesSinglePage
+- client.zeroTrust.access.applications.delete(appId, { ...params }) -> ApplicationDeleteResponse
+- client.zeroTrust.access.applications.get(appId, { ...params }) -> ApplicationGetResponse
+- client.zeroTrust.access.applications.revokeTokens(appId, { ...params }) -> ApplicationRevokeTokensResponse | null
#### CAs
@@ -4640,10 +4824,10 @@ Types:
Methods:
-- client.zeroTrust.access.applications.cas.create(appId, { ...params }) -> CA
-- client.zeroTrust.access.applications.cas.list({ ...params }) -> CAsSinglePage
-- client.zeroTrust.access.applications.cas.delete(appId, { ...params }) -> CADeleteResponse
-- client.zeroTrust.access.applications.cas.get(appId, { ...params }) -> CA
+- client.zeroTrust.access.applications.cas.create(appId, { ...params }) -> CA
+- client.zeroTrust.access.applications.cas.list({ ...params }) -> CAsSinglePage
+- client.zeroTrust.access.applications.cas.delete(appId, { ...params }) -> CADeleteResponse
+- client.zeroTrust.access.applications.cas.get(appId, { ...params }) -> CA
#### UserPolicyChecks
@@ -4654,7 +4838,7 @@ Types:
Methods:
-- client.zeroTrust.access.applications.userPolicyChecks.list(appId, { ...params }) -> UserPolicyCheckListResponse
+- client.zeroTrust.access.applications.userPolicyChecks.list(appId, { ...params }) -> UserPolicyCheckListResponse
#### Policies
@@ -4688,11 +4872,11 @@ Types:
Methods:
-- client.zeroTrust.access.applications.policies.create(appId, { ...params }) -> PolicyCreateResponse
-- client.zeroTrust.access.applications.policies.update(appId, policyId, { ...params }) -> PolicyUpdateResponse
-- client.zeroTrust.access.applications.policies.list(appId, { ...params }) -> PolicyListResponsesSinglePage
-- client.zeroTrust.access.applications.policies.delete(appId, policyId, { ...params }) -> PolicyDeleteResponse
-- client.zeroTrust.access.applications.policies.get(appId, policyId, { ...params }) -> PolicyGetResponse
+- client.zeroTrust.access.applications.policies.create(appId, { ...params }) -> PolicyCreateResponse
+- client.zeroTrust.access.applications.policies.update(appId, policyId, { ...params }) -> PolicyUpdateResponse
+- client.zeroTrust.access.applications.policies.list(appId, { ...params }) -> PolicyListResponsesSinglePage
+- client.zeroTrust.access.applications.policies.delete(appId, policyId, { ...params }) -> PolicyDeleteResponse
+- client.zeroTrust.access.applications.policies.get(appId, policyId, { ...params }) -> PolicyGetResponse
#### PolicyTests
@@ -4726,11 +4910,11 @@ Types:
Methods:
-- client.zeroTrust.access.certificates.create({ ...params }) -> Certificate
-- client.zeroTrust.access.certificates.update(certificateId, { ...params }) -> Certificate
-- client.zeroTrust.access.certificates.list({ ...params }) -> CertificatesSinglePage
-- client.zeroTrust.access.certificates.delete(certificateId, { ...params }) -> CertificateDeleteResponse
-- client.zeroTrust.access.certificates.get(certificateId, { ...params }) -> Certificate
+- client.zeroTrust.access.certificates.create({ ...params }) -> Certificate
+- client.zeroTrust.access.certificates.update(certificateId, { ...params }) -> Certificate
+- client.zeroTrust.access.certificates.list({ ...params }) -> CertificatesSinglePage
+- client.zeroTrust.access.certificates.delete(certificateId, { ...params }) -> CertificateDeleteResponse
+- client.zeroTrust.access.certificates.get(certificateId, { ...params }) -> Certificate
#### Settings
@@ -4740,8 +4924,8 @@ Types:
Methods:
-- client.zeroTrust.access.certificates.settings.update({ ...params }) -> CertificateSettingsSinglePage
-- client.zeroTrust.access.certificates.settings.get({ ...params }) -> CertificateSettingsSinglePage
+- client.zeroTrust.access.certificates.settings.update({ ...params }) -> CertificateSettingsSinglePage
+- client.zeroTrust.access.certificates.settings.get({ ...params }) -> CertificateSettingsSinglePage
### Groups
@@ -4756,11 +4940,11 @@ Types:
Methods:
-- client.zeroTrust.access.groups.create({ ...params }) -> GroupCreateResponse
-- client.zeroTrust.access.groups.update(groupId, { ...params }) -> GroupUpdateResponse
-- client.zeroTrust.access.groups.list({ ...params }) -> GroupListResponsesSinglePage
-- client.zeroTrust.access.groups.delete(groupId, { ...params }) -> GroupDeleteResponse
-- client.zeroTrust.access.groups.get(groupId, { ...params }) -> GroupGetResponse
+- client.zeroTrust.access.groups.create({ ...params }) -> GroupCreateResponse
+- client.zeroTrust.access.groups.update(groupId, { ...params }) -> GroupUpdateResponse
+- client.zeroTrust.access.groups.list({ ...params }) -> GroupListResponsesSinglePage
+- client.zeroTrust.access.groups.delete(groupId, { ...params }) -> GroupDeleteResponse
+- client.zeroTrust.access.groups.get(groupId, { ...params }) -> GroupGetResponse
### ServiceTokens
@@ -4772,11 +4956,11 @@ Types:
Methods:
-- client.zeroTrust.access.serviceTokens.create({ ...params }) -> ServiceTokenCreateResponse
-- client.zeroTrust.access.serviceTokens.update(serviceTokenId, { ...params }) -> ServiceToken
-- client.zeroTrust.access.serviceTokens.list({ ...params }) -> ServiceTokensSinglePage
-- client.zeroTrust.access.serviceTokens.delete(serviceTokenId, { ...params }) -> ServiceToken
-- client.zeroTrust.access.serviceTokens.get(serviceTokenId, { ...params }) -> ServiceToken
+- client.zeroTrust.access.serviceTokens.create({ ...params }) -> ServiceTokenCreateResponse
+- client.zeroTrust.access.serviceTokens.update(serviceTokenId, { ...params }) -> ServiceToken
+- client.zeroTrust.access.serviceTokens.list({ ...params }) -> ServiceTokensSinglePage
+- client.zeroTrust.access.serviceTokens.delete(serviceTokenId, { ...params }) -> ServiceToken
+- client.zeroTrust.access.serviceTokens.get(serviceTokenId, { ...params }) -> ServiceToken
- client.zeroTrust.access.serviceTokens.refresh(serviceTokenId, { ...params }) -> ServiceToken
- client.zeroTrust.access.serviceTokens.rotate(serviceTokenId, { ...params }) -> ServiceTokenRotateResponse
@@ -5082,89 +5266,107 @@ Methods:
Types:
- Connection
-- TunnelCreateResponse
- TunnelListResponse
-- TunnelDeleteResponse
-- TunnelEditResponse
-- TunnelGetResponse
Methods:
-- client.zeroTrust.tunnels.create({ ...params }) -> TunnelCreateResponse
-- client.zeroTrust.tunnels.list({ ...params }) -> TunnelListResponsesV4PagePaginationArray
-- client.zeroTrust.tunnels.delete(tunnelId, { ...params }) -> TunnelDeleteResponse
-- client.zeroTrust.tunnels.edit(tunnelId, { ...params }) -> TunnelEditResponse
-- client.zeroTrust.tunnels.get(tunnelId, { ...params }) -> TunnelGetResponse
+- client.zeroTrust.tunnels.list({ ...params }) -> TunnelListResponsesV4PagePaginationArray
-### WARPConnector
+### Cloudflared
Types:
-- WARPConnectorCreateResponse
-- WARPConnectorListResponse
-- WARPConnectorDeleteResponse
-- WARPConnectorEditResponse
-- WARPConnectorGetResponse
-- WARPConnectorTokenResponse
+- CloudflaredCreateResponse
+- CloudflaredListResponse
+- CloudflaredDeleteResponse
+- CloudflaredEditResponse
+- CloudflaredGetResponse
Methods:
-- client.zeroTrust.tunnels.warpConnector.create({ ...params }) -> WARPConnectorCreateResponse
-- client.zeroTrust.tunnels.warpConnector.list({ ...params }) -> WARPConnectorListResponsesV4PagePaginationArray
-- client.zeroTrust.tunnels.warpConnector.delete(tunnelId, { ...params }) -> WARPConnectorDeleteResponse
-- client.zeroTrust.tunnels.warpConnector.edit(tunnelId, { ...params }) -> WARPConnectorEditResponse
-- client.zeroTrust.tunnels.warpConnector.get(tunnelId, { ...params }) -> WARPConnectorGetResponse
-- client.zeroTrust.tunnels.warpConnector.token(tunnelId, { ...params }) -> WARPConnectorTokenResponse
+- client.zeroTrust.tunnels.cloudflared.create({ ...params }) -> CloudflaredCreateResponse
+- client.zeroTrust.tunnels.cloudflared.list({ ...params }) -> CloudflaredListResponsesV4PagePaginationArray
+- client.zeroTrust.tunnels.cloudflared.delete(tunnelId, { ...params }) -> CloudflaredDeleteResponse
+- client.zeroTrust.tunnels.cloudflared.edit(tunnelId, { ...params }) -> CloudflaredEditResponse
+- client.zeroTrust.tunnels.cloudflared.get(tunnelId, { ...params }) -> CloudflaredGetResponse
-### Configurations
+#### Configurations
+
+Types:
+
+- ConfigurationUpdateResponse
+- ConfigurationGetResponse
+
+Methods:
+
+- client.zeroTrust.tunnels.cloudflared.configurations.update(tunnelId, { ...params }) -> ConfigurationUpdateResponse
+- client.zeroTrust.tunnels.cloudflared.configurations.get(tunnelId, { ...params }) -> ConfigurationGetResponse
+
+#### Connections
Types:
-- ConfigurationUpdateResponse
-- ConfigurationGetResponse
+- Client
+- ConnectionDeleteResponse
Methods:
-- client.zeroTrust.tunnels.configurations.update(tunnelId, { ...params }) -> ConfigurationUpdateResponse
-- client.zeroTrust.tunnels.configurations.get(tunnelId, { ...params }) -> ConfigurationGetResponse
+- client.zeroTrust.tunnels.cloudflared.connections.delete(tunnelId, { ...params }) -> ConnectionDeleteResponse | null
+- client.zeroTrust.tunnels.cloudflared.connections.get(tunnelId, { ...params }) -> ClientsSinglePage
-### Connections
+#### Token
Types:
-- Client
-- ConnectionDeleteResponse
+- TokenGetResponse
+
+Methods:
+
+- client.zeroTrust.tunnels.cloudflared.token.get(tunnelId, { ...params }) -> TokenGetResponse
+
+#### Connectors
Methods:
-- client.zeroTrust.tunnels.connections.delete(tunnelId, { ...params }) -> ConnectionDeleteResponse | null
-- client.zeroTrust.tunnels.connections.get(tunnelId, { ...params }) -> ClientsSinglePage
+- client.zeroTrust.tunnels.cloudflared.connectors.get(tunnelId, connectorId, { ...params }) -> Client
-### Token
+#### Management
Types:
-- TokenGetResponse
+- ManagementCreateResponse
Methods:
-- client.zeroTrust.tunnels.token.get(tunnelId, { ...params }) -> TokenGetResponse
+- client.zeroTrust.tunnels.cloudflared.management.create(tunnelId, { ...params }) -> ManagementCreateResponse
+
+### WARPConnector
+
+Types:
-### Connectors
+- WARPConnectorCreateResponse
+- WARPConnectorListResponse
+- WARPConnectorDeleteResponse
+- WARPConnectorEditResponse
+- WARPConnectorGetResponse
Methods:
-- client.zeroTrust.tunnels.connectors.get(tunnelId, connectorId, { ...params }) -> Client
+- client.zeroTrust.tunnels.warpConnector.create({ ...params }) -> WARPConnectorCreateResponse
+- client.zeroTrust.tunnels.warpConnector.list({ ...params }) -> WARPConnectorListResponsesV4PagePaginationArray
+- client.zeroTrust.tunnels.warpConnector.delete(tunnelId, { ...params }) -> WARPConnectorDeleteResponse
+- client.zeroTrust.tunnels.warpConnector.edit(tunnelId, { ...params }) -> WARPConnectorEditResponse
+- client.zeroTrust.tunnels.warpConnector.get(tunnelId, { ...params }) -> WARPConnectorGetResponse
-### Management
+#### Token
Types:
-- ManagementCreateResponse
+- TokenGetResponse
Methods:
-- client.zeroTrust.tunnels.management.create(tunnelId, { ...params }) -> ManagementCreateResponse
+- client.zeroTrust.tunnels.warpConnector.token.get(tunnelId, { ...params }) -> TokenGetResponse
## ConnectivitySettings
@@ -5591,6 +5793,26 @@ Methods:
- client.zeroTrust.networks.virtualNetworks.edit(virtualNetworkId, { ...params }) -> VirtualNetwork
- client.zeroTrust.networks.virtualNetworks.get(virtualNetworkId, { ...params }) -> VirtualNetwork
+### Subnets
+
+Types:
+
+- SubnetListResponse
+
+Methods:
+
+- client.zeroTrust.networks.subnets.list({ ...params }) -> SubnetListResponsesV4PagePaginationArray
+
+#### CloudflareSource
+
+Types:
+
+- CloudflareSourceUpdateResponse
+
+Methods:
+
+- client.zeroTrust.networks.subnets.cloudflareSource.update(addressFamily, { ...params }) -> CloudflareSourceUpdateResponse
+
## RiskScoring
Types:
@@ -5683,21 +5905,16 @@ Types:
Types:
-- ConfigCreateResponse
-- ConfigUpdateResponse
-- ConfigListResponse
- ConfigDeleteResponse
-- ConfigEditResponse
-- ConfigGetResponse
Methods:
-- client.hyperdrive.configs.create({ ...params }) -> ConfigCreateResponse
-- client.hyperdrive.configs.update(hyperdriveId, { ...params }) -> ConfigUpdateResponse
-- client.hyperdrive.configs.list({ ...params }) -> ConfigListResponsesSinglePage
+- client.hyperdrive.configs.create({ ...params }) -> Hyperdrive
+- client.hyperdrive.configs.update(hyperdriveId, { ...params }) -> Hyperdrive
+- client.hyperdrive.configs.list({ ...params }) -> HyperdrivesSinglePage
- client.hyperdrive.configs.delete(hyperdriveId, { ...params }) -> ConfigDeleteResponse | null
-- client.hyperdrive.configs.edit(hyperdriveId, { ...params }) -> ConfigEditResponse
-- client.hyperdrive.configs.get(hyperdriveId, { ...params }) -> ConfigGetResponse
+- client.hyperdrive.configs.edit(hyperdriveId, { ...params }) -> Hyperdrive
+- client.hyperdrive.configs.get(hyperdriveId, { ...params }) -> Hyperdrive
# RUM
@@ -5992,6 +6209,14 @@ Methods:
## DNS
+Types:
+
+- DNSTimeseriesResponse
+
+Methods:
+
+- client.radar.dns.timeseries({ ...params }) -> DNSTimeseriesResponse
+
### Top
Types:
@@ -6004,6 +6229,62 @@ Methods:
- client.radar.dns.top.ases({ ...params }) -> TopAsesResponse
- client.radar.dns.top.locations({ ...params }) -> TopLocationsResponse
+### Summary
+
+Types:
+
+- SummaryCacheHitResponse
+- SummaryDNSSECResponse
+- SummaryDNSSECAwareResponse
+- SummaryDNSSECE2EResponse
+- SummaryIPVersionResponse
+- SummaryMatchingAnswerResponse
+- SummaryProtocolResponse
+- SummaryQueryTypeResponse
+- SummaryResponseCodeResponse
+- SummaryResponseTTLResponse
+
+Methods:
+
+- client.radar.dns.summary.cacheHit({ ...params }) -> SummaryCacheHitResponse
+- client.radar.dns.summary.dnssec({ ...params }) -> SummaryDNSSECResponse
+- client.radar.dns.summary.dnssecAware({ ...params }) -> SummaryDNSSECAwareResponse
+- client.radar.dns.summary.dnssecE2E({ ...params }) -> SummaryDNSSECE2EResponse
+- client.radar.dns.summary.ipVersion({ ...params }) -> SummaryIPVersionResponse
+- client.radar.dns.summary.matchingAnswer({ ...params }) -> SummaryMatchingAnswerResponse
+- client.radar.dns.summary.protocol({ ...params }) -> SummaryProtocolResponse
+- client.radar.dns.summary.queryType({ ...params }) -> SummaryQueryTypeResponse
+- client.radar.dns.summary.responseCode({ ...params }) -> SummaryResponseCodeResponse
+- client.radar.dns.summary.responseTTL({ ...params }) -> SummaryResponseTTLResponse
+
+### TimeseriesGroups
+
+Types:
+
+- TimeseriesGroupCacheHitResponse
+- TimeseriesGroupDNSSECResponse
+- TimeseriesGroupDNSSECAwareResponse
+- TimeseriesGroupDNSSECE2EResponse
+- TimeseriesGroupIPVersionResponse
+- TimeseriesGroupMatchingAnswerResponse
+- TimeseriesGroupProtocolResponse
+- TimeseriesGroupQueryTypeResponse
+- TimeseriesGroupResponseCodeResponse
+- TimeseriesGroupResponseTTLResponse
+
+Methods:
+
+- client.radar.dns.timeseriesGroups.cacheHit({ ...params }) -> TimeseriesGroupCacheHitResponse
+- client.radar.dns.timeseriesGroups.dnssec({ ...params }) -> TimeseriesGroupDNSSECResponse
+- client.radar.dns.timeseriesGroups.dnssecAware({ ...params }) -> TimeseriesGroupDNSSECAwareResponse
+- client.radar.dns.timeseriesGroups.dnssecE2E({ ...params }) -> TimeseriesGroupDNSSECE2EResponse
+- client.radar.dns.timeseriesGroups.ipVersion({ ...params }) -> TimeseriesGroupIPVersionResponse
+- client.radar.dns.timeseriesGroups.matchingAnswer({ ...params }) -> TimeseriesGroupMatchingAnswerResponse
+- client.radar.dns.timeseriesGroups.protocol({ ...params }) -> TimeseriesGroupProtocolResponse
+- client.radar.dns.timeseriesGroups.queryType({ ...params }) -> TimeseriesGroupQueryTypeResponse
+- client.radar.dns.timeseriesGroups.responseCode({ ...params }) -> TimeseriesGroupResponseCodeResponse
+- client.radar.dns.timeseriesGroups.responseTTL({ ...params }) -> TimeseriesGroupResponseTTLResponse
+
## Netflows
Types:
@@ -6783,11 +7064,13 @@ Methods:
Types:
+- InternetServiceCategoriesResponse
- InternetServiceTimeseriesGroupsResponse
- InternetServiceTopResponse
Methods:
+- client.radar.ranking.internetServices.categories({ ...params }) -> InternetServiceCategoriesResponse
- client.radar.ranking.internetServices.timeseriesGroups({ ...params }) -> InternetServiceTimeseriesGroupsResponse
- client.radar.ranking.internetServices.top({ ...params }) -> InternetServiceTopResponse
@@ -6845,6 +7128,32 @@ Methods:
- client.radar.robotsTXT.top.userAgents.directive({ ...params }) -> UserAgentDirectiveResponse
+## LeakedCredentials
+
+### Summary
+
+Types:
+
+- SummaryBotClassResponse
+- SummaryCompromisedResponse
+
+Methods:
+
+- client.radar.leakedCredentials.summary.botClass({ ...params }) -> SummaryBotClassResponse
+- client.radar.leakedCredentials.summary.compromised({ ...params }) -> SummaryCompromisedResponse
+
+### TimeseriesGroups
+
+Types:
+
+- TimeseriesGroupBotClassResponse
+- TimeseriesGroupCompromisedResponse
+
+Methods:
+
+- client.radar.leakedCredentials.timeseriesGroups.botClass({ ...params }) -> TimeseriesGroupBotClassResponse
+- client.radar.leakedCredentials.timeseriesGroups.compromised({ ...params }) -> TimeseriesGroupCompromisedResponse
+
# BotManagement
Types:
@@ -6873,6 +7182,81 @@ Methods:
- client.originPostQuantumEncryption.update({ ...params }) -> OriginPostQuantumEncryptionUpdateResponse
- client.originPostQuantumEncryption.get({ ...params }) -> OriginPostQuantumEncryptionGetResponse
+# Zaraz
+
+Types:
+
+- ButtonTextTranslation
+- NeoEvent
+
+Methods:
+
+- client.zaraz.update({ ...params }) -> Workflow
+
+## Config
+
+Types:
+
+- Configuration
+
+Methods:
+
+- client.zaraz.config.update({ ...params }) -> Configuration
+- client.zaraz.config.get({ ...params }) -> Configuration
+
+## Default
+
+Methods:
+
+- client.zaraz.default.get({ ...params }) -> Configuration
+
+## Export
+
+Methods:
+
+- client.zaraz.export.get({ ...params }) -> Configuration
+
+## History
+
+Types:
+
+- HistoryListResponse
+
+Methods:
+
+- client.zaraz.history.update({ ...params }) -> Configuration
+- client.zaraz.history.list({ ...params }) -> HistoryListResponsesSinglePage
+
+### Configs
+
+Types:
+
+- ConfigGetResponse
+
+Methods:
+
+- client.zaraz.history.configs.get({ ...params }) -> ConfigGetResponse
+
+## Publish
+
+Types:
+
+- PublishCreateResponse
+
+Methods:
+
+- client.zaraz.publish.create({ ...params }) -> PublishCreateResponse
+
+## Workflow
+
+Types:
+
+- Workflow
+
+Methods:
+
+- client.zaraz.workflow.get({ ...params }) -> Workflow
+
# Speed
Types:
@@ -7033,6 +7417,35 @@ Methods:
# CloudforceOne
+## Scans
+
+### Results
+
+Types:
+
+- ScanResult
+- ResultGetResponse
+
+Methods:
+
+- client.cloudforceOne.scans.results.get(configId, { ...params }) -> ResultGetResponse
+
+### Config
+
+Types:
+
+- ConfigCreateResponse
+- ConfigListResponse
+- ConfigDeleteResponse
+- ConfigEditResponse
+
+Methods:
+
+- client.cloudforceOne.scans.config.create({ ...params }) -> ConfigCreateResponse
+- client.cloudforceOne.scans.config.list({ ...params }) -> ConfigListResponsesSinglePage
+- client.cloudforceOne.scans.config.delete(configId, { ...params }) -> ConfigDeleteResponse
+- client.cloudforceOne.scans.config.edit(configId, { ...params }) -> ConfigEditResponse
+
## Requests
Types:
@@ -7103,6 +7516,172 @@ Methods:
- client.cloudforceOne.requests.assets.delete(accountIdentifier, requestIdentifier, assetIdentifer) -> AssetDeleteResponse
- client.cloudforceOne.requests.assets.get(accountIdentifier, requestIdentifier, assetIdentifer) -> AssetGetResponsesSinglePage
+## ThreatEvents
+
+Types:
+
+- ThreatEventCreateResponse
+- ThreatEventDeleteResponse
+- ThreatEventBulkCreateResponse
+- ThreatEventEditResponse
+- ThreatEventGetResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.create({ ...params }) -> ThreatEventCreateResponse
+- client.cloudforceOne.threatEvents.delete(eventId, { ...params }) -> ThreatEventDeleteResponse
+- client.cloudforceOne.threatEvents.bulkCreate({ ...params }) -> ThreatEventBulkCreateResponse
+- client.cloudforceOne.threatEvents.edit(eventId, { ...params }) -> ThreatEventEditResponse
+- client.cloudforceOne.threatEvents.get(eventId, { ...params }) -> ThreatEventGetResponse
+
+### Attackers
+
+Types:
+
+- AttackerListResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.attackers.list({ ...params }) -> AttackerListResponse
+
+### Categories
+
+Types:
+
+- CategoryCreateResponse
+- CategoryListResponse
+- CategoryDeleteResponse
+- CategoryEditResponse
+- CategoryGetResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.categories.create({ ...params }) -> CategoryCreateResponse
+- client.cloudforceOne.threatEvents.categories.list({ ...params }) -> CategoryListResponse
+- client.cloudforceOne.threatEvents.categories.delete(categoryId, { ...params }) -> CategoryDeleteResponse
+- client.cloudforceOne.threatEvents.categories.edit(categoryId, { ...params }) -> CategoryEditResponse
+- client.cloudforceOne.threatEvents.categories.get(categoryId, { ...params }) -> CategoryGetResponse
+
+### Countries
+
+Types:
+
+- CountryListResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.countries.list({ ...params }) -> CountryListResponse
+
+### Crons
+
+Types:
+
+- CronListResponse
+- CronEditResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.crons.list({ ...params }) -> CronListResponse
+- client.cloudforceOne.threatEvents.crons.edit({ ...params }) -> CronEditResponse
+
+### Datasets
+
+Types:
+
+- DatasetCreateResponse
+- DatasetListResponse
+- DatasetEditResponse
+- DatasetGetResponse
+- DatasetRawResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.datasets.create({ ...params }) -> DatasetCreateResponse
+- client.cloudforceOne.threatEvents.datasets.list({ ...params }) -> DatasetListResponse
+- client.cloudforceOne.threatEvents.datasets.edit(datasetId, { ...params }) -> DatasetEditResponse
+- client.cloudforceOne.threatEvents.datasets.get(datasetId, { ...params }) -> DatasetGetResponse
+- client.cloudforceOne.threatEvents.datasets.raw(datasetId, eventId, { ...params }) -> DatasetRawResponse
+
+### IndicatorTypes
+
+Types:
+
+- IndicatorTypeListResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.indicatorTypes.list({ ...params }) -> IndicatorTypeListResponse
+
+### Raw
+
+Types:
+
+- RawEditResponse
+- RawGetResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.raw.edit(eventId, rawId, { ...params }) -> RawEditResponse
+- client.cloudforceOne.threatEvents.raw.get(eventId, rawId, { ...params }) -> RawGetResponse
+
+### Relate
+
+Types:
+
+- RelateDeleteResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.relate.delete(eventId, { ...params }) -> RelateDeleteResponse
+
+### Tags
+
+Types:
+
+- TagCreateResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.tags.create({ ...params }) -> TagCreateResponse
+
+### EventTags
+
+Types:
+
+- EventTagCreateResponse
+- EventTagDeleteResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.eventTags.create(eventId, { ...params }) -> EventTagCreateResponse
+- client.cloudforceOne.threatEvents.eventTags.delete(eventId, { ...params }) -> EventTagDeleteResponse
+
+### TargetIndustries
+
+Types:
+
+- TargetIndustryListResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.targetIndustries.list({ ...params }) -> TargetIndustryListResponse
+
+### Insights
+
+Types:
+
+- InsightCreateResponse
+- InsightDeleteResponse
+- InsightEditResponse
+- InsightGetResponse
+
+Methods:
+
+- client.cloudforceOne.threatEvents.insights.create(eventId, { ...params }) -> InsightCreateResponse
+- client.cloudforceOne.threatEvents.insights.delete(eventId, insightId, { ...params }) -> InsightDeleteResponse
+- client.cloudforceOne.threatEvents.insights.edit(eventId, insightId, { ...params }) -> InsightEditResponse
+- client.cloudforceOne.threatEvents.insights.get(eventId, insightId, { ...params }) -> InsightGetResponse
+
# AIGateway
Types:
@@ -7185,6 +7764,16 @@ Methods:
- client.aiGateway.evaluations.delete(gatewayId, id, { ...params }) -> EvaluationDeleteResponse
- client.aiGateway.evaluations.get(gatewayId, id, { ...params }) -> EvaluationGetResponse
+## URLs
+
+Types:
+
+- URLGetResponse
+
+Methods:
+
+- client.aiGateway.urls.get(gatewayId, provider, { ...params }) -> URLGetResponse
+
# IAM
## PermissionGroups
@@ -7293,12 +7882,14 @@ Types:
- InstanceCreateResponse
- InstanceListResponse
+- InstanceBulkResponse
- InstanceGetResponse
Methods:
- client.workflows.instances.create(workflowName, { ...params }) -> InstanceCreateResponse
- client.workflows.instances.list(workflowName, { ...params }) -> InstanceListResponsesV4PagePaginationArray
+- client.workflows.instances.bulk(workflowName, [ ...body ]) -> InstanceBulkResponsesSinglePage
- client.workflows.instances.get(workflowName, instanceId, { ...params }) -> InstanceGetResponse
### Status
@@ -7542,8 +8133,8 @@ Types:
Methods:
-- client.securityCenter.insights.list({ ...params }) -> InsightListResponsesV4PagePagination
-- client.securityCenter.insights.dismiss(issueId, { ...params }) -> InsightDismissResponse
+- client.securityCenter.insights.list({ ...params }) -> InsightListResponsesV4PagePagination
+- client.securityCenter.insights.dismiss(issueId, { ...params }) -> InsightDismissResponse
### Class
@@ -7553,7 +8144,7 @@ Types:
Methods:
-- client.securityCenter.insights.class.get({ ...params }) -> ClassGetResponse
+- client.securityCenter.insights.class.get({ ...params }) -> ClassGetResponse
### Severity
@@ -7563,7 +8154,7 @@ Types:
Methods:
-- client.securityCenter.insights.severity.get({ ...params }) -> SeverityGetResponse
+- client.securityCenter.insights.severity.get({ ...params }) -> SeverityGetResponse
### Type
@@ -7573,4 +8164,66 @@ Types:
Methods:
-- client.securityCenter.insights.type.get({ ...params }) -> TypeGetResponse
+- client.securityCenter.insights.type.get({ ...params }) -> TypeGetResponse
+
+# BrowserRendering
+
+## Content
+
+Types:
+
+- ContentCreateResponse
+
+Methods:
+
+- client.browserRendering.content.create({ ...params }) -> ContentCreateResponse
+
+## PDF
+
+Methods:
+
+- client.browserRendering.pdf.create({ ...params }) -> Response
+
+## Scrape
+
+Types:
+
+- ScrapeCreateResponse
+
+Methods:
+
+- client.browserRendering.scrape.create({ ...params }) -> ScrapeCreateResponse
+
+## Screenshot
+
+Types:
+
+- ScreenshotCreateResponse
+
+Methods:
+
+- client.browserRendering.screenshot.create({ ...params }) -> ScreenshotCreateResponse
+
+## Snapshot
+
+Types:
+
+- SnapshotCreateResponse
+
+Methods:
+
+- client.browserRendering.snapshot.create({ ...params }) -> SnapshotCreateResponse
+
+# CustomPages
+
+Types:
+
+- CustomPageUpdateResponse
+- CustomPageListResponse
+- CustomPageGetResponse
+
+Methods:
+
+- client.customPages.update(identifier, { ...params }) -> CustomPageUpdateResponse | null
+- client.customPages.list({ ...params }) -> CustomPageListResponsesSinglePage
+- client.customPages.get(identifier, { ...params }) -> CustomPageGetResponse | null
diff --git a/package.json b/package.json
index 279302f226..5832e6b581 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "cloudflare",
- "version": "4.1.0",
+ "version": "4.2.0",
"description": "The official TypeScript library for the Cloudflare API",
"author": "Cloudflare ",
"types": "dist/index.d.ts",
@@ -107,17 +107,17 @@
"default": "./dist/index.mjs"
},
"./*.mjs": {
- "types": "./dist/*.d.ts",
- "default": "./dist/*.mjs"
+ "types": ["./dist/*.d.ts", "./dist/*/index.d.ts"],
+ "default": ["./dist/*.mjs", "./dist/*/index.mjs"]
},
"./*.js": {
- "types": "./dist/*.d.ts",
- "default": "./dist/*.js"
+ "types": ["./dist/*.d.ts", "./dist/*/index.d.ts"],
+ "default": ["./dist/*.js", "./dist/*/index.js"]
},
"./*": {
- "types": "./dist/*.d.ts",
- "require": "./dist/*.js",
- "default": "./dist/*.mjs"
+ "types": ["./dist/*.d.ts", "./dist/*/index.d.ts"],
+ "require": ["./dist/*.js", "./dist/*/index.js"],
+ "default": ["./dist/*.mjs", "./dist/*/index.mjs"]
}
}
}
diff --git a/scripts/bootstrap b/scripts/bootstrap
index 05dd47a61e..0af58e2511 100755
--- a/scripts/bootstrap
+++ b/scripts/bootstrap
@@ -4,7 +4,7 @@ set -e
cd "$(dirname "$0")/.."
-if [ -f "Brewfile" ] && [ "$(uname -s)" = "Darwin" ]; then
+if [ -f "Brewfile" ] && [ "$(uname -s)" = "Darwin" ] && [ "$SKIP_BREW" != "1" ]; then
brew bundle check >/dev/null 2>&1 || {
echo "==> Installing Homebrew dependencies…"
brew bundle
diff --git a/src/core.ts b/src/core.ts
index 18520c79c7..c36859eb9b 100644
--- a/src/core.ts
+++ b/src/core.ts
@@ -48,8 +48,8 @@ async function defaultParseResponse(props: APIResponseProps): Promise {
}
const contentType = response.headers.get('content-type');
- const isJSON =
- contentType?.includes('application/json') || contentType?.includes('application/vnd.api+json');
+ const mediaType = contentType?.split(';')[0]?.trim();
+ const isJSON = mediaType?.includes('application/json') || mediaType?.endsWith('+json');
if (isJSON) {
const json = await response.json();
diff --git a/src/index.ts b/src/index.ts
index 1ce80b0d7e..90e280165c 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -24,6 +24,7 @@ import { BotManagement } from './resources/bot-management';
import { BrandProtection } from './resources/brand-protection';
import { ClientCertificates } from './resources/client-certificates';
import { CustomNameservers } from './resources/custom-nameservers';
+import { CustomPages } from './resources/custom-pages';
import { DCVDelegation } from './resources/dcv-delegation';
import { Filters } from './resources/filters';
import { IPs } from './resources/ips';
@@ -46,6 +47,7 @@ import { APIGateway } from './resources/api-gateway/api-gateway';
import { Argo } from './resources/argo/argo';
import { Billing } from './resources/billing/billing';
import { BotnetFeed } from './resources/botnet-feed/botnet-feed';
+import { BrowserRendering } from './resources/browser-rendering/browser-rendering';
import { Cache } from './resources/cache/cache';
import { Calls } from './resources/calls/calls';
import { CertificateAuthorities } from './resources/certificate-authorities/certificate-authorities';
@@ -73,6 +75,7 @@ import { LeakedCredentialChecks } from './resources/leaked-credential-checks/lea
import { LoadBalancers } from './resources/load-balancers/load-balancers';
import { Logpush } from './resources/logpush/logpush';
import { Logs } from './resources/logs/logs';
+import { MagicCloudNetworking } from './resources/magic-cloud-networking/magic-cloud-networking';
import { MagicNetworkMonitoring } from './resources/magic-network-monitoring/magic-network-monitoring';
import { MagicTransit } from './resources/magic-transit/magic-transit';
import { MTLSCertificates } from './resources/mtls-certificates/mtls-certificates';
@@ -104,6 +107,7 @@ import { Web3 } from './resources/web3/web3';
import { WorkersForPlatforms } from './resources/workers-for-platforms/workers-for-platforms';
import { Workers } from './resources/workers/workers';
import { Workflows } from './resources/workflows/workflows';
+import { Zaraz } from './resources/zaraz/zaraz';
import { ZeroTrust } from './resources/zero-trust/zero-trust';
import { Zones } from './resources/zones/zones';
@@ -294,6 +298,7 @@ export class Cloudflare extends Core.APIClient {
intel: API.Intel = new API.Intel(this);
magicTransit: API.MagicTransit = new API.MagicTransit(this);
magicNetworkMonitoring: API.MagicNetworkMonitoring = new API.MagicNetworkMonitoring(this);
+ magicCloudNetworking: API.MagicCloudNetworking = new API.MagicCloudNetworking(this);
networkInterconnects: API.NetworkInterconnects = new API.NetworkInterconnects(this);
mtlsCertificates: API.MTLSCertificates = new API.MTLSCertificates(this);
pages: API.Pages = new API.Pages(this);
@@ -314,6 +319,7 @@ export class Cloudflare extends Core.APIClient {
radar: API.Radar = new API.Radar(this);
botManagement: API.BotManagement = new API.BotManagement(this);
originPostQuantumEncryption: API.OriginPostQuantumEncryption = new API.OriginPostQuantumEncryption(this);
+ zaraz: API.Zaraz = new API.Zaraz(this);
speed: API.Speed = new API.Speed(this);
dcvDelegation: API.DCVDelegation = new API.DCVDelegation(this);
hostnames: API.Hostnames = new API.Hostnames(this);
@@ -332,6 +338,8 @@ export class Cloudflare extends Core.APIClient {
abuseReports: API.AbuseReports = new API.AbuseReports(this);
ai: API.AI = new API.AI(this);
securityCenter: API.SecurityCenter = new API.SecurityCenter(this);
+ browserRendering: API.BrowserRendering = new API.BrowserRendering(this);
+ customPages: API.CustomPages = new API.CustomPages(this);
protected override defaultQuery(): Core.DefaultQuery | undefined {
return this._options.defaultQuery;
@@ -508,6 +516,7 @@ Cloudflare.Images = Images;
Cloudflare.Intel = Intel;
Cloudflare.MagicTransit = MagicTransit;
Cloudflare.MagicNetworkMonitoring = MagicNetworkMonitoring;
+Cloudflare.MagicCloudNetworking = MagicCloudNetworking;
Cloudflare.NetworkInterconnects = NetworkInterconnects;
Cloudflare.MTLSCertificates = MTLSCertificates;
Cloudflare.Pages = Pages;
@@ -528,6 +537,7 @@ Cloudflare.URLScanner = URLScanner;
Cloudflare.Radar = Radar;
Cloudflare.BotManagement = BotManagement;
Cloudflare.OriginPostQuantumEncryption = OriginPostQuantumEncryption;
+Cloudflare.Zaraz = Zaraz;
Cloudflare.Speed = Speed;
Cloudflare.DCVDelegation = DCVDelegation;
Cloudflare.Hostnames = Hostnames;
@@ -546,6 +556,8 @@ Cloudflare.ContentScanning = ContentScanning;
Cloudflare.AbuseReports = AbuseReports;
Cloudflare.AI = AI;
Cloudflare.SecurityCenter = SecurityCenter;
+Cloudflare.BrowserRendering = BrowserRendering;
+Cloudflare.CustomPages = CustomPages;
export declare namespace Cloudflare {
export type RequestOptions = Core.RequestOptions;
@@ -676,6 +688,8 @@ export declare namespace Cloudflare {
export { MagicNetworkMonitoring as MagicNetworkMonitoring };
+ export { MagicCloudNetworking as MagicCloudNetworking };
+
export { NetworkInterconnects as NetworkInterconnects };
export { MTLSCertificates as MTLSCertificates };
@@ -716,6 +730,8 @@ export declare namespace Cloudflare {
export { OriginPostQuantumEncryption as OriginPostQuantumEncryption };
+ export { Zaraz as Zaraz };
+
export { Speed as Speed };
export { DCVDelegation as DCVDelegation };
@@ -752,6 +768,10 @@ export declare namespace Cloudflare {
export { SecurityCenter as SecurityCenter };
+ export { BrowserRendering as BrowserRendering };
+
+ export { CustomPages as CustomPages };
+
export type ASN = API.ASN;
export type AuditLog = API.AuditLog;
export type CertificateCA = API.CertificateCA;
diff --git a/src/pagination.ts b/src/pagination.ts
index ef5967e709..8f6f5d7115 100644
--- a/src/pagination.ts
+++ b/src/pagination.ts
@@ -188,7 +188,7 @@ export class CursorPagination- extends AbstractPage
- implements Cursor
return {
params: {
- cursor: cursor,
+ cursor,
},
};
}
@@ -258,7 +258,7 @@ export class CursorLimitPagination
-
return {
params: {
- cursor: cursor,
+ cursor,
},
};
}
diff --git a/src/resources/abuse-reports.ts b/src/resources/abuse-reports.ts
index 5c2a567903..2ead570f74 100644
--- a/src/resources/abuse-reports.ts
+++ b/src/resources/abuse-reports.ts
@@ -35,196 +35,1574 @@ export class AbuseReports extends APIResource {
*/
export type AbuseReportCreateResponse = string;
-export interface AbuseReportCreateParams {
- /**
- * Path param: The account ID of the submitter.
- */
- account_id: string;
+export type AbuseReportCreateParams =
+ | AbuseReportCreateParams.AbuseReportsDmcaReport
+ | AbuseReportCreateParams.AbuseReportsTrademarkReport
+ | AbuseReportCreateParams.AbuseReportsGeneralReport
+ | AbuseReportCreateParams.AbuseReportsPhishingReport
+ | AbuseReportCreateParams.AbuseReportsChildrenAbuseReport
+ | AbuseReportCreateParams.AbuseReportsThreatReport
+ | AbuseReportCreateParams.AbuseReportsRegistrarWhoisReport
+ | AbuseReportCreateParams.AbuseReportsNcseiReport;
- /**
- * Body param: The abuse report type
- */
- act:
- | 'abuse_dmca'
- | 'abuse_trademark'
- | 'abuse_general'
- | 'abuse_phishing'
- | 'abuse_children'
- | 'abuse_threat'
- | 'abuse_registrar_whois'
- | 'abuse_ncsei';
+export declare namespace AbuseReportCreateParams {
+ export interface AbuseReportsDmcaReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
- /**
- * Body param: Can be `0` for false or `1` for true
- */
- agree: 0 | 1;
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1: string;
- /**
- * Body param: A valid email of the abuse reporter. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- email: string;
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name: string;
- /**
- * Body param: Should match the value provided in `email`
- */
- email2: string;
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree: 0 | 1;
- /**
- * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
- * and Trademark reports cannot be anonymous.
- */
- host_notification: 'send' | 'send-anon' | 'none';
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city: string;
- /**
- * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
- * and Trademark reports cannot be anonymous.
- */
- ncmec_notification: 'send' | 'send-anon' | 'none';
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country: string;
- /**
- * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
- * and Trademark reports cannot be anonymous.
- */
- owner_notification: 'send' | 'send-anon' | 'none';
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification: 'send' | 'send-anon' | 'none';
- /**
- * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
- * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
- * Each URL should be unique. This field may be released by Cloudflare to third
- * parties such as the Lumen Database (https://lumendatabase.org/).
- */
- urls: string;
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work: string;
- /**
- * Body param: Text not exceeding 100 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- address1?: string;
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
- /**
- * Body param: The name of the copyright holder. Text not exceeding 60 characters.
- * This field may be released by Cloudflare to third parties such as the Lumen
- * Database (https://lumendatabase.org/).
- */
- agent_name?: string;
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature: string;
- /**
- * Body param: Text not exceeding 255 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- city?: string;
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state: string;
- /**
- * Body param: Any additional comments about the infringement not exceeding 2000
- * characters
- */
- comments?: string;
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
- /**
- * Body param: Text not exceeding 100 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- company?: string;
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
- /**
- * Body param: Text not exceeding 255 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- country?: string;
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
- /**
- * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
- * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
- * addresses ought to be unique
- */
- destination_ips?: string;
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
- /**
- * Body param: A detailed description of the infringement, including any necessary
- * access details and the exact steps needed to view the content, not exceeding
- * 5000 characters
- */
- justification?: string;
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
- /**
- * Body param: Text not exceeding 255 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- name?: string;
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
- /**
- * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
- * report
- */
- ncsei_subject_representation?: boolean;
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification?: string;
- /**
- * Body param: Text not exceeding 255 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- original_work?: string;
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
- /**
- * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
- * The total size of the field should not exceed 2000 characters. Each individual
- * port/protocol should not exceed 100 characters. The list should not have more
- * than 30 unique ports and protocols.
- */
- ports_protocols?: string;
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification?: 'send' | 'send-anon' | 'none';
- /**
- * Body param: Required for DMCA reports, should be same as Name. An affirmation
- * that all information in the report is true and accurate while agreeing to the
- * policies of Cloudflare's abuse reports
- */
- signature?: string;
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation?: boolean;
- /**
- * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
- * list of source IPs should not exceed 30 IP addresses. Each one of the IP
- * addresses ought to be unique
- */
- source_ips?: string;
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
- /**
- * Body param: Text not exceeding 255 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- state?: string;
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
- /**
- * Body param: Text not exceeding 20 characters. This field may be released by
- * Cloudflare to third parties such as the Lumen Database
- * (https://lumendatabase.org/).
- */
- tele?: string;
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
- /**
- * Body param: Text not exceeding 255 characters
- */
- title?: string;
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
- /**
- * Body param: Text not exceeding 1000 characters
- */
- trademark_number?: string;
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number?: string;
- /**
- * Body param: Text not exceeding 1000 characters
- */
- trademark_office?: string;
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office?: string;
- /**
- * Body param: Text not exceeding 1000 characters
- */
- trademark_symbol?: string;
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
+
+ export interface AbuseReportsTrademarkReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol: string;
+
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1?: string;
+
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name?: string;
+
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree?: 0 | 1;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city?: string;
+
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
+
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
+
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification?: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation?: boolean;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work?: string;
+
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
+
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state?: string;
+
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
+
+ export interface AbuseReportsGeneralReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1?: string;
+
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name?: string;
+
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree?: 0 | 1;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city?: string;
+
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
+
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
+
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification?: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation?: boolean;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work?: string;
+
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
+
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state?: string;
+
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
+
+ export interface AbuseReportsPhishingReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1?: string;
+
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name?: string;
+
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree?: 0 | 1;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city?: string;
+
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
+
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
+
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification?: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation?: boolean;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work?: string;
+
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
+
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state?: string;
+
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
+
+ export interface AbuseReportsChildrenAbuseReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1?: string;
+
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name?: string;
+
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree?: 0 | 1;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city?: string;
+
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
+
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
+
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
+
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation?: boolean;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work?: string;
+
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
+
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state?: string;
+
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
+
+ export interface AbuseReportsThreatReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1?: string;
+
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name?: string;
+
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree?: 0 | 1;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city?: string;
+
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
+
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
+
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification?: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation?: boolean;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work?: string;
+
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
+
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state?: string;
+
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
+
+ export interface AbuseReportsRegistrarWhoisReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1?: string;
+
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name?: string;
+
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree?: 0 | 1;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city?: string;
+
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
+
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
+
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification?: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification?: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation?: boolean;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work?: string;
+
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
+
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state?: string;
+
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
+
+ export interface AbuseReportsNcseiReport {
+ /**
+ * Path param: The account ID of the submitter.
+ */
+ account_id: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ host_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: If the submitter is the target of NCSEI in the URLs of the abuse
+ * report.
+ */
+ ncsei_subject_representation: boolean;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ owner_notification: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: The abuse report type
+ */
+ act?:
+ | 'abuse_dmca'
+ | 'abuse_trademark'
+ | 'abuse_general'
+ | 'abuse_phishing'
+ | 'abuse_children'
+ | 'abuse_threat'
+ | 'abuse_registrar_whois'
+ | 'abuse_ncsei';
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ address1?: string;
+
+ /**
+ * Body param: The name of the copyright holder. Text not exceeding 60 characters.
+ * This field may be released by Cloudflare to third parties such as the Lumen
+ * Database (https://lumendatabase.org/).
+ */
+ agent_name?: string;
+
+ /**
+ * Body param: Can be `0` for false or `1` for true. Must be value: 1 for DMCA
+ * reports
+ */
+ agree?: 0 | 1;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ city?: string;
+
+ /**
+ * Body param: Any additional comments about the infringement not exceeding 2000
+ * characters
+ */
+ comments?: string;
+
+ /**
+ * Body param: Text not exceeding 100 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ company?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ country?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of destination IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ destination_ips?: string;
+
+ /**
+ * Body param: A valid email of the abuse reporter. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ email?: string;
+
+ /**
+ * Body param: Should match the value provided in `email`
+ */
+ email2?: string;
+
+ /**
+ * Body param: A detailed description of the infringement, including any necessary
+ * access details and the exact steps needed to view the content, not exceeding
+ * 5000 characters
+ */
+ justification?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ name?: string;
+
+ /**
+ * Body param: Notification type based on the abuse type. NOTE: Copyright (DMCA)
+ * and Trademark reports cannot be anonymous.
+ */
+ ncmec_notification?: 'send' | 'send-anon' | 'none';
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ original_work?: string;
+
+ /**
+ * Body param: A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP.
+ * The total size of the field should not exceed 2000 characters. Each individual
+ * port/protocol should not exceed 100 characters. The list should not have more
+ * than 30 unique ports and protocols.
+ */
+ ports_protocols?: string;
+
+ /**
+ * Body param: Required for DMCA reports, should be same as Name. An affirmation
+ * that all information in the report is true and accurate while agreeing to the
+ * policies of Cloudflare's abuse reports
+ */
+ signature?: string;
+
+ /**
+ * Body param: A list of IP addresses separated by ‘ ’ (new line character). The
+ * list of source IPs should not exceed 30 IP addresses. Each one of the IP
+ * addresses ought to be unique
+ */
+ source_ips?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ state?: string;
+
+ /**
+ * Body param: Text not exceeding 20 characters. This field may be released by
+ * Cloudflare to third parties such as the Lumen Database
+ * (https://lumendatabase.org/).
+ */
+ tele?: string;
+
+ /**
+ * Body param: Text not exceeding 255 characters
+ */
+ title?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_number?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_office?: string;
+
+ /**
+ * Body param: Text not exceeding 1000 characters
+ */
+ trademark_symbol?: string;
+
+ /**
+ * Body param: A list of valid URLs separated by ‘ ’ (new line character). The list
+ * of the URLs should not exceed 250 URLs. All URLs should have the same hostname.
+ * Each URL should be unique. This field may be released by Cloudflare to third
+ * parties such as the Lumen Database (https://lumendatabase.org/).
+ */
+ urls?: string;
+ }
}
diff --git a/src/resources/accounts.ts b/src/resources/accounts.ts
new file mode 100644
index 0000000000..b9db299140
--- /dev/null
+++ b/src/resources/accounts.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './accounts/index';
diff --git a/src/resources/accounts/logs.ts b/src/resources/accounts/logs.ts
new file mode 100644
index 0000000000..9d295478f1
--- /dev/null
+++ b/src/resources/accounts/logs.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './logs/index';
diff --git a/src/resources/accounts/tokens.ts b/src/resources/accounts/tokens.ts
new file mode 100644
index 0000000000..9363aa3c98
--- /dev/null
+++ b/src/resources/accounts/tokens.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './tokens/index';
diff --git a/src/resources/accounts/tokens/permission-groups.ts b/src/resources/accounts/tokens/permission-groups.ts
index c2a84e0c80..f6212383a1 100644
--- a/src/resources/accounts/tokens/permission-groups.ts
+++ b/src/resources/accounts/tokens/permission-groups.ts
@@ -40,9 +40,49 @@ export class PermissionGroupListResponsesSinglePage extends SinglePage {}
-export type PermissionGroupListResponse = unknown;
+export interface PermissionGroupListResponse {
+ /**
+ * Public ID.
+ */
+ id?: string;
+
+ /**
+ * Permission Group Name
+ */
+ name?: string;
+
+ /**
+ * Resources to which the Permission Group is scoped
+ */
+ scopes?: Array<
+ | 'com.cloudflare.api.account'
+ | 'com.cloudflare.api.account.zone'
+ | 'com.cloudflare.api.user'
+ | 'com.cloudflare.edge.r2.bucket'
+ >;
+}
-export type PermissionGroupGetResponse = unknown;
+export interface PermissionGroupGetResponse {
+ /**
+ * Public ID.
+ */
+ id?: string;
+
+ /**
+ * Permission Group Name
+ */
+ name?: string;
+
+ /**
+ * Resources to which the Permission Group is scoped
+ */
+ scopes?: Array<
+ | 'com.cloudflare.api.account'
+ | 'com.cloudflare.api.account.zone'
+ | 'com.cloudflare.api.user'
+ | 'com.cloudflare.edge.r2.bucket'
+ >;
+}
export interface PermissionGroupListParams {
/**
diff --git a/src/resources/accounts/tokens/tokens.ts b/src/resources/accounts/tokens/tokens.ts
index 2127cfb9c9..8013f37fa5 100644
--- a/src/resources/accounts/tokens/tokens.ts
+++ b/src/resources/accounts/tokens/tokens.ts
@@ -284,35 +284,35 @@ export interface TokenUpdateParams {
account_id: string;
/**
- * Body param:
+ * Body param: Token name.
*/
- condition?: TokenUpdateParams.Condition;
+ name: string;
/**
- * Body param: The expiration time on or after which the JWT MUST NOT be accepted
- * for processing.
+ * Body param: List of access policies assigned to the token.
*/
- expires_on?: string;
+ policies: Array;
/**
- * Body param: Token name.
+ * Body param: Status of the token.
*/
- name?: string;
+ status: 'active' | 'disabled' | 'expired';
/**
- * Body param: The time before which the token MUST NOT be accepted for processing.
+ * Body param:
*/
- not_before?: string;
+ condition?: TokenUpdateParams.Condition;
/**
- * Body param: List of access policies assigned to the token.
+ * Body param: The expiration time on or after which the JWT MUST NOT be accepted
+ * for processing.
*/
- policies?: Array;
+ expires_on?: string;
/**
- * Body param: Status of the token.
+ * Body param: The time before which the token MUST NOT be accepted for processing.
*/
- status?: 'active' | 'disabled' | 'expired';
+ not_before?: string;
}
export namespace TokenUpdateParams {
diff --git a/src/resources/acm.ts b/src/resources/acm.ts
new file mode 100644
index 0000000000..fd643e8815
--- /dev/null
+++ b/src/resources/acm.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './acm/index';
diff --git a/src/resources/addressing.ts b/src/resources/addressing.ts
new file mode 100644
index 0000000000..52692935a9
--- /dev/null
+++ b/src/resources/addressing.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './addressing/index';
diff --git a/src/resources/addressing/address-maps.ts b/src/resources/addressing/address-maps.ts
new file mode 100644
index 0000000000..e30ee999ae
--- /dev/null
+++ b/src/resources/addressing/address-maps.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './address-maps/index';
diff --git a/src/resources/addressing/prefixes.ts b/src/resources/addressing/prefixes.ts
new file mode 100644
index 0000000000..68828b7e91
--- /dev/null
+++ b/src/resources/addressing/prefixes.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './prefixes/index';
diff --git a/src/resources/addressing/regional-hostnames.ts b/src/resources/addressing/regional-hostnames.ts
new file mode 100644
index 0000000000..db6639dd27
--- /dev/null
+++ b/src/resources/addressing/regional-hostnames.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './regional-hostnames/index';
diff --git a/src/resources/ai-gateway.ts b/src/resources/ai-gateway.ts
new file mode 100644
index 0000000000..bb4a5985f1
--- /dev/null
+++ b/src/resources/ai-gateway.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './ai-gateway/index';
diff --git a/src/resources/ai-gateway/ai-gateway.ts b/src/resources/ai-gateway/ai-gateway.ts
index 8735457a5f..86aad037e5 100644
--- a/src/resources/ai-gateway/ai-gateway.ts
+++ b/src/resources/ai-gateway/ai-gateway.ts
@@ -54,6 +54,8 @@ import {
LogResponseResponse,
Logs,
} from './logs';
+import * as URLsAPI from './urls';
+import { URLGetParams, URLGetResponse, URLs } from './urls';
import { V4PagePaginationArray, type V4PagePaginationArrayParams } from '../../pagination';
export class AIGateway extends APIResource {
@@ -61,6 +63,7 @@ export class AIGateway extends APIResource {
logs: LogsAPI.Logs = new LogsAPI.Logs(this._client);
datasets: DatasetsAPI.Datasets = new DatasetsAPI.Datasets(this._client);
evaluations: EvaluationsAPI.Evaluations = new EvaluationsAPI.Evaluations(this._client);
+ urls: URLsAPI.URLs = new URLsAPI.URLs(this._client);
/**
* Create a new Gateway
@@ -177,6 +180,8 @@ export interface AIGatewayCreateResponse {
log_management?: number | null;
+ log_management_strategy?: 'STOP_INSERTING' | 'DELETE_OLDEST' | null;
+
logpush?: boolean;
logpush_public_key?: string | null;
@@ -214,6 +219,8 @@ export interface AIGatewayUpdateResponse {
log_management?: number | null;
+ log_management_strategy?: 'STOP_INSERTING' | 'DELETE_OLDEST' | null;
+
logpush?: boolean;
logpush_public_key?: string | null;
@@ -251,6 +258,8 @@ export interface AIGatewayListResponse {
log_management?: number | null;
+ log_management_strategy?: 'STOP_INSERTING' | 'DELETE_OLDEST' | null;
+
logpush?: boolean;
logpush_public_key?: string | null;
@@ -288,6 +297,8 @@ export interface AIGatewayDeleteResponse {
log_management?: number | null;
+ log_management_strategy?: 'STOP_INSERTING' | 'DELETE_OLDEST' | null;
+
logpush?: boolean;
logpush_public_key?: string | null;
@@ -325,6 +336,8 @@ export interface AIGatewayGetResponse {
log_management?: number | null;
+ log_management_strategy?: 'STOP_INSERTING' | 'DELETE_OLDEST' | null;
+
logpush?: boolean;
logpush_public_key?: string | null;
@@ -381,6 +394,11 @@ export interface AIGatewayCreateParams {
*/
log_management?: number | null;
+ /**
+ * Body param:
+ */
+ log_management_strategy?: 'STOP_INSERTING' | 'DELETE_OLDEST' | null;
+
/**
* Body param:
*/
@@ -438,6 +456,11 @@ export interface AIGatewayUpdateParams {
*/
log_management?: number | null;
+ /**
+ * Body param:
+ */
+ log_management_strategy?: 'STOP_INSERTING' | 'DELETE_OLDEST' | null;
+
/**
* Body param:
*/
@@ -477,6 +500,7 @@ AIGateway.Datasets = Datasets;
AIGateway.DatasetListResponsesV4PagePaginationArray = DatasetListResponsesV4PagePaginationArray;
AIGateway.Evaluations = Evaluations;
AIGateway.EvaluationListResponsesV4PagePaginationArray = EvaluationListResponsesV4PagePaginationArray;
+AIGateway.URLs = URLs;
export declare namespace AIGateway {
export {
@@ -530,4 +554,6 @@ export declare namespace AIGateway {
type EvaluationDeleteParams as EvaluationDeleteParams,
type EvaluationGetParams as EvaluationGetParams,
};
+
+ export { URLs as URLs, type URLGetResponse as URLGetResponse, type URLGetParams as URLGetParams };
}
diff --git a/src/resources/ai-gateway/index.ts b/src/resources/ai-gateway/index.ts
index b79e728816..462f59f88a 100644
--- a/src/resources/ai-gateway/index.ts
+++ b/src/resources/ai-gateway/index.ts
@@ -49,3 +49,4 @@ export {
type LogRequestParams,
type LogResponseParams,
} from './logs';
+export { URLs, type URLGetResponse, type URLGetParams } from './urls';
diff --git a/src/resources/ai-gateway/urls.ts b/src/resources/ai-gateway/urls.ts
new file mode 100644
index 0000000000..0d75440e5c
--- /dev/null
+++ b/src/resources/ai-gateway/urls.ts
@@ -0,0 +1,34 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+import { APIResource } from '../../resource';
+import * as Core from '../../core';
+
+export class URLs extends APIResource {
+ /**
+ * Get Gateway URL
+ */
+ get(
+ gatewayId: string,
+ provider: string,
+ params: URLGetParams,
+ options?: Core.RequestOptions,
+ ): Core.APIPromise {
+ const { account_id } = params;
+ return (
+ this._client.get(
+ `/accounts/${account_id}/ai-gateway/gateways/${gatewayId}/url/${provider}`,
+ options,
+ ) as Core.APIPromise<{ result: URLGetResponse }>
+ )._thenUnwrap((obj) => obj.result);
+ }
+}
+
+export type URLGetResponse = string;
+
+export interface URLGetParams {
+ account_id: string;
+}
+
+export declare namespace URLs {
+ export { type URLGetResponse as URLGetResponse, type URLGetParams as URLGetParams };
+}
diff --git a/src/resources/ai.ts b/src/resources/ai.ts
new file mode 100644
index 0000000000..6bea0b91f3
--- /dev/null
+++ b/src/resources/ai.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './ai/index';
diff --git a/src/resources/ai/ai.ts b/src/resources/ai/ai.ts
index 378d5d5773..22abfb0a7d 100644
--- a/src/resources/ai/ai.ts
+++ b/src/resources/ai/ai.ts
@@ -472,6 +472,11 @@ export declare namespace AIRunParams {
*/
repetition_penalty?: number;
+ /**
+ * Body param:
+ */
+ response_format?: Prompt.ResponseFormat;
+
/**
* Body param: Random seed for reproducibility of the generation.
*/
@@ -504,6 +509,14 @@ export declare namespace AIRunParams {
top_p?: number;
}
+ export namespace Prompt {
+ export interface ResponseFormat {
+ json_schema?: unknown;
+
+ type?: 'json_object' | 'json_schema';
+ }
+ }
+
export interface Messages {
/**
* Path param:
@@ -541,6 +554,11 @@ export declare namespace AIRunParams {
*/
repetition_penalty?: number;
+ /**
+ * Body param:
+ */
+ response_format?: Messages.ResponseFormat;
+
/**
* Body param: Random seed for reproducibility of the generation.
*/
@@ -596,6 +614,12 @@ export declare namespace AIRunParams {
name: string;
}
+ export interface ResponseFormat {
+ json_schema?: unknown;
+
+ type?: 'json_object' | 'json_schema';
+ }
+
export interface UnionMember0 {
/**
* A brief description of what the tool does.
diff --git a/src/resources/ai/finetunes.ts b/src/resources/ai/finetunes.ts
new file mode 100644
index 0000000000..af0d27842e
--- /dev/null
+++ b/src/resources/ai/finetunes.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './finetunes/index';
diff --git a/src/resources/ai/models.ts b/src/resources/ai/models.ts
new file mode 100644
index 0000000000..8ce5add23b
--- /dev/null
+++ b/src/resources/ai/models.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './models/index';
diff --git a/src/resources/alerting.ts b/src/resources/alerting.ts
new file mode 100644
index 0000000000..462cb94b23
--- /dev/null
+++ b/src/resources/alerting.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './alerting/index';
diff --git a/src/resources/alerting/destinations.ts b/src/resources/alerting/destinations.ts
new file mode 100644
index 0000000000..6dcf766857
--- /dev/null
+++ b/src/resources/alerting/destinations.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './destinations/index';
diff --git a/src/resources/alerting/destinations/webhooks.ts b/src/resources/alerting/destinations/webhooks.ts
index 266fb0ef19..eebca4e092 100644
--- a/src/resources/alerting/destinations/webhooks.ts
+++ b/src/resources/alerting/destinations/webhooks.ts
@@ -111,13 +111,6 @@ export interface Webhooks {
*/
name?: string;
- /**
- * Optional secret that will be passed in the `cf-webhook-auth` header when
- * dispatching generic webhook notifications or formatted for supported
- * destinations. Secrets are not returned in any API response body.
- */
- secret?: string;
-
/**
* Type of webhook endpoint.
*/
diff --git a/src/resources/api-gateway.ts b/src/resources/api-gateway.ts
new file mode 100644
index 0000000000..58d1b95125
--- /dev/null
+++ b/src/resources/api-gateway.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './api-gateway/index';
diff --git a/src/resources/api-gateway/discovery.ts b/src/resources/api-gateway/discovery.ts
new file mode 100644
index 0000000000..2408c50409
--- /dev/null
+++ b/src/resources/api-gateway/discovery.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './discovery/index';
diff --git a/src/resources/api-gateway/expression-template.ts b/src/resources/api-gateway/expression-template.ts
new file mode 100644
index 0000000000..fac6bf8cc4
--- /dev/null
+++ b/src/resources/api-gateway/expression-template.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './expression-template/index';
diff --git a/src/resources/api-gateway/operations.ts b/src/resources/api-gateway/operations.ts
new file mode 100644
index 0000000000..3031d6c96e
--- /dev/null
+++ b/src/resources/api-gateway/operations.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './operations/index';
diff --git a/src/resources/api-gateway/settings.ts b/src/resources/api-gateway/settings.ts
new file mode 100644
index 0000000000..2200dbfabb
--- /dev/null
+++ b/src/resources/api-gateway/settings.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './settings/index';
diff --git a/src/resources/api-gateway/user-schemas.ts b/src/resources/api-gateway/user-schemas.ts
new file mode 100644
index 0000000000..62f21ce9c4
--- /dev/null
+++ b/src/resources/api-gateway/user-schemas.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './user-schemas/index';
diff --git a/src/resources/argo.ts b/src/resources/argo.ts
new file mode 100644
index 0000000000..3be0c293f0
--- /dev/null
+++ b/src/resources/argo.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './argo/index';
diff --git a/src/resources/audit-logs.ts b/src/resources/audit-logs.ts
index 8d4fdcc2a4..51701db2d8 100644
--- a/src/resources/audit-logs.ts
+++ b/src/resources/audit-logs.ts
@@ -48,7 +48,7 @@ export interface AuditLogListParams extends V4PagePaginationArrayParams {
* Query param: Limits the returned results to logs older than the specified date.
* A `full-date` that conforms to RFC3339.
*/
- before?: string | string;
+ before?: (string & {}) | (string & {});
/**
* Query param: Changes the direction of the chronological sorting.
@@ -69,7 +69,7 @@ export interface AuditLogListParams extends V4PagePaginationArrayParams {
* Query param: Limits the returned results to logs newer than the specified date.
* A `full-date` that conforms to RFC3339.
*/
- since?: string | string;
+ since?: (string & {}) | (string & {});
/**
* Query param:
diff --git a/src/resources/billing.ts b/src/resources/billing.ts
new file mode 100644
index 0000000000..565ff303e6
--- /dev/null
+++ b/src/resources/billing.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './billing/index';
diff --git a/src/resources/botnet-feed.ts b/src/resources/botnet-feed.ts
new file mode 100644
index 0000000000..301c613034
--- /dev/null
+++ b/src/resources/botnet-feed.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './botnet-feed/index';
diff --git a/src/resources/botnet-feed/configs.ts b/src/resources/botnet-feed/configs.ts
new file mode 100644
index 0000000000..2aec1f46e7
--- /dev/null
+++ b/src/resources/botnet-feed/configs.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './configs/index';
diff --git a/src/resources/browser-rendering.ts b/src/resources/browser-rendering.ts
new file mode 100644
index 0000000000..3443f02977
--- /dev/null
+++ b/src/resources/browser-rendering.ts
@@ -0,0 +1,3 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+export * from './browser-rendering/index';
diff --git a/src/resources/browser-rendering/browser-rendering.ts b/src/resources/browser-rendering/browser-rendering.ts
new file mode 100644
index 0000000000..fceb64045a
--- /dev/null
+++ b/src/resources/browser-rendering/browser-rendering.ts
@@ -0,0 +1,55 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+import { APIResource } from '../../resource';
+import * as ContentAPI from './content';
+import { Content, ContentCreateParams, ContentCreateResponse } from './content';
+import * as PDFAPI from './pdf';
+import { PDF, PDFCreateParams } from './pdf';
+import * as ScrapeAPI from './scrape';
+import { Scrape, ScrapeCreateParams, ScrapeCreateResponse } from './scrape';
+import * as ScreenshotAPI from './screenshot';
+import { Screenshot, ScreenshotCreateParams, ScreenshotCreateResponse } from './screenshot';
+import * as SnapshotAPI from './snapshot';
+import { Snapshot, SnapshotCreateParams, SnapshotCreateResponse } from './snapshot';
+
+export class BrowserRendering extends APIResource {
+ content: ContentAPI.Content = new ContentAPI.Content(this._client);
+ pdf: PDFAPI.PDF = new PDFAPI.PDF(this._client);
+ scrape: ScrapeAPI.Scrape = new ScrapeAPI.Scrape(this._client);
+ screenshot: ScreenshotAPI.Screenshot = new ScreenshotAPI.Screenshot(this._client);
+ snapshot: SnapshotAPI.Snapshot = new SnapshotAPI.Snapshot(this._client);
+}
+
+BrowserRendering.Content = Content;
+BrowserRendering.PDF = PDF;
+BrowserRendering.Scrape = Scrape;
+BrowserRendering.Screenshot = Screenshot;
+BrowserRendering.Snapshot = Snapshot;
+
+export declare namespace BrowserRendering {
+ export {
+ Content as Content,
+ type ContentCreateResponse as ContentCreateResponse,
+ type ContentCreateParams as ContentCreateParams,
+ };
+
+ export { PDF as PDF, type PDFCreateParams as PDFCreateParams };
+
+ export {
+ Scrape as Scrape,
+ type ScrapeCreateResponse as ScrapeCreateResponse,
+ type ScrapeCreateParams as ScrapeCreateParams,
+ };
+
+ export {
+ Screenshot as Screenshot,
+ type ScreenshotCreateResponse as ScreenshotCreateResponse,
+ type ScreenshotCreateParams as ScreenshotCreateParams,
+ };
+
+ export {
+ Snapshot as Snapshot,
+ type SnapshotCreateResponse as SnapshotCreateResponse,
+ type SnapshotCreateParams as SnapshotCreateParams,
+ };
+}
diff --git a/src/resources/browser-rendering/content.ts b/src/resources/browser-rendering/content.ts
new file mode 100644
index 0000000000..39cfb7333c
--- /dev/null
+++ b/src/resources/browser-rendering/content.ts
@@ -0,0 +1,291 @@
+// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+import { APIResource } from '../../resource';
+import * as Core from '../../core';
+
+export class Content extends APIResource {
+ /**
+ * Fetches rendered HTML content from provided URL or HTML. Check available options
+ * like `gotoOptions` and `waitFor*` to control page load behaviour.
+ */
+ create(params: ContentCreateParams, options?: Core.RequestOptions): Core.APIPromise {
+ const { account_id, cacheTTL, ...body } = params;
+ return (
+ this._client.post(`/accounts/${account_id}/browser-rendering/content`, {
+ query: { cacheTTL },
+ body,
+ ...options,
+ }) as Core.APIPromise<{ result: ContentCreateResponse }>
+ )._thenUnwrap((obj) => obj.result);
+ }
+}
+
+/**
+ * HTML content
+ */
+export type ContentCreateResponse = string;
+
+export interface ContentCreateParams {
+ /**
+ * Path param: Account ID.
+ */
+ account_id: string;
+
+ /**
+ * Query param: Cache TTL default is 5s. Set to 0 to disable.
+ */
+ cacheTTL?: number;
+
+ /**
+ * Body param: Adds a `