cloudflare/cloudflared

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
cc1c6d9abc865533e1ebb5a6a387fd3973ff7bc6

Branches

Tags

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

Clone

HTTPS

Download ZIP

cfapi/client.go

40lines · 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 DeleteTunnel(tunnelID uuid.UUID) error
12 ListTunnels(filter *TunnelFilter) ([]*Tunnel, error)
13 ListActiveClients(tunnelID uuid.UUID) ([]*ActiveClient, error)
14 CleanupConnections(tunnelID uuid.UUID, params *CleanupParams) error
15}
16
17type HostnameClient interface {
18 RouteTunnel(tunnelID uuid.UUID, route HostnameRoute) (HostnameRouteResult, error)
19}
20
21type IPRouteClient interface {
22 ListRoutes(filter *IpRouteFilter) ([]*DetailedRoute, error)
23 AddRoute(newRoute NewRoute) (Route, error)
24 DeleteRoute(params DeleteRouteParams) error
25 GetByIP(params GetRouteByIpParams) (DetailedRoute, error)
26}
27
28type VnetClient interface {
29 CreateVirtualNetwork(newVnet NewVirtualNetwork) (VirtualNetwork, error)
30 ListVirtualNetworks(filter *VnetFilter) ([]*VirtualNetwork, error)
31 DeleteVirtualNetwork(id uuid.UUID) error
32 UpdateVirtualNetwork(id uuid.UUID, updates UpdateVirtualNetwork) error
33}
34
35type Client interface {
36 TunnelClient
37 HostnameClient
38 IPRouteClient
39 VnetClient
40}
41