admin

package
v0.0.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2026 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

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

func (c *AdminTunnelClient) DeleteTunnel(ctx context.Context, tunnelID string) (*Tunnel, error)

DeleteTunnel removes a tunnel.

func (*AdminTunnelClient) GetTunnel

func (c *AdminTunnelClient) GetTunnel(ctx context.Context, tunnelID string) (*Tunnel, error)

GetTunnel fetches a tunnel by id.

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" ([]).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL