UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

68 lines 2.83 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from 'cloudflare/resource'; import * as ItemsAPI from 'cloudflare/resources/rules/lists/items'; import { CursorPagination } from 'cloudflare/pagination'; export class Items extends APIResource { /** * Appends new items to the list. * * This operation is asynchronous. To get current the operation status, invoke the * [Get bulk operation status](/operations/lists-get-bulk-operation-status) * endpoint with the returned `operation_id`. */ create(listId, params, options) { const { account_id, body } = params; return this._client.post(`/accounts/${account_id}/rules/lists/${listId}/items`, { body: body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Removes all existing items from the list and adds the provided items to the * list. * * This operation is asynchronous. To get current the operation status, invoke the * [Get bulk operation status](/operations/lists-get-bulk-operation-status) * endpoint with the returned `operation_id`. */ update(listId, params, options) { const { account_id, body } = params; return this._client.put(`/accounts/${account_id}/rules/lists/${listId}/items`, { body: body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Fetches all the items in the list. */ list(listId, params, options) { const { account_id, ...query } = params; return this._client.getAPIList(`/accounts/${account_id}/rules/lists/${listId}/items`, ItemListResponsesCursorPagination, { query, ...options }); } /** * Removes one or more items from a list. * * This operation is asynchronous. To get current the operation status, invoke the * [Get bulk operation status](/operations/lists-get-bulk-operation-status) * endpoint with the returned `operation_id`. */ delete(listId, params, options) { const { account_id, ...body } = params; return this._client.delete(`/accounts/${account_id}/rules/lists/${listId}/items`, { body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Fetches a list item in the list. */ get(accountIdentifier, listId, itemId, options) { return this._client.get(`/accounts/${accountIdentifier}/rules/lists/${listId}/items/${itemId}`, options)._thenUnwrap((obj) => obj.result); } } export class ItemListResponsesCursorPagination extends CursorPagination { } (function (Items) { Items.ItemListResponsesCursorPagination = ItemsAPI.ItemListResponsesCursorPagination; })(Items || (Items = {})); //# sourceMappingURL=items.mjs.map