cloudflare
Version:
The official TypeScript library for the Cloudflare API
76 lines • 2.59 kB
JavaScript
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../../../core/resource.mjs";
import { path } from "../../../../internal/utils/path.mjs";
export var BaseRules = /* @__PURE__ */ (() => {
class BaseRules extends APIResource {
/**
* Replace all sampling overrides in a zone's managed Cloudflare Traces ruleset.
* Rules are evaluated in the supplied order.
*
* @example
* ```ts
* const rule =
* await client.zones.observability.tracing.rules.update({
* zone_id: 'zone_id',
* rules: [
* {
* action: 'set_trace_settings',
* action_parameters: { sampling_ratio: 0 },
* description: 'description',
* enabled: true,
* expression: 'x',
* },
* ],
* });
* ```
*/
update(params, options) {
const { zone_id, ...body } = params;
return this._client.put(path `/zones/${zone_id}/observability/tracing/rules`, {
body,
...options,
})._thenUnwrap((obj) => obj.result);
}
/**
* Delete every sampling override from a zone's managed Cloudflare Traces ruleset.
*
* @example
* ```ts
* const rule =
* await client.zones.observability.tracing.rules.delete({
* zone_id: 'zone_id',
* });
* ```
*/
delete(params, options) {
const { zone_id } = params;
return this._client.delete(path `/zones/${zone_id}/observability/tracing/rules`, options)._thenUnwrap((obj) => obj.result);
}
/**
* Retrieve the ordered sampling overrides for a zone's managed Cloudflare Traces
* ruleset.
*
* @example
* ```ts
* const rule =
* await client.zones.observability.tracing.rules.get({
* zone_id: 'zone_id',
* });
* ```
*/
get(params, options) {
const { zone_id } = params;
return this._client.get(path `/zones/${zone_id}/observability/tracing/rules`, options)._thenUnwrap((obj) => obj.result);
}
}
BaseRules._key = Object.freeze([
'zones',
'observability',
'tracing',
'rules',
]);
return BaseRules;
})();
export class Rules extends BaseRules {
}
//# sourceMappingURL=rules.mjs.map