cloudflare/cloudflared

Public

mirrored fromhttps://github.com/cloudflare/cloudflaredAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
9abcfece66e90761ecd5aceb0a9129dbeb7eb508

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

cfapi/client.go

41lines · modecode

1package cfapi
2
3import (
4 "github.com/google/uuid"
5)
6
7type TunnelClient interface {
8 CreateTunnel(name string, tunnelSecret []byte) (*TunnelWithToken, error)
9 GetTunnel(tunnelID uuid.UUID) (*Tunnel, error)
10 GetTunnelToken(tunnelID uuid.UUID) (string, error)
11 GetManagementToken(tunnelID uuid.UUID) (string, error)
12 DeleteTunnel(tunnelID uuid.UUID, cascade bool) error
13 ListTunnels(filter *TunnelFilter) ([]*Tunnel, error)
14 ListActiveClients(tunnelID uuid.UUID) ([]*ActiveClient, error)
15 CleanupConnections(tunnelID uuid.UUID, params *CleanupParams) error
16}
17
18type HostnameClient interface {
19 RouteTunnel(tunnelID uuid.UUID, route HostnameRoute) (HostnameRouteResult, error)
20}
21
22type IPRouteClient interface {
23 ListRoutes(filter *IpRouteFilter) ([]*DetailedRoute, error)
24 AddRoute(newRoute NewRoute) (Route, error)
25 DeleteRoute(id uuid.UUID) error
26 GetByIP(params GetRouteByIpParams) (DetailedRoute, error)
27}
28
29type VnetClient interface {
30 CreateVirtualNetwork(newVnet NewVirtualNetwork) (VirtualNetwork, error)
31 ListVirtualNetworks(filter *VnetFilter) ([]*VirtualNetwork, error)
32 DeleteVirtualNetwork(id uuid.UUID, force bool) error
33 UpdateVirtualNetwork(id uuid.UUID, updates UpdateVirtualNetwork) error
34}
35
36type Client interface {
37 TunnelClient
38 HostnameClient
39 IPRouteClient
40 VnetClient
41}
42