## Create filters `client.filters.create(FilterCreateParamsparams, RequestOptionsoptions?): SinglePage` **post** `/zones/{zone_id}/filters` Creates one or more filters. ### Parameters - `params: FilterCreateParams` - `zone_id: string` Path param: Defines an identifier. - `body: Array` Body param - `id?: string` The unique identifier of the filter. - `description?: string` An informative summary of the filter. - `expression?: string` The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/). - `paused?: boolean` When true, indicates that the filter is currently paused. - `ref?: string` A short reference tag. Allows you to select related filters. ### Returns - `FirewallFilter` - `id?: string` The unique identifier of the filter. - `description?: string` An informative summary of the filter. - `expression?: string` The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/). - `paused?: boolean` When true, indicates that the filter is currently paused. - `ref?: string` A short reference tag. Allows you to select related filters. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const firewallFilter of client.filters.create({ zone_id: '023e105f4ecef8ad9ca31a8372d0c353', body: [{}], })) { console.log(firewallFilter.id); } ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "result": [ { "id": "372e67954025e0ba6aaa6d586b9e0b61", "description": "Restrict access from these browsers on this address range.", "expression": "(http.request.uri.path ~ \".*wp-login.php\" or http.request.uri.path ~ \".*xmlrpc.php\") and ip.addr ne 172.16.22.155", "paused": false, "ref": "FIL-100" } ], "success": true, "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000 } } ```