Documentation
¶
Index ¶
- type AdminTunnelClient
- func (c *AdminTunnelClient) CreateTunnel(ctx context.Context, req TunnelCreateRequest) (*Tunnel, error)
- func (c *AdminTunnelClient) DeleteTunnel(ctx context.Context, tunnelID string) (*Tunnel, error)
- func (c *AdminTunnelClient) GetTunnel(ctx context.Context, tunnelID string) (*Tunnel, error)
- func (c *AdminTunnelClient) ListTunnels(ctx context.Context, organizationID, workspaceID, tenantID string) (*TunnelListResponse, error)
- func (c *AdminTunnelClient) UpdateTunnel(ctx context.Context, tunnelID string, req TunnelUpdateRequest) (*Tunnel, error)
- type RequestError
- type Tunnel
- type TunnelCreateRequest
- type TunnelListResponse
- type TunnelUpdateRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AdminTunnelClient ¶
type AdminTunnelClient struct {
// contains filtered or unexported fields
}
AdminTunnelClient is a lightweight HTTP client for the tunnel management API.
func NewAdminTunnelClient ¶
func NewAdminTunnelClient(cfg *config.AdminConfig) (*AdminTunnelClient, error)
NewAdminTunnelClient builds an AdminTunnelClient from the provided config.
func (*AdminTunnelClient) CreateTunnel ¶
func (c *AdminTunnelClient) CreateTunnel(ctx context.Context, req TunnelCreateRequest) (*Tunnel, error)
CreateTunnel creates a new tunnel.
func (*AdminTunnelClient) DeleteTunnel ¶
DeleteTunnel removes a tunnel.
func (*AdminTunnelClient) ListTunnels ¶
func (c *AdminTunnelClient) ListTunnels(ctx context.Context, organizationID, workspaceID, tenantID string) (*TunnelListResponse, error)
ListTunnels returns tunnels filtered by organization, workspace, or tenant.
func (*AdminTunnelClient) UpdateTunnel ¶
func (c *AdminTunnelClient) UpdateTunnel(ctx context.Context, tunnelID string, req TunnelUpdateRequest) (*Tunnel, error)
UpdateTunnel mutates a tunnel.
type RequestError ¶
type RequestError struct {
Method string
Path string
StatusCode int
ResponseBody string
RequestID string
Code string
ErrorType string
Message string
Mitigation string
}
RequestError captures a non-2xx admin API response so CLI callers can surface structured details in JSON mode without having to parse stderr text.
func (*RequestError) Error ¶
func (e *RequestError) Error() string
type Tunnel ¶
type Tunnel struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Creator string `json:"creator,omitempty"`
TenantIDs []string `json:"tenant_ids,omitempty"`
WorkspaceIDs []string `json:"workspace_ids,omitempty"`
OrganizationIDs []string `json:"organization_ids,omitempty"`
RequestID string `json:"request_id,omitempty"`
}
Tunnel represents the management API tunnel metadata.
type TunnelCreateRequest ¶
type TunnelCreateRequest struct {
Name string `json:"name"`
Description string `json:"description"`
TenantIDs []string `json:"tenant_ids,omitempty"`
WorkspaceIDs []string `json:"workspace_ids,omitempty"`
OrganizationIDs []string `json:"organization_ids,omitempty"`
}
TunnelCreateRequest is the payload for POST /v1/tunnels.
type TunnelListResponse ¶
type TunnelListResponse struct {
Tunnels []Tunnel `json:"tunnels"`
RequestID string `json:"request_id,omitempty"`
}
TunnelListResponse wraps list responses.
type TunnelUpdateRequest ¶
type TunnelUpdateRequest struct {
Name *string `json:"name,omitempty"`
Description *string `json:"description,omitempty"`
TenantIDs *[]string `json:"tenant_ids,omitempty"`
WorkspaceIDs *[]string `json:"workspace_ids,omitempty"`
OrganizationIDs *[]string `json:"organization_ids,omitempty"`
}
TunnelUpdateRequest is the payload for POST /v1/tunnels/{id}`. Pointer fields distinguish between "omit" (nil) and "replace with empty" ([]).