Skip to content

Commit 9911931

Browse files
stainless-app[bot]meorphis
authored andcommitted
feat(api): api update (#2123)
1 parent 601da6b commit 9911931

23 files changed

+3610
-23
lines changed

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
configured_endpoints: 1380
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-9c8ad1b8591db7a88106030eb20c396404f23056d1fe47ae2ae322923872606f.yml
1+
configured_endpoints: 1416
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-3f87896b62cce36e33c03f416ad98add2717ccd78f1743925c160a6c6a67ff15.yml

api.md

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1239,6 +1239,15 @@ Methods:
12391239
Types:
12401240

12411241
- <code><a href="./src/resources/filters.ts">FirewallFilter</a></code>
1242+
- <code><a href="./src/resources/filters.ts">FilterCreateResponse</a></code>
1243+
1244+
Methods:
1245+
1246+
- <code title="post /zones/{zone_id}/filters">client.filters.<a href="./src/resources/filters.ts">create</a>({ ...params }) -> FilterCreateResponse | null</code>
1247+
- <code title="put /zones/{zone_id}/filters/{filter_id}">client.filters.<a href="./src/resources/filters.ts">update</a>(filterId, { ...params }) -> FirewallFilter</code>
1248+
- <code title="get /zones/{zone_id}/filters">client.filters.<a href="./src/resources/filters.ts">list</a>({ ...params }) -> FirewallFiltersV4PagePaginationArray</code>
1249+
- <code title="delete /zones/{zone_id}/filters/{filter_id}">client.filters.<a href="./src/resources/filters.ts">delete</a>(filterId, { ...params }) -> FirewallFilter</code>
1250+
- <code title="get /zones/{zone_id}/filters/{filter_id}">client.filters.<a href="./src/resources/filters.ts">get</a>(filterId, { ...params }) -> FirewallFilter</code>
12421251

12431252
# Firewall
12441253

@@ -1251,6 +1260,15 @@ Types:
12511260
- <code><a href="./src/resources/firewall/lockdowns.ts">LockdownCIDRConfiguration</a></code>
12521261
- <code><a href="./src/resources/firewall/lockdowns.ts">LockdownIPConfiguration</a></code>
12531262
- <code><a href="./src/resources/firewall/lockdowns.ts">LockdownURL</a></code>
1263+
- <code><a href="./src/resources/firewall/lockdowns.ts">LockdownDeleteResponse</a></code>
1264+
1265+
Methods:
1266+
1267+
- <code title="post /zones/{zone_id}/firewall/lockdowns">client.firewall.lockdowns.<a href="./src/resources/firewall/lockdowns.ts">create</a>({ ...params }) -> Lockdown</code>
1268+
- <code title="put /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}">client.firewall.lockdowns.<a href="./src/resources/firewall/lockdowns.ts">update</a>(lockDownsId, { ...params }) -> Lockdown</code>
1269+
- <code title="get /zones/{zone_id}/firewall/lockdowns">client.firewall.lockdowns.<a href="./src/resources/firewall/lockdowns.ts">list</a>({ ...params }) -> LockdownsV4PagePaginationArray</code>
1270+
- <code title="delete /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}">client.firewall.lockdowns.<a href="./src/resources/firewall/lockdowns.ts">delete</a>(lockDownsId, { ...params }) -> LockdownDeleteResponse</code>
1271+
- <code title="get /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}">client.firewall.lockdowns.<a href="./src/resources/firewall/lockdowns.ts">get</a>(lockDownsId, { ...params }) -> Lockdown</code>
12541272

12551273
## Rules
12561274

@@ -1259,6 +1277,17 @@ Types:
12591277
- <code><a href="./src/resources/firewall/rules.ts">FirewallRule</a></code>
12601278
- <code><a href="./src/resources/firewall/rules.ts">Product</a></code>
12611279
- <code><a href="./src/resources/firewall/rules.ts">DeletedFilter</a></code>
1280+
- <code><a href="./src/resources/firewall/rules.ts">RuleCreateResponse</a></code>
1281+
- <code><a href="./src/resources/firewall/rules.ts">RuleEditResponse</a></code>
1282+
1283+
Methods:
1284+
1285+
- <code title="post /zones/{zone_id}/firewall/rules">client.firewall.rules.<a href="./src/resources/firewall/rules.ts">create</a>({ ...params }) -> RuleCreateResponse | null</code>
1286+
- <code title="put /zones/{zone_id}/firewall/rules/{rule_id}">client.firewall.rules.<a href="./src/resources/firewall/rules.ts">update</a>(ruleId, { ...params }) -> FirewallRule</code>
1287+
- <code title="get /zones/{zone_id}/firewall/rules">client.firewall.rules.<a href="./src/resources/firewall/rules.ts">list</a>({ ...params }) -> FirewallRulesV4PagePaginationArray</code>
1288+
- <code title="delete /zones/{zone_id}/firewall/rules/{rule_id}">client.firewall.rules.<a href="./src/resources/firewall/rules.ts">delete</a>(ruleId, { ...params }) -> FirewallRule</code>
1289+
- <code title="patch /zones/{zone_id}/firewall/rules/{rule_id}">client.firewall.rules.<a href="./src/resources/firewall/rules.ts">edit</a>(ruleId, { ...params }) -> RuleEditResponse | null</code>
1290+
- <code title="get /zones/{zone_id}/firewall/rules/{rule_id}">client.firewall.rules.<a href="./src/resources/firewall/rules.ts">get</a>(ruleId, { ...params }) -> FirewallRule</code>
12621291

12631292
## AccessRules
12641293

@@ -1271,14 +1300,36 @@ Types:
12711300
- <code><a href="./src/resources/firewall/access-rules.ts">IPV6Configuration</a></code>
12721301
- <code><a href="./src/resources/firewall/access-rules.ts">AccessRuleCreateResponse</a></code>
12731302
- <code><a href="./src/resources/firewall/access-rules.ts">AccessRuleListResponse</a></code>
1303+
- <code><a href="./src/resources/firewall/access-rules.ts">AccessRuleDeleteResponse</a></code>
1304+
- <code><a href="./src/resources/firewall/access-rules.ts">AccessRuleEditResponse</a></code>
1305+
- <code><a href="./src/resources/firewall/access-rules.ts">AccessRuleGetResponse</a></code>
12741306

12751307
Methods:
12761308

12771309
- <code title="post /{account_or_zone}/{account_or_zone_id}/firewall/access_rules/rules">client.firewall.accessRules.<a href="./src/resources/firewall/access-rules.ts">create</a>({ ...params }) -> AccessRuleCreateResponse</code>
12781310
- <code title="get /{account_or_zone}/{account_or_zone_id}/firewall/access_rules/rules">client.firewall.accessRules.<a href="./src/resources/firewall/access-rules.ts">list</a>({ ...params }) -> AccessRuleListResponsesV4PagePaginationArray</code>
1311+
- <code title="delete /{account_or_zone}/{account_or_zone_id}/firewall/access_rules/rules/{rule_id}">client.firewall.accessRules.<a href="./src/resources/firewall/access-rules.ts">delete</a>(ruleId, { ...params }) -> AccessRuleDeleteResponse | null</code>
1312+
- <code title="patch /{account_or_zone}/{account_or_zone_id}/firewall/access_rules/rules/{rule_id}">client.firewall.accessRules.<a href="./src/resources/firewall/access-rules.ts">edit</a>(ruleId, { ...params }) -> AccessRuleEditResponse</code>
1313+
- <code title="get /{account_or_zone}/{account_or_zone_id}/firewall/access_rules/rules/{rule_id}">client.firewall.accessRules.<a href="./src/resources/firewall/access-rules.ts">get</a>(ruleId, { ...params }) -> AccessRuleGetResponse</code>
12791314

12801315
## UARules
12811316

1317+
Types:
1318+
1319+
- <code><a href="./src/resources/firewall/ua-rules.ts">UARuleCreateResponse</a></code>
1320+
- <code><a href="./src/resources/firewall/ua-rules.ts">UARuleUpdateResponse</a></code>
1321+
- <code><a href="./src/resources/firewall/ua-rules.ts">UARuleListResponse</a></code>
1322+
- <code><a href="./src/resources/firewall/ua-rules.ts">UARuleDeleteResponse</a></code>
1323+
- <code><a href="./src/resources/firewall/ua-rules.ts">UARuleGetResponse</a></code>
1324+
1325+
Methods:
1326+
1327+
- <code title="post /zones/{zone_id}/firewall/ua_rules">client.firewall.uaRules.<a href="./src/resources/firewall/ua-rules.ts">create</a>({ ...params }) -> UARuleCreateResponse</code>
1328+
- <code title="put /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}">client.firewall.uaRules.<a href="./src/resources/firewall/ua-rules.ts">update</a>(uaRuleId, { ...params }) -> UARuleUpdateResponse</code>
1329+
- <code title="get /zones/{zone_id}/firewall/ua_rules">client.firewall.uaRules.<a href="./src/resources/firewall/ua-rules.ts">list</a>({ ...params }) -> UARuleListResponsesV4PagePaginationArray</code>
1330+
- <code title="delete /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}">client.firewall.uaRules.<a href="./src/resources/firewall/ua-rules.ts">delete</a>(uaRuleId, { ...params }) -> UARuleDeleteResponse</code>
1331+
- <code title="get /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}">client.firewall.uaRules.<a href="./src/resources/firewall/ua-rules.ts">get</a>(uaRuleId, { ...params }) -> UARuleGetResponse</code>
1332+
12821333
## WAF
12831334

12841335
### Overrides
@@ -1289,9 +1340,28 @@ Types:
12891340
- <code><a href="./src/resources/firewall/waf/overrides.ts">OverrideURL</a></code>
12901341
- <code><a href="./src/resources/firewall/waf/overrides.ts">RewriteAction</a></code>
12911342
- <code><a href="./src/resources/firewall/waf/overrides.ts">WAFRule</a></code>
1343+
- <code><a href="./src/resources/firewall/waf/overrides.ts">OverrideDeleteResponse</a></code>
1344+
1345+
Methods:
1346+
1347+
- <code title="post /zones/{zone_id}/firewall/waf/overrides">client.firewall.waf.overrides.<a href="./src/resources/firewall/waf/overrides.ts">create</a>({ ...params }) -> Override</code>
1348+
- <code title="put /zones/{zone_id}/firewall/waf/overrides/{overrides_id}">client.firewall.waf.overrides.<a href="./src/resources/firewall/waf/overrides.ts">update</a>(overridesId, { ...params }) -> Override</code>
1349+
- <code title="get /zones/{zone_id}/firewall/waf/overrides">client.firewall.waf.overrides.<a href="./src/resources/firewall/waf/overrides.ts">list</a>({ ...params }) -> OverridesV4PagePaginationArray</code>
1350+
- <code title="delete /zones/{zone_id}/firewall/waf/overrides/{overrides_id}">client.firewall.waf.overrides.<a href="./src/resources/firewall/waf/overrides.ts">delete</a>(overridesId, { ...params }) -> OverrideDeleteResponse</code>
1351+
- <code title="get /zones/{zone_id}/firewall/waf/overrides/{overrides_id}">client.firewall.waf.overrides.<a href="./src/resources/firewall/waf/overrides.ts">get</a>(overridesId, { ...params }) -> Override</code>
12921352

12931353
### Packages
12941354

1355+
Types:
1356+
1357+
- <code><a href="./src/resources/firewall/waf/packages/packages.ts">PackageListResponse</a></code>
1358+
- <code><a href="./src/resources/firewall/waf/packages/packages.ts">PackageGetResponse</a></code>
1359+
1360+
Methods:
1361+
1362+
- <code title="get /zones/{zone_id}/firewall/waf/packages">client.firewall.waf.packages.<a href="./src/resources/firewall/waf/packages/packages.ts">list</a>({ ...params }) -> PackageListResponsesV4PagePaginationArray</code>
1363+
- <code title="get /zones/{zone_id}/firewall/waf/packages/{package_id}">client.firewall.waf.packages.<a href="./src/resources/firewall/waf/packages/packages.ts">get</a>(packageId, { ...params }) -> PackageGetResponse</code>
1364+
12951365
#### Groups
12961366

12971367
Types:
@@ -1600,6 +1670,15 @@ Types:
16001670
- <code><a href="./src/resources/rate-limits.ts">Action</a></code>
16011671
- <code><a href="./src/resources/rate-limits.ts">Methods</a></code>
16021672
- <code><a href="./src/resources/rate-limits.ts">RateLimit</a></code>
1673+
- <code><a href="./src/resources/rate-limits.ts">RateLimitDeleteResponse</a></code>
1674+
1675+
Methods:
1676+
1677+
- <code title="post /zones/{zone_id}/rate_limits">client.rateLimits.<a href="./src/resources/rate-limits.ts">create</a>({ ...params }) -> RateLimit</code>
1678+
- <code title="get /zones/{zone_id}/rate_limits">client.rateLimits.<a href="./src/resources/rate-limits.ts">list</a>({ ...params }) -> RateLimitsV4PagePaginationArray</code>
1679+
- <code title="delete /zones/{zone_id}/rate_limits/{rate_limit_id}">client.rateLimits.<a href="./src/resources/rate-limits.ts">delete</a>(rateLimitId, { ...params }) -> RateLimitDeleteResponse</code>
1680+
- <code title="put /zones/{zone_id}/rate_limits/{rate_limit_id}">client.rateLimits.<a href="./src/resources/rate-limits.ts">edit</a>(rateLimitId, { ...params }) -> RateLimit</code>
1681+
- <code title="get /zones/{zone_id}/rate_limits/{rate_limit_id}">client.rateLimits.<a href="./src/resources/rate-limits.ts">get</a>(rateLimitId, { ...params }) -> RateLimit</code>
16031682

16041683
# SecondaryDNS
16051684

src/resources/filters.ts

Lines changed: 191 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,101 @@
11
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

33
import { APIResource } from '../resource';
4+
import * as Core from '../core';
5+
import { V4PagePaginationArray, type V4PagePaginationArrayParams } from '../pagination';
46

5-
export class Filters extends APIResource {}
7+
export class Filters extends APIResource {
8+
/**
9+
* Creates one or more filters.
10+
*
11+
* @deprecated The Filters API is deprecated in favour of using the Ruleset Engine. See https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#firewall-rules-api-and-filters-api for full details.
12+
*/
13+
create(
14+
params: FilterCreateParams,
15+
options?: Core.RequestOptions,
16+
): Core.APIPromise<FilterCreateResponse | null> {
17+
const { zone_id, ...body } = params;
18+
return (
19+
this._client.post(`/zones/${zone_id}/filters`, { body, ...options }) as Core.APIPromise<{
20+
result: FilterCreateResponse | null;
21+
}>
22+
)._thenUnwrap((obj) => obj.result);
23+
}
24+
25+
/**
26+
* Updates an existing filter.
27+
*
28+
* @deprecated The Filters API is deprecated in favour of using the Ruleset Engine. See https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#firewall-rules-api-and-filters-api for full details.
29+
*/
30+
update(
31+
filterId: string,
32+
params: FilterUpdateParams,
33+
options?: Core.RequestOptions,
34+
): Core.APIPromise<FirewallFilter> {
35+
const { zone_id, body } = params;
36+
return (
37+
this._client.put(`/zones/${zone_id}/filters/${filterId}`, {
38+
body: body,
39+
...options,
40+
}) as Core.APIPromise<{ result: FirewallFilter }>
41+
)._thenUnwrap((obj) => obj.result);
42+
}
43+
44+
/**
45+
* Fetches filters in a zone. You can filter the results using several optional
46+
* parameters.
47+
*
48+
* @deprecated The Filters API is deprecated in favour of using the Ruleset Engine. See https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#firewall-rules-api-and-filters-api for full details.
49+
*/
50+
list(
51+
params: FilterListParams,
52+
options?: Core.RequestOptions,
53+
): Core.PagePromise<FirewallFiltersV4PagePaginationArray, FirewallFilter> {
54+
const { zone_id, ...query } = params;
55+
return this._client.getAPIList(`/zones/${zone_id}/filters`, FirewallFiltersV4PagePaginationArray, {
56+
query,
57+
...options,
58+
});
59+
}
60+
61+
/**
62+
* Deletes an existing filter.
63+
*
64+
* @deprecated The Filters API is deprecated in favour of using the Ruleset Engine. See https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#firewall-rules-api-and-filters-api for full details.
65+
*/
66+
delete(
67+
filterId: string,
68+
params: FilterDeleteParams,
69+
options?: Core.RequestOptions,
70+
): Core.APIPromise<FirewallFilter> {
71+
const { zone_id } = params;
72+
return (
73+
this._client.delete(`/zones/${zone_id}/filters/${filterId}`, options) as Core.APIPromise<{
74+
result: FirewallFilter;
75+
}>
76+
)._thenUnwrap((obj) => obj.result);
77+
}
78+
79+
/**
80+
* Fetches the details of a filter.
81+
*
82+
* @deprecated The Filters API is deprecated in favour of using the Ruleset Engine. See https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#firewall-rules-api-and-filters-api for full details.
83+
*/
84+
get(
85+
filterId: string,
86+
params: FilterGetParams,
87+
options?: Core.RequestOptions,
88+
): Core.APIPromise<FirewallFilter> {
89+
const { zone_id } = params;
90+
return (
91+
this._client.get(`/zones/${zone_id}/filters/${filterId}`, options) as Core.APIPromise<{
92+
result: FirewallFilter;
93+
}>
94+
)._thenUnwrap((obj) => obj.result);
95+
}
96+
}
97+
98+
export class FirewallFiltersV4PagePaginationArray extends V4PagePaginationArray<FirewallFilter> {}
699

7100
export interface FirewallFilter {
8101
/**
@@ -31,3 +124,100 @@ export interface FirewallFilter {
31124
*/
32125
ref?: string;
33126
}
127+
128+
export interface FirewallFilterParam {
129+
/**
130+
* An informative summary of the filter.
131+
*/
132+
description?: string;
133+
134+
/**
135+
* The filter expression. For more information, refer to
136+
* [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).
137+
*/
138+
expression?: string;
139+
140+
/**
141+
* When true, indicates that the filter is currently paused.
142+
*/
143+
paused?: boolean;
144+
145+
/**
146+
* A short reference tag. Allows you to select related filters.
147+
*/
148+
ref?: string;
149+
}
150+
151+
export type FilterCreateResponse = Array<FirewallFilter>;
152+
153+
export interface FilterCreateParams {
154+
/**
155+
* Path param: Identifier
156+
*/
157+
zone_id: string;
158+
159+
/**
160+
* Body param: The filter expression. For more information, refer to
161+
* [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).
162+
*/
163+
expression: string;
164+
}
165+
166+
export interface FilterUpdateParams {
167+
/**
168+
* Path param: Identifier
169+
*/
170+
zone_id: string;
171+
172+
/**
173+
* Body param:
174+
*/
175+
body: unknown;
176+
}
177+
178+
export interface FilterListParams extends V4PagePaginationArrayParams {
179+
/**
180+
* Path param: Identifier
181+
*/
182+
zone_id: string;
183+
184+
/**
185+
* Query param: The unique identifier of the filter.
186+
*/
187+
id?: string;
188+
189+
/**
190+
* Query param: A case-insensitive string to find in the description.
191+
*/
192+
description?: string;
193+
194+
/**
195+
* Query param: A case-insensitive string to find in the expression.
196+
*/
197+
expression?: string;
198+
199+
/**
200+
* Query param: When true, indicates that the filter is currently paused.
201+
*/
202+
paused?: boolean;
203+
204+
/**
205+
* Query param: The filter ref (a short reference tag) to search for. Must be an
206+
* exact match.
207+
*/
208+
ref?: string;
209+
}
210+
211+
export interface FilterDeleteParams {
212+
/**
213+
* Identifier
214+
*/
215+
zone_id: string;
216+
}
217+
218+
export interface FilterGetParams {
219+
/**
220+
* Identifier
221+
*/
222+
zone_id: string;
223+
}

0 commit comments

Comments
 (0)