UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

75 lines 2.91 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from 'cloudflare/resource'; import * as MonitorsAPI from 'cloudflare/resources/load-balancers/monitors/monitors'; import * as PreviewsAPI from 'cloudflare/resources/load-balancers/monitors/previews'; import * as ReferencesAPI from 'cloudflare/resources/load-balancers/monitors/references'; import { SinglePage } from 'cloudflare/pagination'; export class Monitors extends APIResource { constructor() { super(...arguments); this.previews = new PreviewsAPI.Previews(this._client); this.references = new ReferencesAPI.References(this._client); } /** * Create a configured monitor. */ create(params, options) { const { account_id, ...body } = params; return this._client.post(`/accounts/${account_id}/load_balancers/monitors`, { body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Modify a configured monitor. */ update(monitorId, params, options) { const { account_id, ...body } = params; return this._client.put(`/accounts/${account_id}/load_balancers/monitors/${monitorId}`, { body, ...options, })._thenUnwrap((obj) => obj.result); } /** * List configured monitors for an account. */ list(params, options) { const { account_id } = params; return this._client.getAPIList(`/accounts/${account_id}/load_balancers/monitors`, MonitorsSinglePage, options); } /** * Delete a configured monitor. */ delete(monitorId, params, options) { const { account_id, body } = params; return this._client.delete(`/accounts/${account_id}/load_balancers/monitors/${monitorId}`, { body: body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Apply changes to an existing monitor, overwriting the supplied properties. */ edit(monitorId, params, options) { const { account_id, ...body } = params; return this._client.patch(`/accounts/${account_id}/load_balancers/monitors/${monitorId}`, { body, ...options, })._thenUnwrap((obj) => obj.result); } /** * List a single configured monitor for an account. */ get(monitorId, params, options) { const { account_id } = params; return this._client.get(`/accounts/${account_id}/load_balancers/monitors/${monitorId}`, options)._thenUnwrap((obj) => obj.result); } } export class MonitorsSinglePage extends SinglePage { } (function (Monitors) { Monitors.MonitorsSinglePage = MonitorsAPI.MonitorsSinglePage; Monitors.Previews = PreviewsAPI.Previews; Monitors.References = ReferencesAPI.References; })(Monitors || (Monitors = {})); //# sourceMappingURL=monitors.mjs.map