Table of Contents

Interface IAccountAccessRulesApi

Namespace
Cloudflare.NET.Accounts.AccessRules
Assembly
Cloudflare.NET.dll

Defines the contract for managing IP Access Rules at the account level.

Account-level rules apply to all zones within the account that do not have their own zone-level rules overriding them.

public interface IAccountAccessRulesApi

Methods

CreateAsync(CreateAccessRuleRequest, CancellationToken)

Creates a new IP Access Rule for the account.

Task<AccessRule> CreateAsync(CreateAccessRuleRequest request, CancellationToken cancellationToken = default)

Parameters

request CreateAccessRuleRequest

The request containing the details of the rule to create.

cancellationToken CancellationToken

A cancellation token.

Returns

Task<AccessRule>

The created access rule.

DeleteAsync(string, CancellationToken)

Deletes an IP Access Rule from the account.

Task DeleteAsync(string ruleId, CancellationToken cancellationToken = default)

Parameters

ruleId string

The ID of the rule to delete.

cancellationToken CancellationToken

A cancellation token.

Returns

Task

GetAsync(string, CancellationToken)

Gets a single IP Access Rule for the account by its ID.

Task<AccessRule> GetAsync(string ruleId, CancellationToken cancellationToken = default)

Parameters

ruleId string

The ID of the rule to retrieve.

cancellationToken CancellationToken

A cancellation token.

Returns

Task<AccessRule>

The requested access rule.

ListAllAsync(ListAccessRulesFilters?, CancellationToken)

Lists all IP Access Rules for the account, automatically handling pagination.

IAsyncEnumerable<AccessRule> ListAllAsync(ListAccessRulesFilters? filters = null, CancellationToken cancellationToken = default)

Parameters

filters ListAccessRulesFilters

Optional filters to apply to the list operation. Pagination parameters (Page, PerPage) will be ignored.

cancellationToken CancellationToken

A cancellation token.

Returns

IAsyncEnumerable<AccessRule>

An asynchronous stream of all access rules matching the criteria.

ListAsync(ListAccessRulesFilters?, CancellationToken)

Lists all IP Access Rules for the account, allowing for manual pagination control.

Task<PagePaginatedResult<AccessRule>> ListAsync(ListAccessRulesFilters? filters = null, CancellationToken cancellationToken = default)

Parameters

filters ListAccessRulesFilters

Optional filters to apply to the list operation, such as filtering by mode or IP, and specifying the page number.

cancellationToken CancellationToken

A cancellation token.

Returns

Task<PagePaginatedResult<AccessRule>>

A single page of access rules along with pagination information.

Remarks

This method is intended for developers who need to control the pagination process manually. Use the properties of the returned PagePaginatedResult<T> to determine if there are more pages and to construct the filter for the next call.

UpdateAsync(string, UpdateAccessRuleRequest, CancellationToken)

Updates an existing IP Access Rule for the account.

Task<AccessRule> UpdateAsync(string ruleId, UpdateAccessRuleRequest request, CancellationToken cancellationToken = default)

Parameters

ruleId string

The ID of the rule to update.

request UpdateAccessRuleRequest

The request containing the fields to update (e.g., changing the notes or mode).

cancellationToken CancellationToken

A cancellation token.

Returns

Task<AccessRule>

The updated access rule.