cloudflare
Version:
The official TypeScript library for the Cloudflare API
201 lines • 8.38 kB
TypeScript
import { APIResource } from "../../../../core/resource.js";
import * as Shared from "../../../shared.js";
import { CloudflareTunnelsV4PagePaginationArray } from "../../../shared.js";
import * as ConfigurationsAPI from "./configurations.js";
import { BaseConfigurations, ConfigurationGetParams, ConfigurationGetResponse, ConfigurationUpdateParams, ConfigurationUpdateResponse, Configurations } from "./configurations.js";
import * as ConnectionsAPI from "./connections.js";
import { BaseConnections, Client, ClientsSinglePage, ConnectionDeleteParams, ConnectionDeleteResponse, ConnectionGetParams, Connections } from "./connections.js";
import * as ConnectorsAPI from "./connectors.js";
import { BaseConnectors, ConnectorGetParams, Connectors } from "./connectors.js";
import * as ManagementAPI from "./management.js";
import { BaseManagement, Management, ManagementCreateParams, ManagementCreateResponse } from "./management.js";
import * as TokenAPI from "./token.js";
import { BaseToken, Token, TokenGetParams, TokenGetResponse } from "./token.js";
import { APIPromise } from "../../../../core/api-promise.js";
import { PagePromise, type V4PagePaginationArrayParams } from "../../../../core/pagination.js";
import { RequestOptions } from "../../../../internal/request-options.js";
export declare class BaseCloudflared extends APIResource {
static readonly _key: readonly ['zeroTrust', 'tunnels', 'cloudflared'];
/**
* Creates a remotely or locally managed Cloudflare Tunnel in an account. After
* creation, retrieve its token and run cloudflared to establish the connector
* connection.
*
* @example
* ```ts
* const cloudflareTunnel =
* await client.zeroTrust.tunnels.cloudflared.create({
* account_id: '699d98642c564d2e855e9661899b7252',
* name: 'blog',
* });
* ```
*/
create(params: CloudflaredCreateParams, options?: RequestOptions): APIPromise<Shared.CloudflareTunnel>;
/**
* Lists and filters Cloudflare Tunnels in an account.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const cloudflareTunnel of client.zeroTrust.tunnels.cloudflared.list(
* { account_id: '699d98642c564d2e855e9661899b7252' },
* )) {
* // ...
* }
* ```
*/
list(params: CloudflaredListParams, options?: RequestOptions): PagePromise<CloudflareTunnelsV4PagePaginationArray, Shared.CloudflareTunnel>;
/**
* Permanently deletes a Cloudflare Tunnel from an account. The tunnel must have no
* active connections.
*
* @example
* ```ts
* const cloudflareTunnel =
* await client.zeroTrust.tunnels.cloudflared.delete(
* 'f70ff985-a4ef-4643-bbbc-4a0ed4fc8415',
* { account_id: '699d98642c564d2e855e9661899b7252' },
* );
* ```
*/
delete(tunnelID: string, params: CloudflaredDeleteParams, options?: RequestOptions): APIPromise<Shared.CloudflareTunnel>;
/**
* Updates the name or secret of an existing Cloudflare Tunnel.
*
* @example
* ```ts
* const cloudflareTunnel =
* await client.zeroTrust.tunnels.cloudflared.edit(
* 'f70ff985-a4ef-4643-bbbc-4a0ed4fc8415',
* { account_id: '699d98642c564d2e855e9661899b7252' },
* );
* ```
*/
edit(tunnelID: string, params: CloudflaredEditParams, options?: RequestOptions): APIPromise<Shared.CloudflareTunnel>;
/**
* Fetches a single Cloudflare Tunnel.
*
* @example
* ```ts
* const cloudflareTunnel =
* await client.zeroTrust.tunnels.cloudflared.get(
* 'f70ff985-a4ef-4643-bbbc-4a0ed4fc8415',
* { account_id: '699d98642c564d2e855e9661899b7252' },
* );
* ```
*/
get(tunnelID: string, params: CloudflaredGetParams, options?: RequestOptions): APIPromise<Shared.CloudflareTunnel>;
}
export declare class Cloudflared extends BaseCloudflared {
configurations: ConfigurationsAPI.Configurations;
connections: ConnectionsAPI.Connections;
token: TokenAPI.Token;
connectors: ConnectorsAPI.Connectors;
management: ManagementAPI.Management;
}
export interface CloudflaredCreateParams {
/**
* Path param: Cloudflare account ID
*/
account_id: string;
/**
* Body param: A user-friendly name for a tunnel.
*/
name: string;
/**
* Body param: Indicates if this is a locally or remotely configured tunnel. If
* `local`, manage the tunnel using a YAML file on the origin machine. If
* `cloudflare`, manage the tunnel on the Zero Trust dashboard.
*/
config_src?: 'local' | 'cloudflare';
/**
* Body param: Sets the password required to run a locally-managed tunnel. Must be
* at least 32 bytes and encoded as a base64 string.
*/
tunnel_secret?: string;
}
export interface CloudflaredListParams extends V4PagePaginationArrayParams {
/**
* Path param: Cloudflare account ID
*/
account_id: string;
/**
* Query param
*/
exclude_prefix?: string;
/**
* Query param: If provided, include only resources that were created (and not
* deleted) before this time. URL encoded.
*/
existed_at?: string;
/**
* Query param
*/
include_prefix?: string;
/**
* Query param: If `true`, only include deleted tunnels. If `false`, exclude
* deleted tunnels. If empty, all tunnels will be included.
*/
is_deleted?: boolean;
/**
* Query param: A user-friendly name for a tunnel.
*/
name?: string;
/**
* Query param: The status of the tunnel. Valid values are `inactive` (tunnel has
* never been run), `degraded` (tunnel is active and able to serve traffic but in
* an unhealthy state), `healthy` (tunnel is active and able to serve traffic), or
* `down` (tunnel can not serve traffic as it has no connections to the Cloudflare
* Edge).
*/
status?: 'inactive' | 'degraded' | 'healthy' | 'down';
/**
* Query param: UUID of the tunnel.
*/
uuid?: string;
/**
* Query param
*/
was_active_at?: string;
/**
* Query param
*/
was_inactive_at?: string;
}
export interface CloudflaredDeleteParams {
/**
* Cloudflare account ID
*/
account_id: string;
}
export interface CloudflaredEditParams {
/**
* Path param: Cloudflare account ID
*/
account_id: string;
/**
* Body param: A user-friendly name for a tunnel.
*/
name?: string;
/**
* Body param: Sets the password required to run a locally-managed tunnel. Must be
* at least 32 bytes and encoded as a base64 string.
*/
tunnel_secret?: string;
}
export interface CloudflaredGetParams {
/**
* Cloudflare account ID
*/
account_id: string;
}
export declare namespace Cloudflared {
export { type CloudflaredCreateParams as CloudflaredCreateParams, type CloudflaredListParams as CloudflaredListParams, type CloudflaredDeleteParams as CloudflaredDeleteParams, type CloudflaredEditParams as CloudflaredEditParams, type CloudflaredGetParams as CloudflaredGetParams, };
export { Configurations as Configurations, BaseConfigurations as BaseConfigurations, type ConfigurationUpdateResponse as ConfigurationUpdateResponse, type ConfigurationGetResponse as ConfigurationGetResponse, type ConfigurationUpdateParams as ConfigurationUpdateParams, type ConfigurationGetParams as ConfigurationGetParams, };
export { Connections as Connections, BaseConnections as BaseConnections, type Client as Client, type ConnectionDeleteResponse as ConnectionDeleteResponse, type ClientsSinglePage as ClientsSinglePage, type ConnectionDeleteParams as ConnectionDeleteParams, type ConnectionGetParams as ConnectionGetParams, };
export { Token as Token, BaseToken as BaseToken, type TokenGetResponse as TokenGetResponse, type TokenGetParams as TokenGetParams, };
export { Connectors as Connectors, BaseConnectors as BaseConnectors, type ConnectorGetParams as ConnectorGetParams, };
export { Management as Management, BaseManagement as BaseManagement, type ManagementCreateResponse as ManagementCreateResponse, type ManagementCreateParams as ManagementCreateParams, };
}
export { type CloudflareTunnelsV4PagePaginationArray };
//# sourceMappingURL=cloudflared.d.ts.map