jamf

package
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateBearerToken

func CreateBearerToken(ctx context.Context, username string, password string, serverInstance string) (string, error)

CreateBearerToken creates bearer token needed to use the Jamf API.

Types

type Acccount

type Acccount struct {
	Name        string      `json:"name"`
	ID          string      `json:"id"`
	UserAccount UserAccount `json:"user_account"`
	Group       Group       `json:"group"`
}

type Account

type Account struct {
	ID             string `json:"id"`
	Username       string `json:"username"`
	RealName       string `json:"realName"`
	Email          string `json:"email"`
	MultiSiteAdmin bool   `json:"multiSiteAdmin"`
	AccessLevel    string `json:"accessLevel"`
	PrivilegeSet   string `json:"privilegeSet"`
	CurrentSiteID  string `json:"currentSiteId"`
}

type BaseAccount

type BaseAccount struct {
	Users  []User  `json:"users"`
	Groups []Group `json:"groups"`
}

type BaseType

type BaseType struct {
	ID   int    `json:"id"`
	Name string `json:"name"`
}

type Client

type Client struct {
	// contains filtered or unexported fields
}

func NewClient

func NewClient(httpClient *http.Client, token string, baseUrl string, instanceURL string) *Client

func (*Client) GetAccounts

func (c *Client) GetAccounts(ctx context.Context) ([]UserAccount, []Group, error)

GetUsers returns all Jamf accounts.

func (*Client) GetGroupDetails

func (c *Client) GetGroupDetails(ctx context.Context, groupId int) (Group, error)

GetGroupDetails returns Jamf group details.

func (*Client) GetSites

func (c *Client) GetSites(ctx context.Context) ([]Site, error)

GetSites returns all Jamf sites.

func (*Client) GetTokenDetails

func (c *Client) GetTokenDetails(ctx context.Context) (TokenDetails, error)

GetTokenDetails gets authorization details associated with the current api token.

func (*Client) GetUserAccountDetails

func (c *Client) GetUserAccountDetails(ctx context.Context, userId int) (UserAccount, error)

GetUserAccountDetails returns Jamf user account details.

func (*Client) GetUserGroupDetails

func (c *Client) GetUserGroupDetails(ctx context.Context, userGroupId int) (UserGroup, error)

GetUserGroupDetails returns Jamf user group details.

func (*Client) GetUserGroups

func (c *Client) GetUserGroups(ctx context.Context) ([]UserGroup, error)

GetUserGroups returns all Jamf user groups.

func (*Client) GetUsers

func (c *Client) GetUsers(ctx context.Context) ([]User, error)

GetUsers returns all Jamf users.

type Group

type Group struct {
	BaseType
	AccessLevel  string   `json:"access_level"`
	PrivilegeSet string   `json:"privilege_set"`
	Site         BaseType `json:"site"`
	Members      []struct {
		User BaseType `json:"user"`
	} `json:"members"`
}

type Site

type Site struct {
	BaseType
}

type TokenDetails

type TokenDetails struct {
	Account Account `json:"account"`
	Sites   []struct {
		ID   string `json:"id"`
		Name string `json:"name"`
	} `json:"sites"`
	AuthenticationType string `json:"authenticationType"`
}

type User

type User struct {
	BaseType
	FullName     string `json:"full_name"`
	Email        string `json:"email"`
	EmailAddress string `json:"email_address"`
	Username     string `json:"username"`
	Sites        []struct {
		Site BaseType `json:"site"`
	} `json:"sites"`
}

end user in Jamf.

type UserAccount

type UserAccount struct {
	BaseType
	FullName     string   `json:"full_name"`
	Email        string   `json:"email"`
	EmailAddress string   `json:"email_address"`
	Enabled      string   `json:"enabled"`
	AccessLevel  string   `json:"access_level"`
	PrivilegeSet string   `json:"privilege_set"`
	Site         BaseType `json:"site"`
}

user that has access to their system and can be granted permissions.

type UserGroup

type UserGroup struct {
	BaseType
	IsSmart bool   `json:"is_smart"`
	Site    Site   `json:"site"`
	Users   []User `json:"users"`
}

Jump to

Keyboard shortcuts

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