## List account or zone rulesets `client.rulesets.list(RulesetListParamsparams?, RequestOptionsoptions?): CursorPagination` **get** `/{accounts_or_zones}/{account_or_zone_id}/rulesets` Fetches all rulesets. ### Parameters - `params: RulesetListParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `cursor?: string` Query param: The cursor to use for the next page. - `per_page?: number` Query param: The number of rulesets to return per page. ### Returns - `RulesetListResponse` A ruleset object. - `id: string` The unique ID of the ruleset. - `kind: Kind` The kind of the ruleset. - `"managed"` - `"custom"` - `"root"` - `"zone"` - `last_updated: string` The timestamp of when the ruleset was last modified. - `name: string` The human-readable name of the ruleset. - `phase: Phase` The phase of the ruleset. - `"ddos_l4"` - `"ddos_l7"` - `"http_config_settings"` - `"http_custom_errors"` - `"http_log_custom_fields"` - `"http_ratelimit"` - `"http_request_cache_settings"` - `"http_request_dynamic_redirect"` - `"http_request_firewall_custom"` - `"http_request_firewall_managed"` - `"http_request_late_transform"` - `"http_request_origin"` - `"http_request_redirect"` - `"http_request_sanitize"` - `"http_request_sbfm"` - `"http_request_transform"` - `"http_response_cache_settings"` - `"http_response_compression"` - `"http_response_firewall_managed"` - `"http_response_headers_transform"` - `"magic_transit"` - `"magic_transit_ids_managed"` - `"magic_transit_managed"` - `"magic_transit_ratelimit"` - `version: string` The version of the ruleset. - `description?: string` An informative description of the ruleset. ### 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 rulesetListResponse of client.rulesets.list({ account_id: 'account_id' })) { console.log(rulesetListResponse.id); } ``` #### Response ```json { "errors": [ { "message": "something bad happened", "code": 10000, "source": { "pointer": "/rules/0/action" } } ], "messages": [ { "message": "something bad happened", "code": 10000, "source": { "pointer": "/rules/0/action" } } ], "result": [ { "id": "2f2feab2026849078ba485f918791bdc", "kind": "root", "last_updated": "2000-01-01T00:00:00.000000Z", "name": "My ruleset", "phase": "http_request_firewall_custom", "version": "1", "description": "A description for my ruleset." } ], "success": true, "result_info": { "cursors": { "after": "dGhpc2lzYW5leGFtcGxlCg" } } } ```