UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

192 lines (171 loc) 5.53 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../resource'; import * as Core from '../../core'; export class SmartTieredCache extends APIResource { /** * Smart Tiered Cache dynamically selects the single closest upper tier for each of * your website’s origins with no configuration required, using our in-house * performance and routing data. Cloudflare collects latency data for each request * to an origin, and uses the latency data to determine how well any upper-tier * data center is connected with an origin. As a result, Cloudflare can select the * data center with the lowest latency to be the upper-tier for an origin. * * @example * ```ts * const smartTieredCache = * await client.cache.smartTieredCache.delete({ * zone_id: '023e105f4ecef8ad9ca31a8372d0c353', * }); * ``` */ delete( params: SmartTieredCacheDeleteParams, options?: Core.RequestOptions, ): Core.APIPromise<SmartTieredCacheDeleteResponse> { const { zone_id } = params; return ( this._client.delete( `/zones/${zone_id}/cache/tiered_cache_smart_topology_enable`, options, ) as Core.APIPromise<{ result: SmartTieredCacheDeleteResponse }> )._thenUnwrap((obj) => obj.result); } /** * Smart Tiered Cache dynamically selects the single closest upper tier for each of * your website’s origins with no configuration required, using our in-house * performance and routing data. Cloudflare collects latency data for each request * to an origin, and uses the latency data to determine how well any upper-tier * data center is connected with an origin. As a result, Cloudflare can select the * data center with the lowest latency to be the upper-tier for an origin. * * @example * ```ts * const response = await client.cache.smartTieredCache.edit({ * zone_id: '023e105f4ecef8ad9ca31a8372d0c353', * value: 'on', * }); * ``` */ edit( params: SmartTieredCacheEditParams, options?: Core.RequestOptions, ): Core.APIPromise<SmartTieredCacheEditResponse> { const { zone_id, ...body } = params; return ( this._client.patch(`/zones/${zone_id}/cache/tiered_cache_smart_topology_enable`, { body, ...options, }) as Core.APIPromise<{ result: SmartTieredCacheEditResponse }> )._thenUnwrap((obj) => obj.result); } /** * Smart Tiered Cache dynamically selects the single closest upper tier for each of * your website’s origins with no configuration required, using our in-house * performance and routing data. Cloudflare collects latency data for each request * to an origin, and uses the latency data to determine how well any upper-tier * data center is connected with an origin. As a result, Cloudflare can select the * data center with the lowest latency to be the upper-tier for an origin. * * @example * ```ts * const smartTieredCache = * await client.cache.smartTieredCache.get({ * zone_id: '023e105f4ecef8ad9ca31a8372d0c353', * }); * ``` */ get( params: SmartTieredCacheGetParams, options?: Core.RequestOptions, ): Core.APIPromise<SmartTieredCacheGetResponse> { const { zone_id } = params; return ( this._client.get( `/zones/${zone_id}/cache/tiered_cache_smart_topology_enable`, options, ) as Core.APIPromise<{ result: SmartTieredCacheGetResponse }> )._thenUnwrap((obj) => obj.result); } } export interface SmartTieredCacheDeleteResponse { /** * The identifier of the caching setting. */ id: 'tiered_cache_smart_topology_enable'; /** * Whether the setting is editable. */ editable: boolean; /** * Last time this setting was modified. */ modified_on?: string | null; } export interface SmartTieredCacheEditResponse { /** * The identifier of the caching setting. */ id: 'tiered_cache_smart_topology_enable'; /** * Whether the setting is editable. */ editable: boolean; /** * Value of the Smart Tiered Cache zone setting. */ value: 'on' | 'off'; /** * Last time this setting was modified. */ modified_on?: string | null; } export interface SmartTieredCacheGetResponse { /** * The identifier of the caching setting. */ id: 'tiered_cache_smart_topology_enable'; /** * Whether the setting is editable. */ editable: boolean; /** * Value of the Smart Tiered Cache zone setting. */ value: 'on' | 'off'; /** * Last time this setting was modified. */ modified_on?: string | null; } export interface SmartTieredCacheDeleteParams { /** * Identifier. */ zone_id: string; } export interface SmartTieredCacheEditParams { /** * Path param: Identifier. */ zone_id: string; /** * Body param: Enable or disable the Smart Tiered Cache. */ value: 'on' | 'off'; } export interface SmartTieredCacheGetParams { /** * Identifier. */ zone_id: string; } export declare namespace SmartTieredCache { export { type SmartTieredCacheDeleteResponse as SmartTieredCacheDeleteResponse, type SmartTieredCacheEditResponse as SmartTieredCacheEditResponse, type SmartTieredCacheGetResponse as SmartTieredCacheGetResponse, type SmartTieredCacheDeleteParams as SmartTieredCacheDeleteParams, type SmartTieredCacheEditParams as SmartTieredCacheEditParams, type SmartTieredCacheGetParams as SmartTieredCacheGetParams, }; }