api

package
v0.0.0-...-066dabf Latest Latest
Warning

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

Go to latest
Published: Jan 2, 2024 License: GPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type APIToken

type APIToken struct {
	TokenID string
	Secret  string
}

type Client

type Client struct {
	APIurl   url.URL
	APIToken *APIToken
	// UserPass    *UserPass
	Ticket      *Ticket
	TLSInsecure bool
	HTTPClient  *http.Client
}

func NewAPITokenClient

func NewAPITokenClient(baseURL, tokenID, secret string, tlsInsecure bool) (*Client, error)

func NewTicketClient

func NewTicketClient(baseURL, user, pass, totpSeed string, tlsInsecure bool) (*Client, error)

func (*Client) Delete

func (c *Client) Delete(url *url.URL) ([]byte, error)

func (*Client) DeleteItem

func (c *Client) DeleteItem(item ItemDeleter, basePath, id string, digest string, extraParams ...URLParam) error

func (*Client) Get

func (c *Client) Get(url *url.URL) ([]byte, error)

func (Client) GetAll

func (c Client) GetAll(g Getter, basePath string) ([]byte, error)

func (Client) GetItem

func (c Client) GetItem(g ItemGetter, basePath, id string) ([]byte, error)

func (*Client) Post

func (c *Client) Post(url *url.URL) ([]byte, error)

func (Client) PostItem

func (c Client) PostItem(p Poster, basePath string) ([]byte, error)

func (*Client) Put

func (c *Client) Put(url *url.URL) ([]byte, error)

func (Client) PutItem

func (c Client) PutItem(p ItemPutter, basePath, id string) ([]byte, error)

type Getter

type Getter interface {
	GetAll() ([]byte, error)
	ParseParams(*url.URL) error
}

type ItemDeleter

type ItemDeleter interface {
	Delete() error
}

type ItemGetter

type ItemGetter interface {
	GetItem() ([]byte, error)
}

type ItemPutter

type ItemPutter interface {
	PutItem() ([]byte, error)
	ParseParams(*url.URL) error
}

type Poster

type Poster interface {
	PostItem() ([]byte, error)
	ParseParams(*url.URL) error
}

type Ticket

type Ticket struct {
	CSRFPreventionToken string `json:"CSRFPreventionToken"`
	Ticket              string `json:"ticket"`
	Username            string `json:"username"`
	NeedTFA             int    `json:"NeedTFA"`
}

type URLParam

type URLParam struct {
	Key   string
	Value types.PVEAPIType
}

type UserPass

type UserPass struct {
	User     string
	Pass     string
	TOTPSeed string
}

Jump to

Keyboard shortcuts

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