cloudflare
Version:
The official TypeScript library for the Cloudflare API
46 lines • 2.1 kB
JavaScript
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../resource.mjs";
import { SinglePage } from "../../pagination.mjs";
export class Rules extends APIResource {
/**
* Only available for the Waiting Room Advanced subscription. Creates a rule for a
* waiting room.
*/
create(waitingRoomId, params, options) {
const { zone_id, rules } = params;
return this._client.getAPIList(`/zones/${zone_id}/waiting_rooms/${waitingRoomId}/rules`, WaitingRoomRulesSinglePage, { body: rules, method: 'post', ...options });
}
/**
* Only available for the Waiting Room Advanced subscription. Replaces all rules
* for a waiting room.
*/
update(waitingRoomId, params, options) {
const { zone_id, rules } = params;
return this._client.getAPIList(`/zones/${zone_id}/waiting_rooms/${waitingRoomId}/rules`, WaitingRoomRulesSinglePage, { body: rules, method: 'put', ...options });
}
/**
* Deletes a rule for a waiting room.
*/
delete(waitingRoomId, ruleId, params, options) {
const { zone_id } = params;
return this._client.getAPIList(`/zones/${zone_id}/waiting_rooms/${waitingRoomId}/rules/${ruleId}`, WaitingRoomRulesSinglePage, { method: 'delete', ...options });
}
/**
* Patches a rule for a waiting room.
*/
edit(waitingRoomId, ruleId, params, options) {
const { zone_id, ...body } = params;
return this._client.getAPIList(`/zones/${zone_id}/waiting_rooms/${waitingRoomId}/rules/${ruleId}`, WaitingRoomRulesSinglePage, { body, method: 'patch', ...options });
}
/**
* Lists rules for a waiting room.
*/
get(waitingRoomId, params, options) {
const { zone_id } = params;
return this._client.getAPIList(`/zones/${zone_id}/waiting_rooms/${waitingRoomId}/rules`, WaitingRoomRulesSinglePage, options);
}
}
export class WaitingRoomRulesSinglePage extends SinglePage {
}
Rules.WaitingRoomRulesSinglePage = WaitingRoomRulesSinglePage;
//# sourceMappingURL=rules.mjs.map