jamfpro

package
v0.0.54 Latest Latest
Warning

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

Go to latest
Published: Nov 9, 2023 License: MIT Imports: 11 Imported by: 553

Documentation

Overview

classicapi_computer_extension_attributes.go Jamf Pro Classic Api - Computer Extension Attributes api reference: https://developer.jamf.com/jamf-pro/reference/computerextensionattributes Classic API requires the structs to support an XML data structure.

classicapi_computer_groups.go Jamf Pro Classic Api - Computer Groups api reference: https://developer.jamf.com/jamf-pro/reference/computergroups Classic API requires the structs to support an XML data structure.

classicapi_sites.go Jamf Pro Classic Api - Sites api reference: https://developer.jamf.com/jamf-pro/reference/sites Classic API requires the structs to support an XML data structure.

jamfproapi_volume_purchasing_locations.go Jamf Pro Api - Volume Purchasing Locations api reference: https://developer.jamf.com/jamf-pro/reference/get_v1-volume-purchasing-locations Jamf Pro API requires the structs to support an JSON data structure.

jamfproapi_volume_purchasing_subscriptions.go Jamf Pro Api - Volume Purchasing Subscriptions api reference: https://developer.jamf.com/jamf-pro/reference/get_v1-volume-purchasing-subscriptions Jamf Pro API requires the structs to support an JSON data structure.

http_logging.go

Index

Constants

This section is empty.

Variables

View Source
var DefaultLogger = NewDefaultLogger()

Expose the default logger instance for use in the main package.

Functions

func LoadClientAuthConfig added in v0.0.21

func LoadClientAuthConfig(filename string) (*http_client.ClientAuthConfig, error)

LoadClientAuthConfig reads a JSON configuration file and decodes it into a ClientAuthConfig struct.

Types

type APIRole added in v0.0.41

type APIRole struct {
	ID          string   `json:"id,omitempty"`
	DisplayName string   `json:"displayName,omitempty"`
	Privileges  []string `json:"privileges,omitempty"`
}

Role represents the details of an individual API role

type AccountDataSubsetGroup

type AccountDataSubsetGroup struct {
	ID         int                         `json:"id,omitempty" xml:"id,omitempty"`
	Name       string                      `json:"name" xml:"name"`
	Site       AccountDataSubsetSite       `json:"site,omitempty" xml:"site,omitempty"`
	Privileges AccountDataSubsetPrivileges `json:"privileges,omitempty" xml:"privileges,omitempty"`
}

type AccountDataSubsetGroups added in v0.0.14

type AccountDataSubsetGroups struct {
	Group []AccountDataSubsetGroup `xml:"group,omitempty"`
}

type AccountDataSubsetLdapServer

type AccountDataSubsetLdapServer struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name" xml:"name"`
}

type AccountDataSubsetMembers added in v0.0.14

type AccountDataSubsetMembers struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type AccountDataSubsetPrivileges

type AccountDataSubsetPrivileges struct {
	JSSObjects    []string `json:"jss_objects,omitempty" xml:"jss_objects>privilege"`
	JSSSettings   []string `json:"jss_settings,omitempty" xml:"jss_settings>privilege"`
	JSSActions    []string `json:"jss_actions,omitempty" xml:"jss_actions>privilege"`
	Recon         []string `json:"recon,omitempty" xml:"recon>privilege"`
	CasperAdmin   []string `json:"casper_admin,omitempty" xml:"casper_admin>privilege"`
	CasperRemote  []string `json:"casper_remote,omitempty" xml:"casper_remote>privilege"`
	CasperImaging []string `json:"casper_imaging,omitempty" xml:"casper_imaging>privilege"`
}

type AccountDataSubsetSite

type AccountDataSubsetSite struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name" xml:"name"`
}

type AccountDataSubsetUser

type AccountDataSubsetUser struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type AccountDataSubsetUserItem added in v0.0.14

type AccountDataSubsetUserItem struct {
	ID   int    `xml:"id,omitempty"`
	Name string `xml:"name,omitempty"`
}

type AccountDataSubsetUsers added in v0.0.14

type AccountDataSubsetUsers struct {
	User []AccountDataSubsetUserItem `xml:"user,omitempty"`
}

type AccountUser

type AccountUser struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name" xml:"name"`
}

type AdvancedComputerSearchDataSubsetComputer added in v0.0.36

type AdvancedComputerSearchDataSubsetComputer struct {
	Size     int            `xml:"size"`
	Computer ComputerDetail `xml:"computer"`
}

Computer represents a computer with its details.

type AdvancedComputerSearchDetail added in v0.0.36

type AdvancedComputerSearchDetail struct {
	ID   int    `json:"id,omitempty" xml:"id"`
	Name string `json:"name,omitempty" xml:"name"`
}

AdvancedComputerSearchDetail represents the details of an advanced computer search.

type AdvancedComputerSearchesCriteria added in v0.0.48

type AdvancedComputerSearchesCriteria struct {
	Size      int             `xml:"size"`
	Criterion CriterionDetail `xml:"criterion"`
}

Criteria represents a criterion with its details.

type AdvancedComputerSearchesDisplayField added in v0.0.48

type AdvancedComputerSearchesDisplayField struct {
	Size         int                `xml:"size"`
	DisplayField DisplayFieldDetail `xml:"display_field"`
}

DisplayField represents a display field with its details.

type AdvancedComputerSearchesSiteDetail added in v0.0.48

type AdvancedComputerSearchesSiteDetail struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

SiteDetail represents the details of a site.

type AdvancedMobileDeviceSearchDetail added in v0.0.48

type AdvancedMobileDeviceSearchDetail struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

AdvancedMobileDeviceSearchDetail represents the details of an advanced mobile device search.

type AdvancedMobileDeviceSearchesCriteria added in v0.0.48

type AdvancedMobileDeviceSearchesCriteria struct {
	Size      int       `xml:"size"`      // Number of criteria
	Criterion Criterion `xml:"criterion"` // Detailed criterion
}

CriteriaDetail represents a single search criterion.

type AdvancedMobileDeviceSearchesDisplayField added in v0.0.48

type AdvancedMobileDeviceSearchesDisplayField struct {
	Size         int                                          `xml:"size"`          // Number of display fields
	DisplayField AdvancedMobileDeviceSearchesDisplayFieldItem `xml:"display_field"` // Detailed display field
}

DisplayFieldDetailWrapper wraps a display field with its size.

type AdvancedMobileDeviceSearchesDisplayFieldItem added in v0.0.48

type AdvancedMobileDeviceSearchesDisplayFieldItem struct {
	Name string `xml:"name"` // Name of the display field
}

DisplayField represents a field to display in the search results.

type AdvancedMobileDeviceSearchesMobileDevice added in v0.0.48

type AdvancedMobileDeviceSearchesMobileDevice struct {
	Size         int              `xml:"size"`          // Number of mobile devices
	MobileDevice MobileDeviceItem `xml:"mobile_device"` // Detailed mobile device
}

MobileDeviceDetailWrapper wraps a mobile device with its size.

type AdvancedMobileDeviceSearchesSite added in v0.0.48

type AdvancedMobileDeviceSearchesSite struct {
	ID   int    `xml:"id"`   // Unique identifier for the site
	Name string `xml:"name"` // Name of the site
}

SiteDetail represents the details of a site associated with the search.

type AdvancedUserSearch added in v0.0.44

type AdvancedUserSearch struct {
	ID            int                                        `xml:"id"`
	Name          string                                     `xml:"name"`
	Criteria      []AdvancedUserSearchCriteriaDetail         `xml:"criteria"`
	Users         []AdvancedUserSearchSiteUsersDetail        `xml:"users"`
	DisplayFields []AdvancedUserSearchSiteDisplayFieldDetail `xml:"display_fields"`
	Site          AdvancedUserSearchSiteDetail               `xml:"site"`
}

Structs for Advanced User Search details by ID

type AdvancedUserSearchCriteriaDetail added in v0.0.44

type AdvancedUserSearchCriteriaDetail struct {
	Size      int                               `xml:"size"`
	Criterion AdvancedUserSearchCriterionDetail `xml:"criterion"`
}

type AdvancedUserSearchCriterionDetail added in v0.0.44

type AdvancedUserSearchCriterionDetail struct {
	Name         string `xml:"name"`
	Priority     int    `xml:"priority"`
	AndOr        string `xml:"and_or"`
	SearchType   string `xml:"search_type"`
	Value        string `xml:"value"`
	OpeningParen bool   `xml:"opening_paren"`
	ClosingParen bool   `xml:"closing_paren"`
}

type AdvancedUserSearchDetail added in v0.0.44

type AdvancedUserSearchDetail struct {
	XMLName xml.Name `xml:"advanced_user_search"`
	ID      int      `xml:"id"`
	Name    string   `xml:"name"`
}

type AdvancedUserSearchSiteDetail added in v0.0.44

type AdvancedUserSearchSiteDetail struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type AdvancedUserSearchSiteDisplayFieldDetail added in v0.0.44

type AdvancedUserSearchSiteDisplayFieldDetail struct {
	Size         int `xml:"size"`
	DisplayField struct {
		Name string `xml:"name"`
	} `xml:"display_field"`
}

type AdvancedUserSearchSiteUserDetail added in v0.0.44

type AdvancedUserSearchSiteUserDetail struct {
	ID       int    `xml:"id,omitempty"`
	Name     string `xml:"name,omitempty"`
	Username string `xml:"Username,omitempty"`
}

type AdvancedUserSearchSiteUsersDetail added in v0.0.44

type AdvancedUserSearchSiteUsersDetail struct {
	Size int                              `xml:"size"`
	User AdvancedUserSearchSiteUserDetail `xml:"user"`
}

type AllowedFileExtensionDetail added in v0.0.9

type AllowedFileExtensionDetail struct {
	XMLName   xml.Name `xml:"allowed_file_extension"`
	ID        int      `xml:"id"`
	Extension string   `xml:"extension"`
}

type ApiIntegration added in v0.0.13

type ApiIntegration struct {
	ID                         int      `json:"id,omitempty"`
	AuthorizationScopes        []string `json:"authorizationScopes,omitempty"`
	DisplayName                string   `json:"displayName,omitempty"`
	Enabled                    bool     `json:"enabled,omitempty"`
	AccessTokenLifetimeSeconds int      `json:"accessTokenLifetimeSeconds,omitempty"`
	AppType                    string   `json:"appType,omitempty"`
	ClientID                   string   `json:"clientId,omitempty"`
}

Integration represents the details of an individual API integration

type AssignmentItem added in v0.0.49

type AssignmentItem struct {
	SerialNumber   string `json:"serialNumber"`
	AssignmentDate string `json:"assignmentDate"`
	UserAssigned   string `json:"userAssigned"`
}

AssignmentItem represents the structure of each assignment within the prestage scope.

type BYOProfileGeneralInfo added in v0.0.50

type BYOProfileGeneralInfo struct {
	ID          int                `xml:"id"`
	Name        string             `xml:"name"`
	Site        BYOProfileSiteInfo `xml:"site"`
	Enabled     bool               `xml:"enabled"`
	Description string             `xml:"description"`
}

GeneralInfo represents the general section of a BYO profile.

type BYOProfileItem added in v0.0.50

type BYOProfileItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

BYOProfileItem represents a single BYO profile item in the list.

type BYOProfileSiteInfo added in v0.0.50

type BYOProfileSiteInfo struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

SiteInfo represents the site information of a BYO profile.

type BeaconDetail added in v0.0.11

type BeaconDetail struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type Building added in v0.0.11

type Building struct {
	ID   int    `xml:"id,omitempty"`
	Name string `xml:"name,omitempty"`
}

type BuildingAssignment added in v0.0.11

type BuildingAssignment struct {
	Building BuildingInfo `json:"building,omitempty" xml:"building,omitempty"`
}

type BuildingDetail added in v0.0.8

type BuildingDetail struct {
	ID             int    `json:"id,omitempty" xml:"id"`
	Name           string `json:"name,omitempty" xml:"name"`
	StreetAddress1 string `json:"streetAddress1,omitempty" xml:"streetAddress1,omitempty"`
	StreetAddress2 string `json:"streetAddress2,omitempty" xml:"streetAddress2,omitempty"`
	City           string `json:"city,omitempty" xml:"city,omitempty"`
	StateProvince  string `json:"stateProvince,omitempty" xml:"stateProvince,omitempty"`
	ZipPostalCode  string `json:"zipPostalCode,omitempty" xml:"zipPostalCode,omitempty"`
	Country        string `json:"country,omitempty" xml:"country,omitempty"`
	Href           string `json:"href,omitempty" xml:"href,omitempty"`
}

type BuildingInfo added in v0.0.11

type BuildingInfo struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type BuildingScope added in v0.0.11

type BuildingScope struct {
	ID   int    `xml:"id,omitempty"`
	Name string `xml:"name,omitempty"`
}

type CategoryInfo added in v0.0.11

type CategoryInfo struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type CategoryItem added in v0.0.45

type CategoryItem struct {
	Id       string `json:"id,omitempty"`
	Name     string `json:"name,omitempty"`
	Priority int    `json:"priority,omitempty"`
}

type ClassAppleTV added in v0.0.51

type ClassAppleTV struct {
	Name            string `xml:"name"`
	UDID            string `xml:"udid"`
	WifiMacAddress  string `xml:"wifi_mac_address"`
	DeviceID        string `xml:"device_id"`
	AirplayPassword string `xml:"airplay_password"`
}

type ClassDeviceGroup added in v0.0.51

type ClassDeviceGroup struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type ClassGroupID added in v0.0.51

type ClassGroupID struct {
	ID int `xml:"id"`
}

type ClassItem added in v0.0.51

type ClassItem struct {
	ID          int    `xml:"id"`
	Name        string `xml:"name"`
	Description string `xml:"description"`
}

ClassItem represents a single class item in the list.

type ClassMeetingTime added in v0.0.51

type ClassMeetingTime struct {
	Days      string `xml:"days"`
	StartTime int    `xml:"start_time"`
	EndTime   int    `xml:"end_time"`
}

type ClassMeetingTimes added in v0.0.51

type ClassMeetingTimes struct {
	MeetingTime ClassMeetingTime `xml:"meeting_time"`
}

type ClassMobileDevice added in v0.0.51

type ClassMobileDevice struct {
	Name           string `xml:"name"`
	UDID           string `xml:"udid"`
	WifiMacAddress string `xml:"wifi_mac_address"`
}

type ClassSite added in v0.0.51

type ClassSite struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type ClassStudent added in v0.0.51

type ClassStudent struct {
	Student string `xml:"student"`
}

type ClassTeacher added in v0.0.51

type ClassTeacher struct {
	Teacher string `xml:"teacher"`
}

type ClassTeacherID added in v0.0.51

type ClassTeacherID struct {
	ID int `xml:"id"`
}

type Client

type Client struct {
	HTTP *http_client.Client
}

func NewClient

func NewClient(config Config) (*Client, error)

func (*Client) CreateAccountByID

func (c *Client) CreateAccountByID(account *ResponseAccount) (*ResponseAccount, error)

CreateAccountByID creates an Account using its ID

func (*Client) CreateAccountGroupByID added in v0.0.14

func (c *Client) CreateAccountGroupByID(accountGroup *ResponseAccountGroup) (*ResponseAccountGroup, error)

CreateAccountGroupByID creates an Account Group using its ID

func (*Client) CreateAdvancedComputerSearch added in v0.0.36

func (c *Client) CreateAdvancedComputerSearch(search *ResponseAdvancedComputerSearch) (*ResponseAdvancedComputerSearch, error)

CreateAdvancedComputerSearch creates a new advanced computer search.

func (*Client) CreateAdvancedMobileDeviceSearchByID added in v0.0.48

func (c *Client) CreateAdvancedMobileDeviceSearchByID(id int, search *ResponseAdvancedMobileDeviceSearches) (*ResponseAdvancedMobileDeviceSearches, error)

CreateAdvancedMobileDeviceSearchByID creates a new advanced mobile device search with the given ID.

func (*Client) CreateAdvancedUserSearch added in v0.0.44

func (c *Client) CreateAdvancedUserSearch(search *AdvancedUserSearch) (*AdvancedUserSearch, error)

CreateAdvancedUserSearch creates a new advanced user search.

func (*Client) CreateAllowedFileExtension added in v0.0.9

func (c *Client) CreateAllowedFileExtension(extension *AllowedFileExtensionDetail) (*AllowedFileExtensionDetail, error)

CreateAllowedFileExtension creates a new allowed file extension

func (*Client) CreateApiIntegration added in v0.0.13

func (c *Client) CreateApiIntegration(integration *ApiIntegration) (*ApiIntegration, error)

CreateApiIntegration creates a new API integration

func (*Client) CreateBYOProfile added in v0.0.50

func (c *Client) CreateBYOProfile(profile *ResponseBYOProfile) (*ResponseBYOProfile, error)

CreateBYOProfile creates a new BYO profile.

func (*Client) CreateBuilding added in v0.0.9

func (c *Client) CreateBuilding(building *Building) (*Building, error)

CreateBuilding creates a new building

func (*Client) CreateCategory added in v0.0.45

func (c *Client) CreateCategory(category *ResponseCategories) (*ResponseCategories, error)

CreateCategory creates a new category

func (*Client) CreateClassesByID added in v0.0.51

func (c *Client) CreateClassesByID(class *ResponseClasses) (*ResponseClasses, error)

CreateClassesByID creates a new class with the given details.

func (*Client) CreateClientCredentialsByApiRoleID added in v0.0.13

func (c *Client) CreateClientCredentialsByApiRoleID(id string) (*ClientCredentials, error)

CreateClientCredentialsByApiRoleID creates new client credentials for an API integration by its ID

func (*Client) CreateComputerExtensionAttribute added in v0.0.27

func (c *Client) CreateComputerExtensionAttribute(attribute *ResponseComputerExtensionAttribute) (*ResponseComputerExtensionAttribute, error)

CreateComputerExtensionAttribute creates a new computer extension attribute.

func (*Client) CreateComputerGroup added in v0.0.16

func (c *Client) CreateComputerGroup(group *ResponseComputerGroup) (*ResponseComputerGroup, error)

CreateComputerGroup creates a new computer group.

func (*Client) CreateComputerInventoryCollectionSettingsCustomPath added in v0.0.53

func (c *Client) CreateComputerInventoryCollectionSettingsCustomPath(customPath *ComputerInventoryCollectionSettingsCustomPath) (*ComputerInventoryCollectionSettingsCustomPath, error)

CreateComputerInventoryCollectionSettingsCustomPath creates a custom path for computer inventory collection settings.

func (*Client) CreateComputerPrestage added in v0.0.49

func (c *Client) CreateComputerPrestage(prestage *ComputerPrestagesItem) (*ComputerPrestagesItem, error)

CreateComputerPrestage creates a new computer prestage with the given details.

func (*Client) CreateDepartment added in v0.0.10

func (c *Client) CreateDepartment(departmentName string) (*ResponseDepartment, error)

CreateDepartment creates a new department

func (*Client) CreateJamfApiRole added in v0.0.12

func (c *Client) CreateJamfApiRole(role *APIRole) (*APIRole, error)

CreateJamfApiRole creates a new Jamf API role

func (*Client) CreateMacOSConfigurationProfile added in v0.0.11

func (c *Client) CreateMacOSConfigurationProfile(profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)

func (*Client) CreatePolicyByID added in v0.0.45

func (c *Client) CreatePolicyByID(policy *ResponsePolicy) (*ResponsePolicy, error)

CreatePolicy creates a new policy.

func (*Client) CreateScriptByID added in v0.0.15

func (c *Client) CreateScriptByID(script *ResponseScript) (*ResponseScript, error)

CreateScriptByID creates a new script by its ID.

func (*Client) CreateSelfServiceBrandingMacOS added in v0.0.49

func (c *Client) CreateSelfServiceBrandingMacOS(branding *SelfServiceBrandingDetail) (*SelfServiceBrandingDetail, error)

CreateSelfServiceBrandingMacOS creates a new self-service branding configuration for macOS.

func (*Client) CreateSite added in v0.0.32

func (c *Client) CreateSite(site *ResponseSite) (*ResponseSite, error)

CreateSite creates a new site.

func (*Client) CreateVolumePurchasingSubscription added in v0.0.52

func (c *Client) CreateVolumePurchasingSubscription(subscription *VolumePurchasingSubscription) (*VolumePurchasingSubscription, error)

CreateVolumePurchasingSubscription creates a new volume purchasing subscription

func (*Client) DeleteAccountByID

func (c *Client) DeleteAccountByID(id int) error

DeleteAccountByID deletes an Account using its ID

func (*Client) DeleteAccountByName added in v0.0.14

func (c *Client) DeleteAccountByName(name string) error

DeleteAccountByName deletes an Account using its name.

func (*Client) DeleteAccountGroupByID added in v0.0.14

func (c *Client) DeleteAccountGroupByID(id int) error

DeleteAccountGroupByID deletes an Account Group using its ID.

func (*Client) DeleteAccountGroupByName added in v0.0.14

func (c *Client) DeleteAccountGroupByName(name string) error

DeleteAccountGroupByName deletes an Account Group using its name.

func (*Client) DeleteAdvancedComputerSearchByID added in v0.0.36

func (c *Client) DeleteAdvancedComputerSearchByID(id int) error

DeleteAdvancedComputerSearchByID deletes an advanced computer search by its ID.

func (*Client) DeleteAdvancedComputerSearchByName added in v0.0.36

func (c *Client) DeleteAdvancedComputerSearchByName(name string) error

DeleteAdvancedComputerSearchByName deletes an advanced computer search by its name.

func (*Client) DeleteAdvancedMobileDeviceSearchByID added in v0.0.48

func (c *Client) DeleteAdvancedMobileDeviceSearchByID(id int) error

DeleteAdvancedMobileDeviceSearchByID deletes an existing advanced mobile device search by its ID.

func (*Client) DeleteAdvancedMobileDeviceSearchByName added in v0.0.48

func (c *Client) DeleteAdvancedMobileDeviceSearchByName(name string) error

DeleteAdvancedMobileDeviceSearchByName deletes an existing advanced mobile device search by its name.

func (*Client) DeleteAdvancedUserSearchByID added in v0.0.44

func (c *Client) DeleteAdvancedUserSearchByID(id int) error

DeleteAdvancedUserSearchByID deletes an advanced user search by its ID.

func (*Client) DeleteAdvancedUserSearchByName added in v0.0.44

func (c *Client) DeleteAdvancedUserSearchByName(name string) error

DeleteAdvancedUserSearchByName deletes an advanced user search by its name.

func (*Client) DeleteAllowedFileExtensionByID added in v0.0.9

func (c *Client) DeleteAllowedFileExtensionByID(id int) error

DeleteAllowedFileExtensionByID deletes an existing allowed file extension by ID

func (*Client) DeleteAllowedFileExtensionByName added in v0.0.9

func (c *Client) DeleteAllowedFileExtensionByName(extensionName string) error

DeleteAllowedFileExtensionByNameByID deletes an existing allowed file extension by resolving its name to an ID

func (*Client) DeleteApiIntegrationByID added in v0.0.13

func (c *Client) DeleteApiIntegrationByID(id string) error

DeleteApiIntegrationByID deletes an API integration by its ID

func (*Client) DeleteApiIntegrationByName added in v0.0.13

func (c *Client) DeleteApiIntegrationByName(name string) error

DeleteApiIntegrationByName deletes an API integration by its display name

func (*Client) DeleteBYOProfileByID added in v0.0.50

func (c *Client) DeleteBYOProfileByID(id int) error

DeleteBYOProfileByID deletes a BYO profile by its ID.

func (*Client) DeleteBYOProfileByName added in v0.0.50

func (c *Client) DeleteBYOProfileByName(name string) error

DeleteBYOProfileByName deletes a BYO profile by its name.

func (*Client) DeleteBuildingByID added in v0.0.12

func (c *Client) DeleteBuildingByID(id int) error

DeleteBuildingByID deletes an existing building by its ID

func (*Client) DeleteBuildingByName added in v0.0.12

func (c *Client) DeleteBuildingByName(name string) error

DeleteBuildingByName deletes an existing building by its name

func (*Client) DeleteCategoryByID added in v0.0.45

func (c *Client) DeleteCategoryByID(id int) error

DeleteCategoryByID deletes a category by its ID

func (*Client) DeleteCategoryByNameByID added in v0.0.45

func (c *Client) DeleteCategoryByNameByID(name string) error

DeleteCategoryByNameByID deletes a category by its name after inferring its ID

func (*Client) DeleteClassByID added in v0.0.51

func (c *Client) DeleteClassByID(id int) error

DeleteClassByID deletes an existing class with the given ID.

func (*Client) DeleteClassByName added in v0.0.51

func (c *Client) DeleteClassByName(name string) error

DeleteClassByName deletes a class by its name.

func (*Client) DeleteComputerExtensionAttributeByID added in v0.0.27

func (c *Client) DeleteComputerExtensionAttributeByID(id int) error

DeleteComputerExtensionAttributeByID deletes a computer extension attribute by its ID.

func (*Client) DeleteComputerExtensionAttributeByNameByID added in v0.0.27

func (c *Client) DeleteComputerExtensionAttributeByNameByID(name string) error

DeleteComputerExtensionAttributeByNameByID deletes a computer extension attribute by its name. there is no url directly for deletion by resource name. so it is resolved in a two step process.

func (*Client) DeleteComputerGroupByID added in v0.0.16

func (c *Client) DeleteComputerGroupByID(id int) error

DeleteComputerGroupByID deletes a computer group by its ID.

func (*Client) DeleteComputerGroupByName added in v0.0.16

func (c *Client) DeleteComputerGroupByName(name string) error

DeleteComputerGroupByName deletes a computer group by its name.

func (*Client) DeleteComputerInventoryCollectionSettingsCustomPathByID added in v0.0.53

func (c *Client) DeleteComputerInventoryCollectionSettingsCustomPathByID(id string) error

DeleteComputerInventoryCollectionSettingsCustomPathByID deletes a custom path by ID.

func (*Client) DeleteComputerPrestageByID added in v0.0.49

func (c *Client) DeleteComputerPrestageByID(id string) error

DeleteComputerPrestageByID deletes a computer prestage by its ID

func (*Client) DeleteComputerPrestageByName added in v0.0.49

func (c *Client) DeleteComputerPrestageByName(name string) error

DeleteComputerPrestageByName deletes a computer prestage by its name.

func (*Client) DeleteDepartmentByID added in v0.0.10

func (c *Client) DeleteDepartmentByID(id int) error

DeleteDepartmentByID deletes an existing department by its ID

func (*Client) DeleteDepartmentByName added in v0.0.10

func (c *Client) DeleteDepartmentByName(name string) error

DeleteDepartmentByName deletes an existing department by its name

func (*Client) DeleteJamfApiRoleByID added in v0.0.12

func (c *Client) DeleteJamfApiRoleByID(id string) error

DeleteJamfApiRoleByID deletes a Jamf API role by its ID

func (*Client) DeleteJamfApiRoleByName added in v0.0.12

func (c *Client) DeleteJamfApiRoleByName(name string) error

DeleteJamfApiRoleByName deletes a Jamf API role by its display name

func (*Client) DeleteMacOSConfigurationProfileByID added in v0.0.11

func (c *Client) DeleteMacOSConfigurationProfileByID(id int) error

func (*Client) DeleteMacOSConfigurationProfileByName added in v0.0.11

func (c *Client) DeleteMacOSConfigurationProfileByName(name string) error

func (*Client) DeleteMultipleCategoriesByID added in v0.0.45

func (c *Client) DeleteMultipleCategoriesByID(ids []string) error

DeleteMultipleCategoriesByID deletes multiple categories by their IDs

func (*Client) DeletePolicyByID added in v0.0.45

func (c *Client) DeletePolicyByID(id int) error

DeletePolicyByID deletes a policy by its ID.

func (*Client) DeletePolicyByName added in v0.0.45

func (c *Client) DeletePolicyByName(name string) error

DeletePolicyByName deletes a policy by its name.

func (*Client) DeleteScriptByID added in v0.0.15

func (c *Client) DeleteScriptByID(id int) error

DeleteScriptByID deletes a script by its ID.

func (*Client) DeleteScriptByName added in v0.0.15

func (c *Client) DeleteScriptByName(name string) error

DeleteScriptByName deletes a script by its name.

func (*Client) DeleteSelfServiceBrandingMacOSByID added in v0.0.49

func (c *Client) DeleteSelfServiceBrandingMacOSByID(id string) error

DeleteSelfServiceBrandingMacOSByID deletes a self-service branding configuration for macOS by ID.

func (*Client) DeleteSelfServiceBrandingMacOSByName added in v0.0.49

func (c *Client) DeleteSelfServiceBrandingMacOSByName(name string) error

DeleteSelfServiceBrandingMacOSByName deletes a self-service branding configuration for macOS by name.

func (*Client) DeleteSiteByID added in v0.0.32

func (c *Client) DeleteSiteByID(id int) error

DeleteSiteByID deletes a site by its ID.

func (*Client) DeleteSiteByName added in v0.0.32

func (c *Client) DeleteSiteByName(name string) error

DeleteSiteByName deletes a site by its name.

func (*Client) DeleteVolumePurchasingSubscriptionByID added in v0.0.52

func (c *Client) DeleteVolumePurchasingSubscriptionByID(id string) error

DeleteVolumePurchasingSubscriptionByID deletes a volume purchasing subscription by its ID

func (*Client) DeleteVolumePurchasingSubscriptionByName added in v0.0.52

func (c *Client) DeleteVolumePurchasingSubscriptionByName(name string) error

DeleteVolumePurchasingSubscriptionByName finds a subscription by name and deletes it by its ID

func (*Client) DownloadIcon added in v0.0.50

func (c *Client) DownloadIcon(iconID int, savePath string, res string, scale string) error

DownloadIcon downloads an icon by its ID from Jamf Pro and saves it to the specified file path. The icon is saved to the path provided in the 'savePath' parameter.

func (*Client) GetAccountByID

func (c *Client) GetAccountByID(id int) (*ResponseAccount, error)

GetAccountByID retrieves the Account by its ID

func (*Client) GetAccountByName

func (c *Client) GetAccountByName(name string) (*ResponseAccount, error)

GetAccountByName retrieves the Account by its name

func (*Client) GetAccountGroupByID added in v0.0.14

func (c *Client) GetAccountGroupByID(id int) (*ResponseAccountGroup, error)

GetAccountGroupByID gets an account group using its ID and returns a response.

func (*Client) GetAccountGroupByName added in v0.0.14

func (c *Client) GetAccountGroupByName(name string) (*ResponseAccount, error)

GetAccountByName retrieves the Account by its name

func (*Client) GetAccounts added in v0.0.14

func (c *Client) GetAccounts() (*ResponseAccountsList, error)

GetAccounts retrieves a list of all accounts (both users and groups).

func (*Client) GetActivationCode added in v0.0.46

func (c *Client) GetActivationCode() (*ResponseActivationCode, error)

GetActivationCode retrieves the activation code.

func (*Client) GetActiveCertificateAuthority added in v0.0.52

func (c *Client) GetActiveCertificateAuthority() (*ResponseActiveCertificateAuthority, error)

GetActiveCertificateAuthority retrieves the active certificate authority details.

func (*Client) GetAdvancedComputerSearchByID added in v0.0.36

func (c *Client) GetAdvancedComputerSearchByID(id int) (*ResponseAdvancedComputerSearch, error)

GetAdvancedComputerSearchByID retrieves an advanced computer search by its ID

func (*Client) GetAdvancedComputerSearches added in v0.0.36

func (c *Client) GetAdvancedComputerSearches() (*ResponseAdvancedComputerSearches, error)

GetAdvancedComputerSearches retrieves all advanced computer searches.

func (*Client) GetAdvancedComputerSearchesByName added in v0.0.36

func (c *Client) GetAdvancedComputerSearchesByName(name string) (*ResponseAdvancedComputerSearch, error)

GetAdvancedComputerSearchesByName retrieves advanced computer searches by their name

func (*Client) GetAdvancedMobileDeviceSearchByID added in v0.0.48

func (c *Client) GetAdvancedMobileDeviceSearchByID(id int) (*ResponseAdvancedMobileDeviceSearches, error)

GetAdvancedMobileDeviceSearchByID retrieves an advanced mobile device search by its ID.

func (*Client) GetAdvancedMobileDeviceSearchByName added in v0.0.48

func (c *Client) GetAdvancedMobileDeviceSearchByName(name string) (*ResponseAdvancedMobileDeviceSearches, error)

GetAdvancedMobileDeviceSearchByName retrieves an advanced mobile device search by its name.

func (*Client) GetAdvancedMobileDeviceSearches added in v0.0.48

func (c *Client) GetAdvancedMobileDeviceSearches() (*ResponseAdvancedMobileDeviceSearchesList, error)

GetAdvancedMobileDeviceSearches retrieves all advanced mobile device searches.

func (*Client) GetAdvancedUserSearchByID added in v0.0.44

func (c *Client) GetAdvancedUserSearchByID(id int) (*AdvancedUserSearch, error)

GetAdvancedUserSearchByID retrieves an advanced user search by its ID

func (*Client) GetAdvancedUserSearchByName added in v0.0.44

func (c *Client) GetAdvancedUserSearchByName(name string) (*AdvancedUserSearch, error)

GetAdvancedUserSearchByName retrieves an advanced user search by its name

func (*Client) GetAdvancedUserSearches added in v0.0.44

func (c *Client) GetAdvancedUserSearches() (*ResponseAdvancedUserSearchesList, error)

GetAdvancedUserSearches retrieves all advanced user searches

func (*Client) GetAllowedFileExtensionByID added in v0.0.9

func (c *Client) GetAllowedFileExtensionByID(id int) (*AllowedFileExtensionDetail, error)

GetAllowedFileExtensionByID retrieves the allowed file extension by its ID

func (*Client) GetAllowedFileExtensionByName added in v0.0.9

func (c *Client) GetAllowedFileExtensionByName(extensionName string) (*AllowedFileExtensionDetail, error)

GetAllowedFileExtensionByName retrieves the allowed file extension by its name

func (*Client) GetAllowedFileExtensions added in v0.0.9

func (c *Client) GetAllowedFileExtensions() (*ResponseAllowedFileExtensionsList, error)

GetAllowedFileExtensions retrieves all allowed file extensions

func (*Client) GetApiIntegrationByID added in v0.0.13

func (c *Client) GetApiIntegrationByID(id int) (*ApiIntegration, error)

GetApiIntegrationByID fetches an API integration by its ID

func (*Client) GetApiIntegrationNameByID added in v0.0.13

func (c *Client) GetApiIntegrationNameByID(name string) (*ApiIntegration, error)

GetApiIntegrationNameByID fetches an API integration by its display name and then retrieves its details using its ID

func (*Client) GetApiIntegrations added in v0.0.13

func (c *Client) GetApiIntegrations() (*ResponseApiIntegrations, error)

GetApiIntegrations fetches all API integrations

func (*Client) GetBYOProfileByID added in v0.0.50

func (c *Client) GetBYOProfileByID(id int) (*ResponseBYOProfile, error)

GetBYOProfileByID retrieves a BYO profile by its ID.

func (*Client) GetBYOProfileByName added in v0.0.50

func (c *Client) GetBYOProfileByName(name string) (*ResponseBYOProfile, error)

GetBYOProfileByName retrieves a BYO profile by its name.

func (*Client) GetBYOProfiles added in v0.0.50

func (c *Client) GetBYOProfiles() (*ResponseBYOProfilesList, error)

GetBYOProfiles gets a list of all BYO profiles.

func (*Client) GetBuildingByID added in v0.0.8

func (c *Client) GetBuildingByID(id string) (*BuildingDetail, error)

GetBuildingByID retrieves the building by its ID

func (*Client) GetBuildingByName added in v0.0.12

func (c *Client) GetBuildingByName(name string) (*Building, error)

GetBuildingByName retrieves the building by its name

func (*Client) GetBuildingIdByName added in v0.0.12

func (c *Client) GetBuildingIdByName(name string) (string, error)

GetBuildingIdByName retrieves the building ID by its name

func (*Client) GetBuildings added in v0.0.9

func (c *Client) GetBuildings() (*ResponseBuildings, error)

GetBuildings retrieves all buildings

func (*Client) GetCacheSettings added in v0.0.52

func (c *Client) GetCacheSettings() (*ResponseCacheSettings, error)

GetCacheSettings gets the current cache settings.

func (*Client) GetCategories added in v0.0.45

func (c *Client) GetCategories(page, pageSize int, sort, filter string) (*ResponseCategoriesList, error)

GetCategories retrieves categories based on query parameters

func (*Client) GetCategoryByID added in v0.0.45

func (c *Client) GetCategoryByID(id string) (*ResponseCategories, error)

GetCategoryByID retrieves a category by its ID

func (*Client) GetCategoryNameByID added in v0.0.45

func (c *Client) GetCategoryNameByID(name string) (*ResponseCategories, error)

GetCategoryNameByID retrieves a category by its name and then retrieves its details using its ID

func (*Client) GetClasses added in v0.0.51

func (c *Client) GetClasses() (*ResponseClassesList, error)

GetClasses gets a list of all classes.

func (*Client) GetClassesByID added in v0.0.51

func (c *Client) GetClassesByID(id int) (*ResponseClasses, error)

GetClassesByID retrieves a class by its ID.

func (*Client) GetClassesByName added in v0.0.51

func (c *Client) GetClassesByName(name string) (*ResponseClasses, error)

GetClassesByName retrieves a class by its name.

func (*Client) GetComputerExtensionAttributeByID added in v0.0.27

func (c *Client) GetComputerExtensionAttributeByID(id int) (*ResponseComputerExtensionAttribute, error)

GetComputerExtensionAttributeByID retrieves a computer extension attribute by its ID.

func (*Client) GetComputerExtensionAttributeByName added in v0.0.27

func (c *Client) GetComputerExtensionAttributeByName(name string) (*ResponseComputerExtensionAttribute, error)

GetComputerExtensionAttributeByName retrieves a computer extension attribute by its name.

func (*Client) GetComputerExtensionAttributes added in v0.0.27

func (c *Client) GetComputerExtensionAttributes() (*ResponseComputerExtensionAttributesList, error)

GetComputerExtensionAttributes gets a list of all computer extension attributes

func (*Client) GetComputerGroupByID added in v0.0.16

func (c *Client) GetComputerGroupByID(id int) (*ResponseComputerGroup, error)

GetComputerGroupByID retrieves a computer group by its ID.

func (*Client) GetComputerGroupByName added in v0.0.16

func (c *Client) GetComputerGroupByName(name string) (*ResponseComputerGroup, error)

GetComputerGroupByName retrieves a computer group by its name.

func (*Client) GetComputerGroups added in v0.0.16

func (c *Client) GetComputerGroups() (*ComputerGroupsListResponse, error)

GetComputerGroups gets a list of all computer groups

func (*Client) GetComputerInventoryCollectionSettings added in v0.0.53

func (c *Client) GetComputerInventoryCollectionSettings() (*ResponseComputerInventoryCollectionSettings, error)

func (*Client) GetComputerPrestageByID added in v0.0.35

func (c *Client) GetComputerPrestageByID(id string) (*ComputerPrestagesItem, error)

GetComputerPrestageByID retrieves a specific computer prestage by its ID.

func (*Client) GetComputerPrestageByName added in v0.0.49

func (c *Client) GetComputerPrestageByName(name string) (*ComputerPrestagesItem, error)

GetComputerPrestageByName retrieves a specific computer prestage by its name.

func (*Client) GetComputerPrestagesV3 added in v0.0.49

func (c *Client) GetComputerPrestagesV3(page, pageSize int, sort []string) (*ResponseComputerPrestagesV3, error)

GetComputerPrestagesV3 retrieves the computer prestage information with optional pagination and sorting.

func (*Client) GetDepartmentByID added in v0.0.10

func (c *Client) GetDepartmentByID(id int) (*ResponseDepartment, error)

GetDepartmentByID retrieves the department by its ID

func (*Client) GetDepartmentByName added in v0.0.10

func (c *Client) GetDepartmentByName(name string) (*ResponseDepartment, error)

GetDepartmentByName retrieves the department by its name

func (*Client) GetDepartmentIdByName added in v0.0.10

func (c *Client) GetDepartmentIdByName(name string) (int, error)

GetDepartmentIdByName retrieves the department ID by its name

func (*Client) GetDepartments added in v0.0.10

func (c *Client) GetDepartments() (*ResponseDepartmentsList, error)

GetDepartments retrieves all departments

func (*Client) GetDeviceScopeForComputerPrestage added in v0.0.49

func (c *Client) GetDeviceScopeForComputerPrestage(id string) (*ResponseDeviceScope, error)

GetDeviceScopeForComputerPrestage retrieves the device scope for a specific computer prestage by its ID.

func (*Client) GetJamfAPIPrivileges added in v0.0.43

func (c *Client) GetJamfAPIPrivileges() (*ResponseApiRolePrivileges, error)

GetJamfAPIPrivileges fetches a list of Jamf API role privileges

func (*Client) GetJamfAPIPrivilegesByName added in v0.0.43

func (c *Client) GetJamfAPIPrivilegesByName(name string, limit int) (*ResponseApiRolePrivileges, error)

GetJamfAPIPrivilegesByName fetches a list of Jamf API role privileges by name

func (*Client) GetJamfAPIRoles added in v0.0.12

func (c *Client) GetJamfAPIRoles() (*ResponseApiRoles, error)

GetJamfAPIRoles fetches a list of Jamf API roles

func (*Client) GetJamfApiRolesByID added in v0.0.12

func (c *Client) GetJamfApiRolesByID(id int) (*APIRole, error)

GetJamfApiRolesByID fetches a Jamf API role by its ID.

func (*Client) GetJamfApiRolesNameById added in v0.0.13

func (c *Client) GetJamfApiRolesNameById(name string) (*APIRole, error)

GetJamfApiRolesNameById fetches a Jamf API role by its display name and then retrieves its details using its ID.

func (*Client) GetJamfProInformation added in v0.0.53

func (c *Client) GetJamfProInformation() (*ResponseJamfProInformation, error)

func (*Client) GetJamfProVersion added in v0.0.10

func (c *Client) GetJamfProVersion() (*ResponseJamfProVersion, error)

func (*Client) GetMacOSConfigurationProfileByID added in v0.0.11

func (c *Client) GetMacOSConfigurationProfileByID(id int) (*ResponseMacOSConfigurationProfile, error)

func (*Client) GetMacOSConfigurationProfileByName added in v0.0.11

func (c *Client) GetMacOSConfigurationProfileByName(name string) (*ResponseMacOSConfigurationProfile, error)

func (*Client) GetMacOSConfigurationProfileNameByID added in v0.0.11

func (c *Client) GetMacOSConfigurationProfileNameByID(id int) (string, error)

func (*Client) GetMacOSConfigurationProfiles added in v0.0.11

func (c *Client) GetMacOSConfigurationProfiles() (*ResponseMacOSConfigurationProfileList, error)

func (*Client) GetPerformanceMetrics added in v0.0.35

func (c *Client) GetPerformanceMetrics() *http_client.ClientPerformanceMetrics

GetPerformanceMetrics returns the http client performance metrics from the client

func (*Client) GetPolicies added in v0.0.45

func (c *Client) GetPolicies() (*ResponsePoliciesList, error)

GetPolicies retrieves a list of all policies.

func (*Client) GetPoliciesByType added in v0.0.45

func (c *Client) GetPoliciesByType(createdBy string) (*ResponsePoliciesList, error)

GetPoliciesByType retrieves policies by the type of entity that created them. The createdBy param can be either the value 'casper' which refers to Casper Remote. Or the value 'jss', which refers to policies created in the GUI or via the API.

func (*Client) GetPolicyByCategory added in v0.0.45

func (c *Client) GetPolicyByCategory(category string) (*ResponsePoliciesList, error)

GetPolicyByCategory retrieves policies by their category.

func (*Client) GetPolicyByID added in v0.0.45

func (c *Client) GetPolicyByID(id int) (*ResponsePolicy, error)

GetPolicyByID retrieves the details of a policy by its ID.

func (*Client) GetPolicyByName added in v0.0.45

func (c *Client) GetPolicyByName(name string) (*ResponsePolicy, error)

GetPolicyByName retrieves a policy by its name.

func (*Client) GetSSOFailoverSettings

func (c *Client) GetSSOFailoverSettings() (*SSOFailoverResponse, error)

GetSSOFailoverSettings fetches SSO failover settings from Jamf Pro

func (*Client) GetScripts added in v0.0.15

func (c *Client) GetScripts() (*ResponseScriptsList, error)

GetScripts retrieves a list of all scripts.

func (*Client) GetScriptsByID added in v0.0.15

func (c *Client) GetScriptsByID(id int) (*ResponseScript, error)

GetScriptsByID retrieves the details of a script by its ID.

func (*Client) GetScriptsByName added in v0.0.15

func (c *Client) GetScriptsByName(name string) (*ResponseScript, error)

GetScriptsByName retrieves the details of a script by its name.

func (*Client) GetSelfServiceBrandingMacOS added in v0.0.49

func (c *Client) GetSelfServiceBrandingMacOS() (*ResponseSelfServiceBranding, error)

GetSelfServiceBrandingMacOS retrieves the list of self-service branding configurations for macOS.

func (*Client) GetSelfServiceBrandingMacOSByID added in v0.0.49

func (c *Client) GetSelfServiceBrandingMacOSByID(id string) (*SelfServiceBrandingDetail, error)

GetSelfServiceBrandingMacOSByID retrieves a specific self-service branding configuration for macOS by ID.

func (*Client) GetSelfServiceBrandingMacOSByNameByID added in v0.0.49

func (c *Client) GetSelfServiceBrandingMacOSByNameByID(name string) (*SelfServiceBrandingDetail, error)

GetSelfServiceBrandingMacOSByNameByID retrieves a specific self-service branding configuration for macOS by its name.

func (*Client) GetSiteByID added in v0.0.32

func (c *Client) GetSiteByID(id int) (*ResponseSite, error)

GetSiteByID retrieves a site by its ID.

func (*Client) GetSiteByName added in v0.0.32

func (c *Client) GetSiteByName(name string) (*ResponseSite, error)

GetSiteByName retrieves a site by its name.

func (*Client) GetSites added in v0.0.32

func (c *Client) GetSites() (*SitesListResponse, error)

GetSites gets a list of all sites

func (*Client) GetVolumePurchasingSubscriptionByID added in v0.0.52

func (c *Client) GetVolumePurchasingSubscriptionByID(id string) (*VolumePurchasingSubscription, error)

GetVolumePurchasingSubscriptionByID retrieves a single volume purchasing subscription by its ID

func (*Client) GetVolumePurchasingSubscriptionByNameByID added in v0.0.52

func (c *Client) GetVolumePurchasingSubscriptionByNameByID(name string) (*VolumePurchasingSubscription, error)

GetVolumePurchasingSubscriptionByNameByID fetches a volume purchasing subscription by its display name and retrieves its details using its ID.

func (*Client) GetVolumePurchasingSubscriptions added in v0.0.52

func (c *Client) GetVolumePurchasingSubscriptions() (*ResponseVolumePurchasingSubscriptionsList, error)

GetVolumePurchasingSubscriptions retrieves all volume purchasing subscriptions

func (*Client) SetAuthenticationCredentials added in v0.0.21

func (c *Client) SetAuthenticationCredentials(creds map[string]string)

SetAuthenticationCredentials sets the http clients bearer auth Credentials once a client has been initialised

func (*Client) SetClientOAuthCredentials added in v0.0.19

func (c *Client) SetClientOAuthCredentials(creds http_client.OAuthCredentials)

SetClientOAuthCredentials sets the http clients OAuth Credentials once a client has been initialised

func (*Client) UpdateAccountByID

func (c *Client) UpdateAccountByID(id int, account *ResponseAccount) (*ResponseAccount, error)

UpdateAccountByID updates an Account using its ID

func (*Client) UpdateAccountByName

func (c *Client) UpdateAccountByName(name string, account *ResponseAccount) (*ResponseAccount, error)

UpdateAccountByName updates an Account using its name.

func (*Client) UpdateAccountGroupByID added in v0.0.14

func (c *Client) UpdateAccountGroupByID(id int, group *ResponseAccountGroup) (*ResponseAccountGroup, error)

UpdateAccountGroupByID updates an Account Group using its ID

func (*Client) UpdateAccountGroupByName added in v0.0.14

func (c *Client) UpdateAccountGroupByName(name string, group *ResponseAccountGroup) (*ResponseAccountGroup, error)

UpdateAccountGroupByName updates an Account Group using its name.

func (*Client) UpdateActivationCode added in v0.0.46

func (c *Client) UpdateActivationCode(organizationName, code string) error

UpdateActivationCode updates the activation code.

func (*Client) UpdateAdvancedComputerSearchByID added in v0.0.36

func (c *Client) UpdateAdvancedComputerSearchByID(id int, search *ResponseAdvancedComputerSearch) (*ResponseAdvancedComputerSearch, error)

UpdateAdvancedComputerSearchByID updates an existing advanced computer search by its ID.

func (*Client) UpdateAdvancedComputerSearchByName added in v0.0.36

func (c *Client) UpdateAdvancedComputerSearchByName(name string, search *ResponseAdvancedComputerSearch) (*ResponseAdvancedComputerSearch, error)

UpdateAdvancedComputerSearchByName updates an existing advanced computer search by its name.

func (*Client) UpdateAdvancedMobileDeviceSearchByID added in v0.0.48

func (c *Client) UpdateAdvancedMobileDeviceSearchByID(id int, search *ResponseAdvancedMobileDeviceSearches) (*ResponseAdvancedMobileDeviceSearches, error)

UpdateAdvancedMobileDeviceSearchByID updates an existing advanced mobile device search by its ID.

func (*Client) UpdateAdvancedMobileDeviceSearchByName added in v0.0.48

func (c *Client) UpdateAdvancedMobileDeviceSearchByName(name string, search *ResponseAdvancedMobileDeviceSearches) (*ResponseAdvancedMobileDeviceSearches, error)

UpdateAdvancedMobileDeviceSearchByName updates an existing advanced mobile device search by its name.

func (*Client) UpdateAdvancedUserSearchByID added in v0.0.44

func (c *Client) UpdateAdvancedUserSearchByID(id int, search *AdvancedUserSearch) (*AdvancedUserSearch, error)

UpdateAdvancedUserSearchByID updates an existing advanced user search by its ID.

func (*Client) UpdateAdvancedUserSearchByName added in v0.0.44

func (c *Client) UpdateAdvancedUserSearchByName(name string, search *AdvancedUserSearch) (*AdvancedUserSearch, error)

UpdateAdvancedUserSearchByName updates an existing advanced user search by its name.

func (*Client) UpdateApiIntegrationByID added in v0.0.13

func (c *Client) UpdateApiIntegrationByID(id string, integrationUpdate *ApiIntegration) (*ApiIntegration, error)

UpdateApiIntegrationByID updates an API integration by its ID

func (*Client) UpdateApiIntegrationByName added in v0.0.13

func (c *Client) UpdateApiIntegrationByName(name string, updatedIntegration *ApiIntegration) (*ApiIntegration, error)

UpdateApiIntegrationByName updates an API integration based on its display name

func (*Client) UpdateBYOProfileByID added in v0.0.50

func (c *Client) UpdateBYOProfileByID(id int, profile *ResponseBYOProfile) (*ResponseBYOProfile, error)

UpdateBYOProfileByID updates an existing BYO profile by its ID.

func (*Client) UpdateBYOProfileByName added in v0.0.50

func (c *Client) UpdateBYOProfileByName(name string, profile *ResponseBYOProfile) (*ResponseBYOProfile, error)

UpdateBYOProfileByName updates a BYO profile by its name.

func (*Client) UpdateBuildingByID added in v0.0.12

func (c *Client) UpdateBuildingByID(building *Building) (*Building, error)

UpdateBuildingByID updates an existing building

func (*Client) UpdateBuildingByName added in v0.0.12

func (c *Client) UpdateBuildingByName(building *Building) (*Building, error)

UpdateBuildingByName updates an existing building by its name

func (*Client) UpdateCacheSettings added in v0.0.52

func (c *Client) UpdateCacheSettings(settings *ResponseCacheSettings) (*ResponseCacheSettings, error)

UpdateCacheSettings updates the cache settings.

func (*Client) UpdateCategoryByID added in v0.0.45

func (c *Client) UpdateCategoryByID(id int, updatedCategory *ResponseCategories) (*ResponseCategories, error)

UpdateCategoryByID updates an existing category by its ID

func (*Client) UpdateCategoryByNameByID added in v0.0.45

func (c *Client) UpdateCategoryByNameByID(name string, updatedCategory *ResponseCategories) (*ResponseCategories, error)

UpdateCategoryByNameByID updates a category by its name and then updates its details using its ID

func (*Client) UpdateClassesByID added in v0.0.51

func (c *Client) UpdateClassesByID(id int, class *ResponseClasses) error

UpdateClassByID updates an existing class with the given ID.

func (*Client) UpdateClassesByName added in v0.0.51

func (c *Client) UpdateClassesByName(name string, class *ResponseClasses) error

UpdateClassByName updates an existing class with the given name.

func (*Client) UpdateClientCredentialsByApiIntegrationID added in v0.0.15

func (c *Client) UpdateClientCredentialsByApiIntegrationID(id string) (*ClientCredentials, error)

UpdateClientCredentialsByApiIntegrationID updates client credentials for an API integration by its ID

func (*Client) UpdateComputerExtensionAttributeByID added in v0.0.27

func (c *Client) UpdateComputerExtensionAttributeByID(id int, attribute *ResponseComputerExtensionAttribute) (*ResponseComputerExtensionAttribute, error)

UpdateComputerExtensionAttributeByID updates an existing computer extension attribute by its ID.

func (*Client) UpdateComputerExtensionAttributeByName added in v0.0.27

func (c *Client) UpdateComputerExtensionAttributeByName(name string, attribute *ResponseComputerExtensionAttribute) (*ResponseComputerExtensionAttribute, error)

UpdateComputerExtensionAttributeByName updates a computer extension attribute by its name.

func (*Client) UpdateComputerGroupByID added in v0.0.16

func (c *Client) UpdateComputerGroupByID(id int, group *ResponseComputerGroup) (*ResponseComputerGroup, error)

UpdateComputerGroupByID updates an existing computer group by its ID.

func (*Client) UpdateComputerGroupByName added in v0.0.16

func (c *Client) UpdateComputerGroupByName(name string, group *ResponseComputerGroup) (*ResponseComputerGroup, error)

UpdateComputerGroupByName updates a computer group by its name.

func (*Client) UpdateComputerInventoryCollectionSettings added in v0.0.53

func (c *Client) UpdateComputerInventoryCollectionSettings(settings *ResponseComputerInventoryCollectionSettings) (*ResponseComputerInventoryCollectionSettings, error)

UpdateComputerInventoryCollectionSettings updates the computer inventory collection settings.

func (*Client) UpdateComputerPrestageByID added in v0.0.49

func (c *Client) UpdateComputerPrestageByID(id string, prestageUpdate *ComputerPrestagesItem) (*ComputerPrestagesItem, error)

UpdateComputerPrestageByID updates a computer prestage by its ID.

func (*Client) UpdateComputerPrestageByName added in v0.0.49

func (c *Client) UpdateComputerPrestageByName(name string, updatedPrestage *ComputerPrestagesItem) (*ComputerPrestagesItem, error)

UpdateComputerPrestageByName updates a computer prestage based on its display name

func (*Client) UpdateDepartmentByID added in v0.0.10

func (c *Client) UpdateDepartmentByID(id int, departmentName string) (*ResponseDepartment, error)

UpdateDepartmentByID updates an existing department

func (*Client) UpdateDepartmentByName added in v0.0.10

func (c *Client) UpdateDepartmentByName(oldName string, newName string) (*ResponseDepartment, error)

UpdateDepartmentByName updates an existing department by its name

func (*Client) UpdateFailoverUrl

func (c *Client) UpdateFailoverUrl() (*SSOFailoverResponse, error)

UpdateFailoverUrl regenerates the failover URL by changing the failover key to a new one and returns the new failover settings.

func (*Client) UpdateJamfApiRoleByID added in v0.0.12

func (c *Client) UpdateJamfApiRoleByID(id string, roleUpdate *APIRole) (*APIRole, error)

UpdateJamfApiRoleByID updates a Jamf API role by its ID

func (*Client) UpdateJamfApiRoleByName added in v0.0.12

func (c *Client) UpdateJamfApiRoleByName(name string, updatedRole *APIRole) (*APIRole, error)

UpdateJamfApiRoleByName updates a Jamf API role based on its display name

func (*Client) UpdateMacOSConfigurationProfileByID added in v0.0.11

func (c *Client) UpdateMacOSConfigurationProfileByID(id int, profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)

func (*Client) UpdateMacOSConfigurationProfileByName added in v0.0.11

func (c *Client) UpdateMacOSConfigurationProfileByName(name string, profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)

func (*Client) UpdatePolicyByID added in v0.0.45

func (c *Client) UpdatePolicyByID(id int, policy *ResponsePolicy) (*ResponsePolicy, error)

UpdatePolicyByID updates an existing policy by its ID.

func (*Client) UpdatePolicyByName added in v0.0.45

func (c *Client) UpdatePolicyByName(name string, policy *ResponsePolicy) (*ResponsePolicy, error)

UpdatePolicyByName updates an existing policy by its name.

func (*Client) UpdateScriptByID added in v0.0.15

func (c *Client) UpdateScriptByID(script *ResponseScript) (*ResponseScript, error)

UpdateScriptByID updates an existing script by its ID.

func (*Client) UpdateScriptByName added in v0.0.15

func (c *Client) UpdateScriptByName(script *ResponseScript) (*ResponseScript, error)

UpdateScriptByName updates an existing script by its name.

func (*Client) UpdateSelfServiceBrandingMacOSByID added in v0.0.49

func (c *Client) UpdateSelfServiceBrandingMacOSByID(id string, branding *SelfServiceBrandingDetail) (*SelfServiceBrandingDetail, error)

UpdateSelfServiceBrandingMacOSByID updates an existing self-service branding configuration for macOS.

func (*Client) UpdateSelfServiceBrandingMacOSByName added in v0.0.49

func (c *Client) UpdateSelfServiceBrandingMacOSByName(name string, newBranding *SelfServiceBrandingDetail) (*SelfServiceBrandingDetail, error)

UpdateSelfServiceBrandingMacOSByName updates a self-service branding configuration for macOS by name.

func (*Client) UpdateSiteByID added in v0.0.32

func (c *Client) UpdateSiteByID(id int, site *ResponseSite) (*ResponseSite, error)

UpdateSiteByID updates an existing site by its ID.

func (*Client) UpdateSiteByName added in v0.0.32

func (c *Client) UpdateSiteByName(name string, site *ResponseSite) (*ResponseSite, error)

UpdateSiteByName updates an existing site by its name.

func (*Client) UpdateVolumePurchasingSubscriptionByID added in v0.0.52

func (c *Client) UpdateVolumePurchasingSubscriptionByID(id string, subscription *VolumePurchasingSubscription) (*VolumePurchasingSubscription, error)

UpdateVolumePurchasingSubscriptionByID updates a volume purchasing subscription by its ID

func (*Client) UpdateVolumePurchasingSubscriptionByNameByID added in v0.0.52

func (c *Client) UpdateVolumePurchasingSubscriptionByNameByID(name string, updateData *VolumePurchasingSubscription) (*VolumePurchasingSubscription, error)

UpdateVolumePurchasingSubscriptionByNameByID updates a volume purchasing subscription by its display name

func (*Client) UploadIcon added in v0.0.50

func (c *Client) UploadIcon(filePath string) (*ResponseUploadIcon, error)

UploadIcon uploads an icon file to Jamf Pro and returns the icon URL and ID.

type ClientCredentials added in v0.0.13

type ClientCredentials struct {
	ClientID     string `json:"clientId"`
	ClientSecret string `json:"clientSecret"`
}

Integration represents the details of Api client credentials

type Computer added in v0.0.11

type Computer struct {
	General               ComputerDataSubsetGeneral               `json:"general,omitempty" xml:"general,omitempty"`
	Location              ComputerDataSubsetLocation              `json:"location,omitempty" xml:"location,omitempty"`
	Purchasing            ComputerDataSubsetPurchasing            `json:"purchasing,omitempty" xml:"purchasing,omitempty"`
	Peripherals           ComputerDataSubsetPeripherals           `json:"peripherals,omitempty" xml:"peripherals,omitempty"`
	Hardware              ComputerDataSubsetHardware              `json:"hardware,omitempty" xml:"hardware,omitempty"`
	Certificates          ComputerDataSubsetCertificates          `json:"certificates,omitempty" xml:"certificates,omitempty"`
	Security              ComputerDataSubsetSecurity              `json:"security,omitempty" xml:"security,omitempty"`
	Software              ComputerDataSubsetSoftware              `json:"software,omitempty" xml:"software,omitempty"`
	ExtensionAttributes   ComputerDataSubsetExtensionAttributes   `json:"extension_attributes,omitempty" xml:"extension_attributes,omitempty"`
	GroupAccounts         ComputerDataSubsetGroupAccounts         `json:"groups_accounts,omitempty" xml:"groups_accounts,omitempty"`
	IPhones               ComputerDataSubsetIPhones               `json:"iphones,omitempty" xml:"iphones,omitempty"`
	ConfigurationProfiles ComputerDataSubsetConfigurationProfiles `json:"configuration_profiles,omitempty" xml:"configuration_profiles,omitempty"`
}

type ComputerAssignment added in v0.0.11

type ComputerAssignment struct {
	Computer ComputerInfo `json:"computer,omitempty" xml:"computer,omitempty"`
}

type ComputerContainer added in v0.0.46

type ComputerContainer struct {
	Size     int                       `xml:"size"`
	Computer ComputerGroupComputerItem `xml:"computer"`
}

type ComputerDataSubsetCertificates added in v0.0.11

type ComputerDataSubsetCertificates struct {
	Certificates []struct {
		CommonName   string `xml:"common_name,omitempty"`
		Identity     bool   `xml:"identity,omitempty"`
		ExpiresUtc   string `xml:"expires_utc,omitempty"`
		ExpiresEpoch int64  `xml:"expires_epoch,omitempty"`
		Name         string `xml:"name,omitempty"`
	} `xml:"certificate,omitempty"`
}

type ComputerDataSubsetConfigurationProfiles added in v0.0.11

type ComputerDataSubsetConfigurationProfiles struct {
	Size                 string `xml:"size,omitempty"`
	ConfigurationProfile []struct {
		ID          int    `xml:"id,omitempty"`
		Name        string `xml:"name,omitempty"`
		UUID        string `xml:"uuid,omitempty"`
		IsRemovable bool   `xml:"is_removable,omitempty"`
	} `xml:"configuration_profile,omitempty"`
}

type ComputerDataSubsetExtensionAttributes added in v0.0.11

type ComputerDataSubsetExtensionAttributes struct {
	ExtensionAttributes []struct {
		ID         int    `xml:"id,omitempty"`
		Name       string `xml:"name,omitempty"`
		Type       string `xml:"type,omitempty"`
		MultiValue bool   `xml:"multi_value,omitempty"`
		Value      string `xml:"value,omitempty"`
	} `xml:"extension_attribute,omitempty"`
}

type ComputerDataSubsetGeneral added in v0.0.11

type ComputerDataSubsetGeneral struct {
	ID                    int    `xml:"id,omitempty"`
	Name                  string `xml:"name,omitempty"`
	NetworkAdapterType    string `xml:"network_adapter_type,omitempty"`
	MacAddress            string `xml:"mac_address,omitempty"`
	AltNetworkAdapterType string `xml:"alt_network_adapter_type,omitempty"`
	AltMacAddress         string `xml:"alt_mac_address,omitempty"`
	IPAddress             string `xml:"ip_address,omitempty"`
	LastReportedIP        string `xml:"last_reported_ip,omitempty"`
	SerialNumber          string `xml:"serial_number,omitempty"`
	UDID                  string `xml:"udid,omitempty"`
	JamfVersion           string `xml:"jamf_version,omitempty"`
	Platform              string `xml:"platform,omitempty"`
	Barcode1              string `xml:"barcode_1,omitempty"`
	Barcode2              string `xml:"barcode_2,omitempty"`
	AssetTag              string `xml:"asset_tag,omitempty"`
	RemoteManagement      struct {
		Managed                  bool   `xml:"managed,omitempty"`
		ManagementUsername       string `xml:"management_username,omitempty"`
		ManagementPasswordSha256 string `xml:"management_password_sha256,omitempty"`
	} `xml:"remote_management,omitempty"`
	Supervised      string `xml:"supervised,omitempty"`
	MdmCapable      string `xml:"mdm_capable,omitempty"`
	MdmCapableUsers []struct {
		MdmCapableUser string `xml:"mdm_capable_user,omitempty"`
	} `xml:"mdm_capable_users,omitempty"`
	ManagementStatus struct {
		EnrolledViaDep  bool `xml:"enrolled_via_dep,omitempty"`
		UserApprovedMdm bool `xml:"user_approved_mdm,omitempty"`
	} `xml:"management_status,omitempty"`
	ReportDate                string `xml:"report_date,omitempty"`
	ReportDateEpoch           string `xml:"report_date_epoch,omitempty"`
	ReportDateUtc             string `xml:"report_date_utc,omitempty"`
	LastContactTime           string `xml:"last_contact_time,omitempty"`
	LastContactTimeEpoch      string `xml:"last_contact_time_epoch,omitempty"`
	LastContactTimeUtc        string `xml:"last_contact_time_utc,omitempty"`
	InitialEntryDate          string `xml:"initial_entry_date,omitempty"`
	InitialEntryDateEpoch     string `xml:"initial_entry_date_epoch,omitempty"`
	InitialEntryDateUtc       string `xml:"initial_entry_date_utc,omitempty"`
	LastCloudBackupDateEpoch  string `xml:"last_cloud_backup_date_epoch,omitempty"`
	LastCloudBackupDateUtc    string `xml:"last_cloud_backup_date_utc,omitempty"`
	LastEnrolledDateEpoch     string `xml:"last_enrolled_date_epoch,omitempty"`
	LastEnrolledDateUtc       string `xml:"last_enrolled_date_utc,omitempty"`
	MdmProfileExpirationEpoch string `xml:"mdm_profile_expiration_epoch,omitempty"`
	MdmProfileExpirationUtc   string `xml:"mdm_profile_expiration_utc,omitempty"`
	DistributionPoint         string `xml:"distribution_point,omitempty"`
	Sus                       string `xml:"sus,omitempty"`
	Site                      struct {
		ID   int    `xml:"id,omitempty"`
		Name string `xml:"name,omitempty"`
	} `xml:"site,omitempty"`
	ItunesStoreAccountIsActive string `xml:"itunes_store_account_is_active"`
}

type ComputerDataSubsetGroupAccounts added in v0.0.11

type ComputerDataSubsetGroupAccounts struct {
	ComputerGroupMemberships struct {
		Groups []string `xml:"group,omitempty"`
	} `xml:"computer_group_memberships,omitempty"`
	LocalAccounts struct {
		Users []struct {
			Name             string `xml:"name,omitempty"`
			Realname         string `xml:"realname,omitempty"`
			UID              int    `xml:"uid,omitempty"`
			Home             string `xml:"home,omitempty"`
			HomeSize         string `xml:"home_size,omitempty"`
			HomeSizeMb       int    `xml:"home_size_mb,omitempty"`
			Administrator    bool   `xml:"administrator,omitempty"`
			FilevaultEnabled bool   `xml:"filevault_enabled,omitempty"`
		} `xml:"user,omitempty"`
	} `xml:"local_accounts,omitempty"`
	UserInventories struct {
		DisableAutomaticLogin bool `xml:"disable_automatic_login,omitempty"`
		Users                 []struct {
			Username                     string `xml:"username,omitempty"`
			PasswordHistoryDepth         string `xml:"password_history_depth,omitempty"`
			PasswordMinLength            string `xml:"password_min_length,omitempty"`
			PasswordMaxAge               string `xml:"password_max_age,omitempty"`
			PasswordMinComplexCharacters string `xml:"password_min_complex_characters,omitempty"`
			PasswordRequireAlphanumeric  string `xml:"password_require_alphanumeric,omitempty"`
		} `xml:"user,omitempty"`
	} `xml:"user_inventories,omitempty"`
}

type ComputerDataSubsetHardware added in v0.0.11

type ComputerDataSubsetHardware struct {
	Make                        string `xml:"make,omitempty"`
	Model                       string `xml:"model,omitempty"`
	ModelIdentifier             string `xml:"model_identifier,omitempty"`
	OsName                      string `xml:"os_name,omitempty"`
	OsVersion                   string `xml:"os_version,omitempty"`
	OsBuild                     string `xml:"os_build,omitempty"`
	SoftwareUpdateDeviceID      string `xml:"software_update_device_id,omitempty"`
	ActiveDirectoryStatus       string `xml:"active_directory_status,omitempty"`
	ServicePack                 string `xml:"service_pack,omitempty"`
	ProcessorType               string `xml:"processor_type,omitempty"`
	IsAppleSilicon              bool   `xml:"is_apple_silicon,omitempty"`
	ProcessorArchitecture       string `xml:"processor_architecture,omitempty"`
	ProcessorSpeed              int    `xml:"processor_speed,omitempty"`
	ProcessorSpeedMhz           int    `xml:"processor_speed_mhz,omitempty"`
	NumberProcessors            int    `xml:"number_processors,omitempty"`
	NumberCores                 int    `xml:"number_cores,omitempty"`
	TotalRAM                    int    `xml:"total_ram,omitempty"`
	TotalRAMMb                  int    `xml:"total_ram_mb,omitempty"`
	BootRom                     string `xml:"boot_rom,omitempty"`
	BusSpeed                    int    `xml:"bus_speed,omitempty"`
	BusSpeedMhz                 int    `xml:"bus_speed_mhz,omitempty"`
	BatteryCapacity             int    `xml:"battery_capacity,omitempty"`
	CacheSize                   int    `xml:"cache_size,omitempty"`
	CacheSizeKb                 int    `xml:"cache_size_kb,omitempty"`
	AvailableRAMSlots           int    `xml:"available_ram_slots,omitempty"`
	OpticalDrive                string `xml:"optical_drive,omitempty"`
	NicSpeed                    string `xml:"nic_speed,omitempty"`
	SmcVersion                  string `xml:"smc_version,omitempty"`
	BleCapable                  bool   `xml:"ble_capable,omitempty"`
	SupportsIosAppInstalls      bool   `xml:"supports_ios_app_installs,omitempty"`
	SipStatus                   string `xml:"sip_status,omitempty"`
	GatekeeperStatus            string `xml:"gatekeeper_status,omitempty"`
	XprotectVersion             string `xml:"xprotect_version,omitempty"`
	InstitutionalRecoveryKey    string `xml:"institutional_recovery_key,omitempty"`
	DiskEncryptionConfiguration string `xml:"disk_encryption_configuration,omitempty"`
	Filevault2Users             []struct {
		User string `xml:"user,omitempty"`
	} `xml:"filevault2_users,omitempty"`
	Storage struct {
		Devices []struct {
			Disk            string `xml:"disk,omitempty"`
			Model           string `xml:"model,omitempty"`
			Revision        string `xml:"revision,omitempty"`
			SerialNumber    string `xml:"serial_number,omitempty"`
			Size            int    `xml:"size,omitempty"`
			DriveCapacityMb int    `xml:"drive_capacity_mb,omitempty"`
			ConnectionType  string `xml:"connection_type,omitempty"`
			SmartStatus     string `xml:"smart_status,omitempty"`
			Partitions      struct {
				Partitions []struct {
					Name                 string `xml:"name,omitempty"`
					Size                 int    `xml:"size,omitempty"`
					Type                 string `xml:"type,omitempty"`
					PartitionCapacityMb  int    `xml:"partition_capacity_mb,omitempty"`
					PercentageFull       int    `xml:"percentage_full,omitempty"`
					AvailableMb          int    `xml:"available_mb,omitempty"`
					FilevaultStatus      string `xml:"filevault_status,omitempty"`
					FilevaultPercent     int    `xml:"filevault_percent,omitempty"`
					Filevault2Status     string `xml:"filevault2_status,omitempty"`
					Filevault2Percent    int    `xml:"filevault2_percent,omitempty"`
					BootDriveAvailableMb int    `xml:"boot_drive_available_mb,omitempty"`
					LvgUUID              string `xml:"lvgUUID,omitempty"`
					LvUUID               string `xml:"lvUUID,omitempty"`
					PvUUID               string `xml:"pvUUID,omitempty"`
				} `xml:"partition,omitempty"`
			} `xml:"partitions,omitempty"`
		} `xml:"device,omitempty"`
	} `xml:"storage,omitempty"`
	MappedPrinters string `xml:"mapped_printers,omitempty"`
}

type ComputerDataSubsetIPhones added in v0.0.11

type ComputerDataSubsetIPhones struct {
}

type ComputerDataSubsetLocation added in v0.0.11

type ComputerDataSubsetLocation struct {
	Username     string `xml:"username,omitempty"`
	RealName     string `xml:"real_name,omitempty"`
	EmailAddress string `xml:"email_address,omitempty"`
	Position     string `xml:"position,omitempty"`
	Phone        string `xml:"phone,omitempty"`
	PhoneNumber  string `xml:"phone_number,omitempty"`
	Department   string `xml:"department,omitempty"`
	Building     string `xml:"building,omitempty"`
	Room         string `xml:"room,omitempty"`
}

type ComputerDataSubsetName added in v0.0.11

type ComputerDataSubsetName string
const (
	ComputerDataSubsetNameGeneral               ComputerDataSubsetName = "General"
	ComputerDataSubsetNameLocation              ComputerDataSubsetName = "Location"
	ComputerDataSubsetNamePurchasing            ComputerDataSubsetName = "Purchasing"
	ComputerDataSubsetNamePeripherals           ComputerDataSubsetName = "Peripherals"
	ComputerDataSubsetNameHardware              ComputerDataSubsetName = "Hardware"
	ComputerDataSubsetNameCertificates          ComputerDataSubsetName = "Certificates"
	ComputerDataSubsetNameSecurity              ComputerDataSubsetName = "Security"
	ComputerDataSubsetNameSoftware              ComputerDataSubsetName = "Software"
	ComputerDataSubsetNameExtensionAttributes   ComputerDataSubsetName = "ExtensionAttributes"
	ComputerDataSubsetNameGroupAccounts         ComputerDataSubsetName = "GroupsAccounts"
	ComputerDataSubsetNameIPhones               ComputerDataSubsetName = "iphones"
	ComputerDataSubsetNameConfigurationProfiles ComputerDataSubsetName = "ConfigurationProfiles"
)

type ComputerDataSubsetPeripherals added in v0.0.11

type ComputerDataSubsetPeripherals struct {
}

Don't have example data for this to construct resulting struct. Please cut a PR to populate if needed

type ComputerDataSubsetPurchasing added in v0.0.11

type ComputerDataSubsetPurchasing struct {
	IsPurchased          bool   `xml:"is_purchased,omitempty"`
	IsLeased             bool   `xml:"is_leased,omitempty"`
	PoNumber             string `xml:"po_number,omitempty"`
	Vendor               string `xml:"vendor,omitempty"`
	ApplecareID          string `xml:"applecare_id,omitempty"`
	PurchasePrice        string `xml:"purchase_price,omitempty"`
	PurchasingAccount    string `xml:"purchasing_account,omitempty"`
	PoDate               string `xml:"po_date,omitempty"`
	PoDateEpoch          int64  `xml:"po_date_epoch,omitempty"`
	PoDateUtc            string `xml:"po_date_utc,omitempty"`
	WarrantyExpires      string `xml:"warranty_expires,omitempty"`
	WarrantyExpiresEpoch int64  `xml:"warranty_expires_epoch,omitempty"`
	WarrantyExpiresUtc   string `xml:"warranty_expires_utc,omitempty"`
	LeaseExpires         string `xml:"lease_expires,omitempty"`
	LeaseExpiresEpoch    int64  `xml:"lease_expires_epoch,omitempty"`
	LeaseExpiresUtc      string `xml:"lease_expires_utc,omitempty"`
	LifeExpectancy       int    `xml:"life_expectancy,omitempty"`
	PurchasingContact    string `xml:"purchasing_contact,omitempty"`
	OsApplecareID        string `xml:"os_applecare_id,omitempty"`
	OsMaintenanceExpires string `xml:"os_maintenance_expires,omitempty"`
	Attachments          string `xml:"attachments,omitempty"`
}

type ComputerDataSubsetSecurity added in v0.0.11

type ComputerDataSubsetSecurity struct {
	ActivationLock      bool   `xml:"activation_lock,omitempty"`
	RecoveryLockEnabled bool   `xml:"recovery_lock_enabled,omitempty"`
	SecureBootLevel     string `xml:"secure_boot_level,omitempty"`
	ExternalBootLevel   string `xml:"external_boot_level,omitempty"`
	FirewallEnabled     bool   `xml:"firewall_enabled,omitempty"`
}

type ComputerDataSubsetSoftware added in v0.0.11

type ComputerDataSubsetSoftware struct {
	// UnixExecutables   string `xml:"unix_executables,omitempty"`  - unknown format, accepting PRs
	// LicensedSoftware  string `xml:"licensed_software,omitempty"` - unknown format, accepting PRs
	InstalledByCasper []struct {
		Package string `xml:"package,omitempty"`
	} `xml:"installed_by_casper,omitempty"`
	InstalledByInstallerSwu []struct {
		Package []string `xml:"package,omitempty"`
	} `xml:"installed_by_installer_swu,omitempty"`
	CachedByCasper []struct {
		Package string `xml:"package,omitempty"`
	} `xml:"cached_by_casper,omitempty"`
	AvailableSoftwareUpdates []struct {
		Name string `xml:"name,omitempty"`
	} `xml:"available_software_updates,omitempty"`
	AvailableUpdates []struct {
		Update struct {
			Text        string `xml:",chardata,omitempty"`
			Name        string `xml:"name,omitempty"`
			PackageName string `xml:"package_name,omitempty"`
			Version     string `xml:"version,omitempty"`
		} `xml:"update,omitempty"`
	} `xml:"available_updates,omitempty"`
	RunningServices struct {
		Names []string `xml:"name,omitempty"`
	} `xml:"running_services,omitempty"`
	Applications struct {
		Size         int `xml:"size,omitempty"`
		Applications []struct {
			Name     string `xml:"name,omitempty"`
			Path     string `xml:"path,omitempty"`
			Version  string `xml:"version,omitempty"`
			BundleID string `xml:"bundle_id,omitempty"`
		} `xml:"application,omitempty"`
	} `xml:"applications,omitempty"`
}

type ComputerDetail added in v0.0.36

type ComputerDetail struct {
	ID           int    `xml:"id"`
	Name         string `xml:"name"`
	UDID         string `xml:"udid,omitempty"`
	ComputerName string `xml:"Computer_Name,omitempty"`
}

ComputerDetail represents the details of a computer.

type ComputerExtensionAttributeInputType added in v0.0.27

type ComputerExtensionAttributeInputType struct {
	Type     string   `xml:"type"`
	Platform string   `xml:"platform,omitempty"`
	Script   string   `xml:"script,omitempty"`
	Choices  []string `xml:"popup_choices>choice,omitempty"`
}

type ComputerExtensionAttributeItem added in v0.0.27

type ComputerExtensionAttributeItem struct {
	ID      int    `xml:"id,omitempty"`
	Name    string `xml:"name,omitempty"`
	Enabled bool   `xml:"enabled,omitempty"`
}

type ComputerGroupComputerItem added in v0.0.26

type ComputerGroupComputerItem struct {
	ID            int    `json:"id,omitempty" xml:"id,omitempty"`
	Name          string `json:"name,omitempty" xml:"name,omitempty"`
	SerialNumber  string `json:"serial_number,omitempty" xml:"serial_number,omitempty"`
	MacAddress    string `json:"mac_address,omitempty" xml:"mac_address,omitempty"`
	AltMacAddress string `json:"alt_mac_address,omitempty" xml:"alt_mac_address,omitempty"`
}

type ComputerGroupCriterion added in v0.0.11

type ComputerGroupCriterion struct {
	Name         string           `xml:"name"`
	Priority     int              `xml:"priority"`
	AndOr        DeviceGroupAndOr `xml:"and_or"`
	SearchType   string           `xml:"search_type"`
	SearchValue  string           `xml:"value"`
	OpeningParen bool             `xml:"opening_paren"`
	ClosingParen bool             `xml:"closing_paren"`
}

type ComputerGroupInfo added in v0.0.11

type ComputerGroupInfo struct {
	ComputerGroup GroupAssignmentDataSubsetGroupDetail `json:"computer_group,omitempty" xml:"computer_group,omitempty"`
}

type ComputerGroupListItem added in v0.0.24

type ComputerGroupListItem struct {
	ID      int    `xml:"id,omitempty"`
	Name    string `xml:"name,omitempty"`
	IsSmart bool   `xml:"is_smart,omitempty"`
}

type ComputerGroupSite added in v0.0.46

type ComputerGroupSite struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type ComputerGroupsListResponse added in v0.0.24

type ComputerGroupsListResponse struct {
	Size    int                     `xml:"size"`
	Results []ComputerGroupListItem `xml:"computer_group"`
}

type ComputerInfo added in v0.0.11

type ComputerInfo struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
	UDID string `json:"udid,omitempty" xml:"udid,omitempty"`
}

type ComputerInventoryCollectionSettingsCustomPath added in v0.0.53

type ComputerInventoryCollectionSettingsCustomPath struct {
	Scope string `json:"scope"`
	Path  string `json:"path"`
}

ComputerInventoryCollectionSettingsCustomPath defines the request body for creating a custom path.

type ComputerLink struct {
	Computer UsersDataSubsetItem `json:"computer" xml:"computer"`
}

type ComputerListResponse added in v0.0.11

type ComputerListResponse struct {
	ID              int    `json:"id,omitempty" xml:"id,omitempty"`
	UDID            string `json:"udid,omitempty" xml:"udid,omitempty"`
	Name            string `json:"name,omitempty" xml:"name,omitempty"`
	SerialNumber    string `json:"serial_number,omitempty" xml:"serial_number,omitempty"`
	Managed         bool   `json:"managed,omitempty" xml:"managed,omitempty"`
	Model           string `json:"model,omitempty" xml:"model,omitempty"`
	Department      string `json:"department,omitempty" xml:"department,omitempty"`
	Building        string `json:"building,omitempty" xml:"building,omitempty"`
	MACAddress      string `json:"mac_address,omitempty" xml:"mac_address,omitempty"`
	ReportDateUTC   string `json:"report_date_utc,omitempty" xml:"report_date_utc,omitempty"`
	ReportDateEpoch int64  `json:"report_date_epoch,omitempty" xml:"report_date_epoch,omitempty"`
}

type ComputerPrestagesAccountSettings added in v0.0.49

type ComputerPrestagesAccountSettings struct {
	ID                                      string `json:"id"`
	PayloadConfigured                       bool   `json:"payloadConfigured"`
	LocalAdminAccountEnabled                bool   `json:"localAdminAccountEnabled"`
	AdminUsername                           string `json:"adminUsername"`
	AdminPassword                           string `json:"adminPassword"`
	HiddenAdminAccount                      bool   `json:"hiddenAdminAccount"`
	LocalUserManaged                        bool   `json:"localUserManaged"`
	UserAccountType                         string `json:"userAccountType"`
	VersionLock                             int    `json:"versionLock"`
	PrefillPrimaryAccountInfoFeatureEnabled bool   `json:"prefillPrimaryAccountInfoFeatureEnabled"`
	PrefillType                             string `json:"prefillType"`
	PrefillAccountFullName                  string `json:"prefillAccountFullName"`
	PrefillAccountUserName                  string `json:"prefillAccountUserName"`
	PreventPrefillInfoFromModification      bool   `json:"preventPrefillInfoFromModification"`
}

type ComputerPrestagesItem added in v0.0.49

type ComputerPrestagesItem struct {
	DisplayName                       string                                 `json:"displayName"`
	Mandatory                         bool                                   `json:"mandatory"`
	MDMRemovable                      bool                                   `json:"mdmRemovable"`
	SupportPhoneNumber                string                                 `json:"supportPhoneNumber"`
	SupportEmailAddress               string                                 `json:"supportEmailAddress"`
	Department                        string                                 `json:"department"`
	DefaultPrestage                   bool                                   `json:"defaultPrestage"`
	EnrollmentSiteId                  string                                 `json:"enrollmentSiteId"`
	KeepExistingSiteMembership        bool                                   `json:"keepExistingSiteMembership"`
	KeepExistingLocationInformation   bool                                   `json:"keepExistingLocationInformation"`
	RequireAuthentication             bool                                   `json:"requireAuthentication"`
	AuthenticationPrompt              string                                 `json:"authenticationPrompt"`
	PreventActivationLock             bool                                   `json:"preventActivationLock"`
	EnableDeviceBasedActivationLock   bool                                   `json:"enableDeviceBasedActivationLock"`
	DeviceEnrollmentProgramInstanceId string                                 `json:"deviceEnrollmentProgramInstanceId"`
	SkipSetupItems                    map[string]bool                        `json:"skipSetupItems"`
	LocationInformation               ComputerPrestagesLocationInformation   `json:"locationInformation"`
	PurchasingInformation             ComputerPrestagesPurchasingInformation `json:"purchasingInformation"`
	AnchorCertificates                []string                               `json:"anchorCertificates"`
	EnrollmentCustomizationId         string                                 `json:"enrollmentCustomizationId"`
	Language                          string                                 `json:"language"`
	Region                            string                                 `json:"region"`
	AutoAdvanceSetup                  bool                                   `json:"autoAdvanceSetup"`
	InstallProfilesDuringSetup        bool                                   `json:"installProfilesDuringSetup"`
	PrestageInstalledProfileIds       []string                               `json:"prestageInstalledProfileIds"`
	CustomPackageIds                  []string                               `json:"customPackageIds"`
	CustomPackageDistributionPointId  string                                 `json:"customPackageDistributionPointId"`
	EnableRecoveryLock                bool                                   `json:"enableRecoveryLock"`
	RecoveryLockPasswordType          string                                 `json:"recoveryLockPasswordType"`
	RecoveryLockPassword              string                                 `json:"recoveryLockPassword"`
	RotateRecoveryLockPassword        bool                                   `json:"rotateRecoveryLockPassword"`
	ID                                string                                 `json:"id"`
	ProfileUuid                       string                                 `json:"profileUuid"`
	SiteId                            string                                 `json:"siteId"`
	VersionLock                       int                                    `json:"versionLock"`
	AccountSettings                   ComputerPrestagesAccountSettings       `json:"accountSettings"`
}

type ComputerPrestagesLocationInformation added in v0.0.49

type ComputerPrestagesLocationInformation struct {
	Username     string `json:"username"`
	Realname     string `json:"realname"`
	Phone        string `json:"phone"`
	Email        string `json:"email"`
	Room         string `json:"room"`
	Position     string `json:"position"`
	DepartmentId string `json:"departmentId"`
	BuildingId   string `json:"buildingId"`
	ID           string `json:"id"`
	VersionLock  int    `json:"versionLock"`
}

type ComputerPrestagesPurchasingInformation added in v0.0.49

type ComputerPrestagesPurchasingInformation struct {
	ID                string `json:"id"`
	Leased            bool   `json:"leased"`
	Purchased         bool   `json:"purchased"`
	AppleCareId       string `json:"appleCareId"`
	PONumber          string `json:"poNumber"`
	Vendor            string `json:"vendor"`
	PurchasePrice     string `json:"purchasePrice"`
	LifeExpectancy    int    `json:"lifeExpectancy"`
	PurchasingAccount string `json:"purchasingAccount"`
	PurchasingContact string `json:"purchasingContact"`
	LeaseDate         string `json:"leaseDate"`
	PODate            string `json:"poDate"`
	WarrantyDate      string `json:"warrantyDate"`
	VersionLock       int    `json:"versionLock"`
}

type ComputerScope added in v0.0.11

type ComputerScope struct {
	ID   int    `xml:"id,omitempty"`
	Name string `xml:"name,omitempty"`
	UDID string `xml:"udid,omitempty"`
}

type ComputersResponse added in v0.0.11

type ComputersResponse struct {
	Size    int                    `xml:"size"`
	Results []ComputerListResponse `xml:"computer"`
}

type Config added in v0.0.21

type Config struct {
	InstanceName             string
	LogLevel                 http_client.LogLevel
	Logger                   http_client.Logger
	MaxConcurrentRequests    int
	TokenLifespan            time.Duration
	TokenRefreshBufferPeriod time.Duration
	ClientID                 string
	ClientSecret             string
}

type Criterion added in v0.0.48

type Criterion struct {
	Name         string `xml:"name"`                    // Name of the criterion
	Priority     int    `xml:"priority"`                // Priority of the criterion
	AndOr        string `xml:"and_or"`                  // Logical operator to combine criteria
	SearchType   string `xml:"search_type"`             // Type of search being performed
	Value        int    `xml:"value"`                   // Value for the criterion
	OpeningParen bool   `xml:"opening_paren,omitempty"` // Indicates if there is an opening parenthesis for grouping
	ClosingParen bool   `xml:"closing_paren,omitempty"` // Indicates if there is a closing parenthesis for grouping
}

Criterion contains the details of a single criterion in the search.

type CriterionContainer added in v0.0.46

type CriterionContainer struct {
	Size      int                    `xml:"size"`
	Criterion ComputerGroupCriterion `xml:"criterion"`
}

type CriterionDetail added in v0.0.36

type CriterionDetail struct {
	Name         string `xml:"name"`
	Priority     int    `xml:"priority,omitempty"`
	AndOr        string `xml:"and_or,omitempty"`
	SearchType   string `xml:"search_type,omitempty"`
	Value        string `xml:"value,omitempty"`
	OpeningParen bool   `xml:"opening_paren,omitempty"`
	ClosingParen bool   `xml:"closing_paren,omitempty"`
}

CriterionDetail represents the details of a criterion in a search.

type DepartmentAssignment added in v0.0.11

type DepartmentAssignment struct {
	Department DepartmentInfo `json:"department,omitempty" xml:"department,omitempty"`
}

type DepartmentInfo added in v0.0.11

type DepartmentInfo struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type DepartmentItem added in v0.0.34

type DepartmentItem struct {
	Id   int    `xml:"id,omitempty"`
	Name string `xml:"name,omitempty"`
}

type DeviceGroupAndOr added in v0.0.11

type DeviceGroupAndOr string
const (
	And DeviceGroupAndOr = "and"
	Or  DeviceGroupAndOr = "or"
)

type DisplayFieldDetail added in v0.0.36

type DisplayFieldDetail struct {
	Name string `xml:"name"`
}

DisplayFieldDetail represents the details of a display field.

type ExclusionConfig added in v0.0.11

type ExclusionConfig struct {
	Computers       []ComputerAssignment   `json:"computers,omitempty" xml:"computers,omitempty"`
	Buildings       []BuildingAssignment   `json:"buildings,omitempty" xml:"buildings,omitempty"`
	Departments     []DepartmentAssignment `json:"departments,omitempty" xml:"departments,omitempty"`
	ComputerGroups  []ComputerGroupInfo    `json:"computer_groups,omitempty" xml:"computer_groups,omitempty"`
	Users           []UserAssignment       `json:"users,omitempty" xml:"users,omitempty"`
	UserGroups      []UserGroupAssignment  `json:"user_groups,omitempty" xml:"user_groups,omitempty"`
	NetworkSegments []NetworkSegmentInfo   `json:"network_segments,omitempty" xml:"network_segments,omitempty"`
	IBeacons        []IBeaconInfo          `json:"ibeacons,omitempty" xml:"ibeacons,omitempty"`
	JSSUsers        []JSSUserConfig        `json:"jss_users,omitempty" xml:"jss_users,omitempty"`
	JSSUserGroups   []JSSUserGroupInfo     `json:"jss_user_groups,omitempty" xml:"jss_user_groups,omitempty"`
}

type ExtensionAttributeItem added in v0.0.11

type ExtensionAttributeItem struct {
	ID    int    `json:"id,omitempty" xml:"id,omitempty"`
	Name  string `json:"name,omitempty" xml:"name,omitempty"`
	Type  string `json:"type,omitempty" xml:"type,omitempty"` // possible values: String, Integer, Date
	Value string `json:"value,omitempty" xml:"value,omitempty"`
}

type GeneralConfig added in v0.0.11

type GeneralConfig struct {
	ID                 int          `json:"id,omitempty" xml:"id,omitempty"`
	Name               string       `json:"name,omitempty" xml:"name,omitempty"`
	Description        string       `json:"description,omitempty" xml:"description,omitempty"`
	Site               SiteInfo     `json:"site,omitempty" xml:"site,omitempty"`
	Category           CategoryInfo `json:"category,omitempty" xml:"category,omitempty"`
	DistributionMethod string       `json:"distribution_method,omitempty" xml:"distribution_method,omitempty"`
	UserRemovable      bool         `json:"user_removable,omitempty" xml:"user_removable,omitempty"`
	Level              string       `json:"level,omitempty" xml:"level,omitempty"`
	UUID               string       `json:"uuid,omitempty" xml:"uuid,omitempty"`
	RedeployOnUpdate   string       `json:"redeploy_on_update,omitempty" xml:"redeploy_on_update,omitempty"`
	Payloads           string       `json:"payloads,omitempty" xml:"payloads,omitempty"`
}

type GroupAssignmentDataSubsetGroupDetail added in v0.0.14

type GroupAssignmentDataSubsetGroupDetail struct {
	ID           int                         `json:"id,omitempty" xml:"id"`
	Name         string                      `json:"name" xml:"name"`
	AccessLevel  string                      `json:"access_level" xml:"access_level"`
	PrivilegeSet string                      `json:"privilege_set" xml:"privilege_set"`
	Site         AccountDataSubsetSite       `json:"site" xml:"site"`
	Privileges   AccountDataSubsetPrivileges `json:"privileges" xml:"privileges"`
	Members      []AccountDataSubsetMembers  `json:"members" xml:"members>user"`
}

type Groups

type Groups struct {
	Group []ResponseAccountGroup `json:"group,omitempty" xml:"group,omitempty"`
}

type IBeaconInfo added in v0.0.11

type IBeaconInfo struct {
	IBeacon BeaconDetail `json:"ibeacon,omitempty" xml:"ibeacon,omitempty"`
}

type IBeaconScope added in v0.0.11

type IBeaconScope struct {
	Id   int    `xml:"id"`
	Name string `xml:"name"`
}

type IbeaconListItem added in v0.0.11

type IbeaconListItem struct {
	ID    int    `json:"id" xml:"id"`
	Name  string `json:"name" xml:"name"`
	UUID  string `json:"uuid" xml:"uuid"`
	Major int    `json:"major" xml:"major"`
	Minor int    `json:"minor" xml:"minor"`
}

type InventoryCollectionPreference added in v0.0.53

type InventoryCollectionPreference struct {
	MonitorApplicationUsage                      bool `json:"monitorApplicationUsage"`
	IncludeFonts                                 bool `json:"includeFonts"`
	IncludePlugins                               bool `json:"includePlugins"`
	IncludePackages                              bool `json:"includePackages"`
	IncludeSoftwareUpdates                       bool `json:"includeSoftwareUpdates"`
	IncludeSoftwareId                            bool `json:"includeSoftwareId"`
	IncludeAccounts                              bool `json:"includeAccounts"`
	CalculateSizes                               bool `json:"calculateSizes"`
	IncludeHiddenAccounts                        bool `json:"includeHiddenAccounts"`
	IncludePrinters                              bool `json:"includePrinters"`
	IncludeServices                              bool `json:"includeServices"`
	CollectSyncedMobileDeviceInfo                bool `json:"collectSyncedMobileDeviceInfo"`
	UpdateLdapInfoOnComputerInventorySubmissions bool `json:"updateLdapInfoOnComputerInventorySubmissions"`
	MonitorBeacons                               bool `json:"monitorBeacons"`
	AllowChangingUserAndLocation                 bool `json:"allowChangingUserAndLocation"`
	UseUnixUserPaths                             bool `json:"useUnixUserPaths"`
	CollectUnmanagedCertificates                 bool `json:"collectUnmanagedCertificates"`
}

type JSSUserConfig added in v0.0.11

type JSSUserConfig struct {
	JSSUser UserInfo `json:"jss_user,omitempty" xml:"jss_user,omitempty"`
}

type JSSUserGroupInfo added in v0.0.11

type JSSUserGroupInfo struct {
	JSSUserGroup GroupAssignmentDataSubsetGroupDetail `json:"jss_user_group,omitempty" xml:"jss_user_group,omitempty"`
}

type JamfUserScope added in v0.0.11

type JamfUserScope struct {
	Id   int    `xml:"id"`
	Name string `xml:"name"`
}

type LogLevel added in v0.0.52

type LogLevel int

Logger is an interface for logging within the SDK.// LogLevel mirrors the http_client's LogLevel to maintain compatibility.

const (
	LogLevelNone LogLevel = iota
	LogLevelWarning
	LogLevelInfo
	LogLevelDebug
)

Exporting LogLevel constants matching http_client package.

type Logger

type Logger interface {
	SetLevel(level LogLevel)
	Trace(msg string, keysAndValues ...interface{})
	Debug(msg string, keysAndValues ...interface{})
	Info(msg string, keysAndValues ...interface{})
	Warn(msg string, keysAndValues ...interface{})
	Error(msg string, keysAndValues ...interface{})
	Fatal(msg string, keysAndValues ...interface{})
}

Logger interface to match http_client's Logger interface.

func NewDefaultLogger

func NewDefaultLogger() Logger

NewDefaultLogger returns a new default logger instance with a default log level.

type MacOSConfigurationProfileListItem added in v0.0.11

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

type MemcachedEndpoint added in v0.0.52

type MemcachedEndpoint struct {
	ID                      string `json:"id,omitempty"`
	Name                    string `json:"name,omitempty"`
	HostName                string `json:"hostName,omitempty"`
	Port                    int    `json:"port,omitempty"`
	Enabled                 bool   `json:"enabled,omitempty"`
	JSSCacheConfigurationID int    `json:"jssCacheConfigurationId,omitempty"`
}

MemcachedEndpoint represents an individual memcached endpoint in the cache settings.

type MobileDeviceItem added in v0.0.48

type MobileDeviceItem struct {
	ID          int    `xml:"id"`           // Unique identifier for the mobile device
	Name        string `xml:"name"`         // Name of the mobile device
	UDID        string `xml:"udid"`         // Unique Device Identifier for the mobile device
	DisplayName string `xml:"Display_Name"` // Display name of the mobile device
}

MobileDevice contains details about a single mobile device.

type MobileDeviceLink struct {
	MobileDevice UsersDataSubsetItem `json:"mobile_device" xml:"mobile_device"`
}

type NetworkDetail added in v0.0.11

type NetworkDetail struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	UID  string `json:"uid,omitempty" xml:"uid,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type NetworkLimitation added in v0.0.11

type NetworkLimitation struct {
	Users           []UserAssignment      `json:"users,omitempty" xml:"users,omitempty"`
	UserGroups      []UserGroupAssignment `json:"user_groups,omitempty" xml:"user_groups,omitempty"`
	NetworkSegments []NetworkSegmentInfo  `json:"network_segments,omitempty" xml:"network_segments,omitempty"`
	IBeacons        []IBeaconInfo         `json:"ibeacons,omitempty" xml:"ibeacons,omitempty"`
}

type NetworkSegmentInfo added in v0.0.11

type NetworkSegmentInfo struct {
	NetworkSegment NetworkDetail `json:"network_segment,omitempty" xml:"network_segment,omitempty"`
}

type NetworkSegmentList added in v0.0.11

type NetworkSegmentList struct {
	Size    int                      `json:"size" xml:"size"`
	Results []ResponseNetworkSegment `json:"network_segment" xml:"network_segment"`
}

type NetworkSegmentScope added in v0.0.11

type NetworkSegmentScope struct {
	ID   int    `xml:"id"`
	UID  string `xml:"uid,omitempty"`
	Name int    `xml:"name"`
}

type Parameters added in v0.0.15

type Parameters struct {
	Parameter4  string `xml:"parameter4,omitempty"`
	Parameter5  string `xml:"parameter5,omitempty"`
	Parameter6  string `xml:"parameter6,omitempty"`
	Parameter7  string `xml:"parameter7,omitempty"`
	Parameter8  string `xml:"parameter8,omitempty"`
	Parameter9  string `xml:"parameter9,omitempty"`
	Parameter10 string `xml:"parameter10,omitempty"`
	Parameter11 string `xml:"parameter11,omitempty"`
}

type PathItem added in v0.0.53

type PathItem struct {
	ID   string `json:"id"`
	Path string `json:"path"`
}
type PeripheralLink struct {
	Peripheral UsersDataSubsetItem `json:"peripheral" xml:"peripheral"`
}

type PolicyAccount added in v0.0.45

type PolicyAccount struct {
	Action                 string `xml:"action"`
	Username               string `xml:"username"`
	Realname               string `xml:"realname"`
	Password               string `xml:"password"`
	ArchiveHomeDirectory   bool   `xml:"archive_home_directory"`
	ArchiveHomeDirectoryTo string `xml:"archive_home_directory_to"`
	Home                   string `xml:"home"`
	Hint                   string `xml:"hint"`
	Picture                string `xml:"picture"`
	Admin                  bool   `xml:"admin"`
	FilevaultEnabled       bool   `xml:"filevault_enabled"`
	PasswordSha256         string `xml:"password_sha256"`
}

type PolicyAccountMaintenance added in v0.0.45

type PolicyAccountMaintenance struct {
	Accounts                []PolicyAccount               `xml:"accounts>account"`
	DirectoryBindings       []PolicyDirectoryBinding      `xml:"directory_bindings>binding"`
	ManagementAccount       PolicyManagementAccount       `xml:"management_account"`
	OpenFirmwareEfiPassword PolicyOpenFirmwareEfiPassword `xml:"open_firmware_efi_password"`
}

PolicyAccountMaintenance represents the account maintenance settings of a policy

type PolicyBuilding added in v0.0.45

type PolicyBuilding struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyCategory added in v0.0.45

type PolicyCategory struct {
	ID        string `xml:"id,omitempty"`
	Name      string `xml:"name,omitempty"`
	DisplayIn bool   `xml:"display_in,omitempty"`
	FeatureIn bool   `xml:"feature_in,omitempty"`
}

type PolicyComputer added in v0.0.45

type PolicyComputer struct {
	ID   int    `xml:"id"`
	Name string `xml:"name,omitempty"`
	UDID string `xml:"udid,omitempty"`
}

type PolicyComputerGroup added in v0.0.45

type PolicyComputerGroup struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyDateTimeLimitations added in v0.0.45

type PolicyDateTimeLimitations struct {
	ActivationDate      string            `xml:"activation_date,omitempty"`
	ActivationDateEpoch int64             `xml:"activation_date_epoch,omitempty"`
	ActivationDateUTC   string            `xml:"activation_date_utc,omitempty"`
	ExpirationDate      string            `xml:"expiration_date,omitempty"`
	ExpirationDateEpoch int64             `xml:"expiration_date_epoch,omitempty"`
	ExpirationDateUTC   string            `xml:"expiration_date_utc,omitempty"`
	NoExecuteOn         PolicyNoExecuteOn `xml:"no_execute_on,omitempty"`
	NoExecuteStart      string            `xml:"no_execute_start,omitempty"`
	NoExecuteEnd        string            `xml:"no_execute_end,omitempty"`
}

type PolicyDepartment added in v0.0.45

type PolicyDepartment struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyDirectoryBinding added in v0.0.45

type PolicyDirectoryBinding struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyDiskEncryption added in v0.0.45

type PolicyDiskEncryption struct {
	Action                                 string `xml:"action"`
	DiskEncryptionConfigurationID          int    `xml:"disk_encryption_configuration_id"`
	AuthRestart                            bool   `xml:"auth_restart"`
	RemediateKeyType                       string `xml:"remediate_key_type,omitempty"`
	RemediateDiskEncryptionConfigurationID int    `xml:"remediate_disk_encryption_configuration_id,omitempty"`
}

PolicyDiskEncryption represents the disk encryption settings of a policy

type PolicyDockItem added in v0.0.45

type PolicyDockItem struct {
	ID     int    `xml:"id"`
	Name   string `xml:"name"`
	Action string `xml:"action"`
}

type PolicyDockItems added in v0.0.45

type PolicyDockItems struct {
	Size     int              `xml:"size"`
	DockItem []PolicyDockItem `xml:"dock_item"`
}

PolicyDockItems represents the dock items settings of a policy

type PolicyExclusions added in v0.0.45

type PolicyExclusions struct {
	Computers       []PolicyComputer       `xml:"computers>computer,omitempty"`
	ComputerGroups  []PolicyComputerGroup  `xml:"computer_groups>computer_group,omitempty"`
	Buildings       []PolicyBuilding       `xml:"buildings>building,omitempty"`
	Departments     []PolicyDepartment     `xml:"departments>department,omitempty"`
	Users           []PolicyUser           `xml:"users>user,omitempty"`
	UserGroups      []PolicyUserGroup      `xml:"user_groups>user_group,omitempty"`
	NetworkSegments []PolicyNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	IBeacons        []PolicyIBeacon        `xml:"ibeacons>ibeacon,omitempty"`
}

type PolicyFilesProcesses added in v0.0.45

type PolicyFilesProcesses struct {
	SearchByPath         string `xml:"search_by_path"`
	DeleteFile           bool   `xml:"delete_file"`
	LocateFile           string `xml:"locate_file"`
	UpdateLocateDatabase bool   `xml:"update_locate_database"`
	SpotlightSearch      string `xml:"spotlight_search"`
	SearchForProcess     string `xml:"search_for_process"`
	KillProcess          bool   `xml:"kill_process"`
	RunCommand           string `xml:"run_command"`
}

PolicyFilesProcesses represents the files and processes settings of a policy

type PolicyGeneral added in v0.0.45

type PolicyGeneral struct {
	ID                         int                       `xml:"id"`
	Name                       string                    `xml:"name"`
	Enabled                    bool                      `xml:"enabled"`
	Trigger                    string                    `xml:"trigger,omitempty"`
	TriggerCheckin             bool                      `xml:"trigger_checkin"`
	TriggerEnrollmentComplete  bool                      `xml:"trigger_enrollment_complete"`
	TriggerLogin               bool                      `xml:"trigger_login"`
	TriggerLogout              bool                      `xml:"trigger_logout"`
	TriggerNetworkStateChanged bool                      `xml:"trigger_network_state_changed"`
	TriggerStartup             bool                      `xml:"trigger_startup"`
	TriggerOther               string                    `xml:"trigger_other,omitempty"`
	Frequency                  string                    `xml:"frequency,omitempty"`
	RetryEvent                 string                    `xml:"retry_event,omitempty"`
	RetryAttempts              int                       `xml:"retry_attempts,omitempty"`
	NotifyOnEachFailedRetry    bool                      `xml:"notify_on_each_failed_retry"`
	LocationUserOnly           bool                      `xml:"location_user_only"`
	TargetDrive                string                    `xml:"target_drive,omitempty"`
	Offline                    bool                      `xml:"offline"`
	Category                   PolicyCategory            `xml:"category,omitempty"`
	DateTimeLimitations        PolicyDateTimeLimitations `xml:"date_time_limitations,omitempty"`
	NetworkLimitations         PolicyNetworkLimitations  `xml:"network_limitations,omitempty"`
	OverrideDefaultSettings    PolicyOverrideSettings    `xml:"override_default_settings,omitempty"`
	NetworkRequirements        string                    `xml:"network_requirements,omitempty"`
	Site                       PolicySite                `xml:"site"`
}

PolicyGeneral represents the general information of a policy

type PolicyIBeacon added in v0.0.45

type PolicyIBeacon struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyItem added in v0.0.45

type PolicyItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyLimitToUsers added in v0.0.45

type PolicyLimitToUsers struct {
	UserGroups []string `xml:"user_groups>user_group,omitempty"`
}

type PolicyLimitations added in v0.0.45

type PolicyLimitations struct {
	Users           []PolicyUser           `xml:"users>user,omitempty"`
	UserGroups      []PolicyUserGroup      `xml:"user_groups>user_group,omitempty"`
	NetworkSegments []PolicyNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	IBeacons        []PolicyIBeacon        `xml:"ibeacons>ibeacon,omitempty"`
}

type PolicyMaintenance added in v0.0.45

type PolicyMaintenance struct {
	Recon                    bool `xml:"recon"`
	ResetName                bool `xml:"reset_name"`
	InstallAllCachedPackages bool `xml:"install_all_cached_packages"`
	Heal                     bool `xml:"heal"`
	Prebindings              bool `xml:"prebindings"`
	Permissions              bool `xml:"permissions"`
	Byhost                   bool `xml:"byhost"`
	SystemCache              bool `xml:"system_cache"`
	UserCache                bool `xml:"user_cache"`
	Verify                   bool `xml:"verify"`
}

PolicyMaintenance represents the maintenance settings of a policy

type PolicyManagementAccount added in v0.0.45

type PolicyManagementAccount struct {
	Action                string `xml:"action"`
	ManagedPassword       string `xml:"managed_password"`
	ManagedPasswordLength int    `xml:"managed_password_length"`
}

type PolicyNetworkLimitations added in v0.0.45

type PolicyNetworkLimitations struct {
	MinimumNetworkConnection string `xml:"minimum_network_connection,omitempty"`
	AnyIPAddress             bool   `xml:"any_ip_address"`
	NetworkSegments          string `xml:"network_segments"`
}

type PolicyNetworkSegment added in v0.0.45

type PolicyNetworkSegment struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
	UID  string `xml:"uid,omitempty"`
}

type PolicyNoExecuteOn added in v0.0.45

type PolicyNoExecuteOn struct {
	Day string `xml:"day,omitempty"`
}

type PolicyOpenFirmwareEfiPassword added in v0.0.45

type PolicyOpenFirmwareEfiPassword struct {
	OfMode           string `xml:"of_mode"`
	OfPassword       string `xml:"of_password"`
	OfPasswordSHA256 string `xml:"of_password_sha256"`
}

type PolicyOverrideSettings added in v0.0.45

type PolicyOverrideSettings struct {
	TargetDrive       string `xml:"target_drive,omitempty"`
	DistributionPoint string `xml:"distribution_point,omitempty"`
	ForceAfpSmb       bool   `xml:"force_afp_smb,omitempty"`
	SUS               string `xml:"sus,omitempty"`
	NetbootServer     string `xml:"netboot_server,omitempty"`
}

type PolicyPackage added in v0.0.45

type PolicyPackage struct {
	ID                int    `xml:"id,omitempty"`
	Name              string `xml:"name,omitempty"`
	Action            string `xml:"action,omitempty"`
	FillUserTemplate  bool   `xml:"fut,omitempty"`
	FillExistingUsers bool   `xml:"feu,omitempty"`
	UpdateAutorun     bool   `xml:"update_autorun,omitempty"`
}

type PolicyPackageConfiguration added in v0.0.45

type PolicyPackageConfiguration struct {
	Packages          []PolicyPackage `xml:"packages>package"`
	DistributionPoint string          `xml:"distribution_point"`
}

PolicyPackageConfiguration represents the package configuration settings of a policy

type PolicyPrinterItem added in v0.0.45

type PolicyPrinterItem struct {
	ID          int    `xml:"id"`
	Name        string `xml:"name"`
	Action      string `xml:"action"`
	MakeDefault bool   `xml:"make_default"`
}

type PolicyPrinters added in v0.0.45

type PolicyPrinters struct {
	Size                 int                 `xml:"size"`
	LeaveExistingDefault bool                `xml:"leave_existing_default"`
	Printer              []PolicyPrinterItem `xml:"printer"`
}

PolicyPrinters represents the printers settings of a policy

type PolicyReboot added in v0.0.45

type PolicyReboot struct {
	Message                     string `xml:"message"`
	StartupDisk                 string `xml:"startup_disk"`
	SpecifyStartup              string `xml:"specify_startup"`
	NoUserLoggedIn              string `xml:"no_user_logged_in"`
	UserLoggedIn                string `xml:"user_logged_in"`
	MinutesUntilReboot          int    `xml:"minutes_until_reboot"`
	StartRebootTimerImmediately bool   `xml:"start_reboot_timer_immediately"`
	FileVault2Reboot            bool   `xml:"file_vault_2_reboot"`
}

PolicyReboot represents the reboot settings of a policy

type PolicyScope added in v0.0.45

type PolicyScope struct {
	AllComputers   bool                  `xml:"all_computers"`
	Computers      []PolicyComputer      `xml:"computers>computer,omitempty"`
	ComputerGroups []PolicyComputerGroup `xml:"computer_groups>computer_group,omitempty"`
	Buildings      []PolicyBuilding      `xml:"buildings>building,omitempty"`
	Departments    []PolicyDepartment    `xml:"departments>department,omitempty"`
	LimitToUsers   PolicyLimitToUsers    `xml:"limit_to_users,omitempty"`
	Limitations    PolicyLimitations     `xml:"limitations,omitempty"`
	Exclusions     PolicyExclusions      `xml:"exclusions,omitempty"`
}

PolicyScope represents the scope of the policy

type PolicyScriptItem added in v0.0.45

type PolicyScriptItem struct {
	ID          string `xml:"id,omitempty"`
	Name        string `xml:"name,omitempty"`
	Priority    string `xml:"priority,omitempty"`
	Parameter4  string `xml:"parameter4,omitempty"`
	Parameter5  string `xml:"parameter5,omitempty"`
	Parameter6  string `xml:"parameter6,omitempty"`
	Parameter7  string `xml:"parameter7,omitempty"`
	Parameter8  string `xml:"parameter8,omitempty"`
	Parameter9  string `xml:"parameter9,omitempty"`
	Parameter10 string `xml:"parameter10,omitempty"`
	Parameter11 string `xml:"parameter11,omitempty"`
}

type PolicyScripts added in v0.0.45

type PolicyScripts struct {
	Size   int                `xml:"size"`
	Script []PolicyScriptItem `xml:"script"`
}

PolicyScripts represents the scripts settings of a policy

type PolicySelfService added in v0.0.45

type PolicySelfService struct {
	UseForSelfService           bool                      `xml:"use_for_self_service"`
	SelfServiceDisplayName      string                    `xml:"self_service_display_name"`
	InstallButtonText           string                    `xml:"install_button_text"`
	ReinstallButtonText         string                    `xml:"re_install_button_text"`
	SelfServiceDescription      string                    `xml:"self_service_description"`
	ForceUsersToViewDescription bool                      `xml:"force_users_to_view_description"`
	SelfServiceIcon             PolicySelfServiceIcon     `xml:"self_service_icon,omitempty"`
	FeatureOnMainPage           bool                      `xml:"feature_on_main_page"`
	SelfServiceCategories       PolicySelfServiceCategory `xml:"self_service_categories"`
}

PolicySelfService represents the self service settings of a policy

type PolicySelfServiceCategory added in v0.0.45

type PolicySelfServiceCategory struct {
	Category PolicyCategory `xml:"category"`
}

type PolicySelfServiceIcon added in v0.0.45

type PolicySelfServiceIcon struct {
	ID       int    `xml:"id,omitempty"`
	Filename string `xml:"filename,omitempty"`
	URI      string `xml:"uri,omitempty"`
}

type PolicySite added in v0.0.45

type PolicySite struct {
	ID   int    `xml:"id,omitempty"`
	Name string `xml:"name,omitempty"`
}

type PolicyUser added in v0.0.45

type PolicyUser struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyUserGroup added in v0.0.45

type PolicyUserGroup struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type PolicyUserInteraction added in v0.0.45

type PolicyUserInteraction struct {
	MessageStart          string `xml:"message_start"`
	AllowUserToDefer      bool   `xml:"allow_user_to_defer"`
	AllowDeferralUntilUtc string `xml:"allow_deferral_until_utc"`
	AllowDeferralMinutes  int    `xml:"allow_deferral_minutes"`
	MessageFinish         string `xml:"message_finish"`
}

PolicyUserInteraction represents the user interaction settings of a policy

type ResponseAccount

type ResponseAccount struct {
	ID                  int                         `json:"id,omitempty" xml:"id,omitempty"`
	Name                string                      `json:"name" xml:"name"`
	DirectoryUser       bool                        `json:"directory_user,omitempty" xml:"directory_user,omitempty"`
	FullName            string                      `json:"full_name,omitempty" xml:"full_name,omitempty"`
	Email               string                      `json:"email,omitempty" xml:"email,omitempty"`
	EmailAddress        string                      `json:"email_address,omitempty" xml:"email_address,omitempty"`
	Enabled             string                      `json:"enabled,omitempty" xml:"enabled,omitempty"`
	LdapServer          AccountDataSubsetLdapServer `json:"ldap_server,omitempty" xml:"ldap_server,omitempty"` // Added this
	ForcePasswordChange bool                        `json:"force_password_change,omitempty" xml:"force_password_change,omitempty"`
	AccessLevel         string                      `json:"access_level,omitempty" xml:"access_level,omitempty"`
	Password            string                      `json:"password" xml:"password"`
	PrivilegeSet        string                      `json:"privilege_set,omitempty" xml:"privilege_set,omitempty"`
	Site                AccountDataSubsetSite       `json:"site,omitempty" xml:"site,omitempty"`
	Privileges          AccountDataSubsetPrivileges `json:"privileges,omitempty" xml:"privileges,omitempty"`
}

type ResponseAccountGroup

type ResponseAccountGroup struct {
	ID           int                         `json:"id,omitempty" xml:"id"`
	Name         string                      `json:"name" xml:"name"`
	AccessLevel  string                      `json:"access_level" xml:"access_level"`
	PrivilegeSet string                      `json:"privilege_set" xml:"privilege_set"`
	Site         AccountDataSubsetSite       `json:"site" xml:"site"`
	Privileges   AccountDataSubsetPrivileges `json:"privileges" xml:"privileges"`
	Members      []AccountDataSubsetUser     `json:"members" xml:"members>user"`
}

type ResponseAccountsList

type ResponseAccountsList struct {
	Users  *AccountDataSubsetUsers  `xml:"users,omitempty"`
	Groups *AccountDataSubsetGroups `xml:"groups,omitempty"`
}

Get Account List

type ResponseActivationCode added in v0.0.46

type ResponseActivationCode struct {
	OrganizationName string `xml:"organization_name"`
	Code             string `xml:"code"`
}

ResponseActivationCode represents the structure of the response for an activation code.

type ResponseActiveCertificateAuthority added in v0.0.52

type ResponseActiveCertificateAuthority struct {
	SubjectX500Principal string    `json:"subjectX500Principal"`
	IssuerX500Principal  string    `json:"issuerX500Principal"`
	SerialNumber         string    `json:"serialNumber"`
	Version              int       `json:"version"`
	NotAfter             int64     `json:"notAfter"`
	NotBefore            int64     `json:"notBefore"`
	Signature            Signature `json:"signature"`
	KeyUsage             []string  `json:"keyUsage"`
	KeyUsageExtended     []string  `json:"keyUsageExtended"`
	SHA1Fingerprint      string    `json:"sha1Fingerprint"`
	SHA256Fingerprint    string    `json:"sha256Fingerprint"`
}

ResponseActiveCertificateAuthority represents the JSON response for the active certificate authority.

type ResponseAdvancedComputerSearch added in v0.0.36

type ResponseAdvancedComputerSearch struct {
	ID            int                                        `xml:"id"`
	Name          string                                     `xml:"name"`
	ViewAs        string                                     `xml:"view_as,omitempty"`
	Sort1         string                                     `xml:"sort_1,omitempty"`
	Sort2         string                                     `xml:"sort_2,omitempty"`
	Sort3         string                                     `xml:"sort_3,omitempty"`
	Criteria      []AdvancedComputerSearchesCriteria         `xml:"criteria"`
	DisplayFields []AdvancedComputerSearchesDisplayField     `xml:"display_fields"`
	Computers     []AdvancedComputerSearchDataSubsetComputer `xml:"computers"`
	Site          AdvancedComputerSearchesSiteDetail         `xml:"site"`
}

ResponseAdvancedComputerSearch represents the structure of the response for an advanced computer search.

type ResponseAdvancedComputerSearches added in v0.0.36

type ResponseAdvancedComputerSearches struct {
	Size                     int                            `xml:"size"`
	AdvancedComputerSearches []AdvancedComputerSearchDetail `xml:"advanced_computer_search"`
}

ResponseAdvancedComputerSearches represents the structure for multiple advanced computer searches.

type ResponseAdvancedMobileDeviceSearches added in v0.0.48

type ResponseAdvancedMobileDeviceSearches struct {
	ID            int                                        `xml:"id"`                       // Unique identifier for the search
	Name          string                                     `xml:"name"`                     // Name of the search
	ViewAs        string                                     `xml:"view_as,omitempty"`        // The format in which the search results are viewed
	Sort1         string                                     `xml:"sort_1,omitempty"`         // First sorting criteria
	Sort2         string                                     `xml:"sort_2,omitempty"`         // Second sorting criteria
	Sort3         string                                     `xml:"sort_3,omitempty"`         // Third sorting criteria
	Criteria      []AdvancedMobileDeviceSearchesCriteria     `xml:"criteria,omitempty"`       // List of search criteria
	DisplayFields []AdvancedMobileDeviceSearchesDisplayField `xml:"display_fields,omitempty"` // Fields to display in search results
	MobileDevices []AdvancedMobileDeviceSearchesMobileDevice `xml:"mobile_devices,omitempty"` // List of mobile devices that match the search
	Site          AdvancedMobileDeviceSearchesSite           `xml:"site,omitempty"`           // Information about the site associated with the search
}

ResponseAdvancedMobileDeviceSearches represents the structure of the response for an advanced mobile device search.

type ResponseAdvancedMobileDeviceSearchesList added in v0.0.48

type ResponseAdvancedMobileDeviceSearchesList struct {
	Size                         int                                `xml:"size"`
	AdvancedMobileDeviceSearches []AdvancedMobileDeviceSearchDetail `xml:"advanced_mobile_device_search"`
}

ResponseAdvancedMobileDeviceSearchesList represents the structure for multiple advanced mobile device searches.

type ResponseAdvancedUserSearchesList added in v0.0.44

type ResponseAdvancedUserSearchesList struct {
	Size               int                        `xml:"size"`
	AdvancedUserSearch []AdvancedUserSearchDetail `xml:"advanced_user_search"`
}

Response structure for the list of advanced user searches

type ResponseAllowedFileExtensionsList added in v0.0.9

type ResponseAllowedFileExtensionsList struct {
	XMLName               xml.Name                     `xml:"allowed_file_extensions"`
	Size                  int                          `xml:"size"`
	AllowedFileExtensions []AllowedFileExtensionDetail `xml:"allowed_file_extension"`
}

Response structure for the list of allowed file extensions

type ResponseApiIntegrations added in v0.0.13

type ResponseApiIntegrations struct {
	TotalCount int              `json:"totalCount"`
	Results    []ApiIntegration `json:"results"`
}

ResponseApiIntegrations represents the structure of the response for fetching API integrations

type ResponseApiRolePrivileges added in v0.0.43

type ResponseApiRolePrivileges struct {
	Privileges []string `json:"privileges"`
}

ResponseApiRolePrivileges represents the structure of the response for fetching API role privileges

type ResponseApiRoles added in v0.0.12

type ResponseApiRoles struct {
	TotalCount int       `json:"totalCount"`
	Results    []APIRole `json:"results"`
}

ResponseApiRoles represents the structure of the response for fetching API roles

type ResponseBYOProfile added in v0.0.50

type ResponseBYOProfile struct {
	General BYOProfileGeneralInfo `xml:"general"`
}

BYOProfile represents the details of a BYO profile.

type ResponseBYOProfilesList added in v0.0.50

type ResponseBYOProfilesList struct {
	Size        int              `xml:"size"`
	BYOProfiles []BYOProfileItem `xml:"byoprofile"`
}

ResponseBYOProfilesList represents the XML response for a list of BYO profiles.

type ResponseBuilding added in v0.0.8

type ResponseBuilding BuildingScope

ResponseBuilding is now directly the BuildingDetail

type ResponseBuildings added in v0.0.9

type ResponseBuildings struct {
	Size      int              `xml:"size"`
	Buildings []BuildingDetail `xml:"building"`
}

For multiple buildings, the structure remains the same.

type ResponseCacheSettings added in v0.0.52

type ResponseCacheSettings struct {
	ID                         string              `json:"id,omitempty"`
	Name                       string              `json:"name,omitempty"`
	CacheType                  string              `json:"cacheType"`
	TimeToLiveSeconds          int                 `json:"timeToLiveSeconds"`
	TimeToIdleSeconds          int                 `json:"timeToIdleSeconds"`
	DirectoryTimeToLiveSeconds int                 `json:"directoryTimeToLiveSeconds,omitempty"`
	EhcacheMaxBytesLocalHeap   string              `json:"ehcacheMaxBytesLocalHeap,omitempty"`
	CacheUniqueId              string              `json:"cacheUniqueId"`
	Elasticache                bool                `json:"elasticache,omitempty"`
	MemcachedEndpoints         []MemcachedEndpoint `json:"memcachedEndpoints"`
}

ResponseCacheSettings represents the JSON response for cache settings.

type ResponseCategories added in v0.0.11

type ResponseCategories struct {
	Id       string `json:"id"`
	Name     string `json:"name"`
	Priority int    `json:"priority"`
}

type ResponseCategoriesList added in v0.0.45

type ResponseCategoriesList struct {
	TotalCount *int           `json:"totalCount,omitempty"`
	Results    []CategoryItem `json:"results,omitempty"`
}

type ResponseClasses added in v0.0.51

type ResponseClasses struct {
	ID                  int                 `xml:"id"`
	Source              string              `xml:"source"`
	Name                string              `xml:"name"`
	Description         string              `xml:"description"`
	Site                ClassSite           `xml:"site"`
	MobileDeviceGroup   ClassDeviceGroup    `xml:"mobile_device_group"`
	Students            []ClassStudent      `xml:"students>student"`
	Teachers            []ClassTeacher      `xml:"teachers>teacher"`
	TeacherIDs          []ClassTeacherID    `xml:"teacher_ids>id"`
	StudentGroupIDs     []ClassGroupID      `xml:"student_group_ids>id"`
	TeacherGroupIDs     []ClassGroupID      `xml:"teacher_group_ids>id"`
	MobileDevices       []ClassMobileDevice `xml:"mobile_devices>mobile_device"`
	MobileDeviceGroupID []ClassGroupID      `xml:"mobile_device_group_id>id"`
	MeetingTimes        ClassMeetingTimes   `xml:"meeting_times"`
	AppleTVs            []ClassAppleTV      `xml:"apple_tvs>apple_tv"`
}

Structs for the Class response by ID

type ResponseClassesList added in v0.0.51

type ResponseClassesList struct {
	Size    int         `xml:"size"`
	Classes []ClassItem `xml:"class"`
}

ResponseClassesList represents the XML response for a list of classes.

type ResponseComputerExtensionAttribute added in v0.0.37

type ResponseComputerExtensionAttribute struct {
	ID               int                                 `xml:"id"`
	Name             string                              `xml:"name"`
	Enabled          bool                                `xml:"enabled,omitempty"`
	Description      string                              `xml:"description,omitempty"`
	DataType         string                              `xml:"data_type,omitempty"`
	InputType        ComputerExtensionAttributeInputType `xml:"input_type"`
	InventoryDisplay string                              `xml:"inventory_display,omitempty"`
	ReconDisplay     string                              `xml:"recon_display,omitempty"`
}

type ResponseComputerExtensionAttributesList added in v0.0.37

type ResponseComputerExtensionAttributesList struct {
	Size    int                              `xml:"size"`
	Results []ComputerExtensionAttributeItem `xml:"computer_extension_attribute"`
}

type ResponseComputerGroup added in v0.0.46

type ResponseComputerGroup struct {
	ID        int                         `xml:"id"`
	Name      string                      `xml:"name"`
	IsSmart   bool                        `xml:"is_smart"`
	Site      ComputerGroupSite           `xml:"site"`
	Criteria  []ComputerGroupCriterion    `xml:"criteria>criterion"`
	Computers []ComputerGroupComputerItem `xml:"computers>computer"`
}

type ResponseComputerInventoryCollectionSettings added in v0.0.53

type ResponseComputerInventoryCollectionSettings struct {
	ComputerInventoryCollectionPreferences InventoryCollectionPreference `json:"computerInventoryCollectionPreferences"`
	ApplicationPaths                       []PathItem                    `json:"applicationPaths"`
	FontPaths                              []PathItem                    `json:"fontPaths"`
	PluginPaths                            []PathItem                    `json:"pluginPaths"`
}

type ResponseComputerPrestagesV3 added in v0.0.49

type ResponseComputerPrestagesV3 struct {
	TotalCount int                     `json:"totalCount"`
	Results    []ComputerPrestagesItem `json:"results"`
}

type ResponseDepartment added in v0.0.34

type ResponseDepartment struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type ResponseDepartmentsList added in v0.0.34

type ResponseDepartmentsList struct {
	TotalCount int              `xml:"size"`
	Results    []DepartmentItem `xml:"department"`
}

type ResponseDeviceScope added in v0.0.49

type ResponseDeviceScope struct {
	PrestageId  string           `json:"prestageId"`
	Assignments []AssignmentItem `json:"assignments"`
	VersionLock int              `json:"versionLock"`
}

ResponseDeviceScope represents the structure of the response for a specific computer prestage scope.

type ResponseIbeacon added in v0.0.11

type ResponseIbeacon struct {
	ID    int    `json:"id" xml:"id"`
	Name  string `json:"name" xml:"name"`
	UUID  string `json:"uuid" xml:"uuid"`
	Major int    `json:"major" xml:"major"`
	Minor int    `json:"minor" xml:"minor"`
}

type ResponseIbeaconList added in v0.0.11

type ResponseIbeaconList struct {
	Ibeacons []IbeaconListItem `json:"ibeacon" xml:"ibeacon"`
}

type ResponseJamfProInformation added in v0.0.53

type ResponseJamfProInformation struct {
	VppTokenEnabled         *bool `json:"vppTokenEnabled,omitempty"`
	DepAccountEnabled       *bool `json:"depAccountEnabled,omitempty"`
	ByodEnabled             *bool `json:"byodEnabled,omitempty"`
	UserMigrationEnabled    *bool `json:"userMigrationEnabled,omitempty"`
	CloudDeploymentsEnabled *bool `json:"cloudDeploymentsEnabled,omitempty"`
	PatchEnabled            *bool `json:"patchEnabled,omitempty"`
	SsoSamlEnabled          *bool `json:"ssoSamlEnabled,omitempty"`
	SmtpEnabled             *bool `json:"smtpEnabled,omitempty"`
}

type ResponseJamfProVersion added in v0.0.10

type ResponseJamfProVersion struct {
	Version *string `json:"Version,omitempty"`
}

type ResponseMacOSConfigurationProfile added in v0.0.11

type ResponseMacOSConfigurationProfile struct {
	General     GeneralConfig     `json:"general,omitempty" xml:"general,omitempty"`
	Scope       ScopeConfig       `json:"scope,omitempty" xml:"scope,omitempty"`
	SelfService SelfServiceConfig `json:"self_service,omitempty" xml:"self_service,omitempty"`
}

type ResponseMacOSConfigurationProfileList added in v0.0.11

type ResponseMacOSConfigurationProfileList struct {
	Size    int                                 `json:"size" xml:"size"`
	Results []MacOSConfigurationProfileListItem `json:"os_x_configuration_profile" xml:"os_x_configuration_profile"`
}

type ResponseNetworkSegment added in v0.0.11

type ResponseNetworkSegment struct {
	ID                  int    `json:"id" xml:"id"`
	Name                string `json:"name" xml:"name"`
	StartingAddress     string `json:"starting_address" xml:"starting_address"`
	EndingAddress       string `json:"ending_address" xml:"ending_address"`
	DistributionServer  string `json:"distribution_server,omitempty" xml:"distribution_server,omitempty"`
	DistributionPoint   string `json:"distribution_point,omitempty" xml:"distribution_point,omitempty"`
	URL                 string `json:"url,omitempty" xml:"url,omitempty"`
	SWUServer           string `json:"swu_server,omitempty" xml:"swu_server,omitempty"`
	Building            string `json:"building,omitempty" xml:"building,omitempty"`
	Department          string `json:"department,omitempty" xml:"department,omitempty"`
	OverrideBuildings   bool   `json:"override_buildings" xml:"override_buildings"`
	OverrideDepartments bool   `json:"override_departments" xml:"override_departments"`
}

type ResponsePoliciesList added in v0.0.45

type ResponsePoliciesList struct {
	Size   int          `xml:"size"`
	Policy []PolicyItem `xml:"policy"`
}

Policies List Structs

type ResponsePolicy added in v0.0.45

type ResponsePolicy struct {
	General              PolicyGeneral              `xml:"general"`
	Scope                PolicyScope                `xml:"scope,omitempty"`
	SelfService          PolicySelfService          `xml:"self_service"`
	PackageConfiguration PolicyPackageConfiguration `xml:"package_configuration,omitempty"`
	Scripts              PolicyScripts              `xml:"scripts,omitempty"`
	Printers             PolicyPrinters             `xml:"printers"`
	DockItems            PolicyDockItems            `xml:"dock_items"`
	AccountMaintenance   PolicyAccountMaintenance   `xml:"account_maintenance"`
	Maintenance          PolicyMaintenance          `xml:"maintenance"`
	FilesProcesses       PolicyFilesProcesses       `xml:"files_processes"`
	UserInteraction      PolicyUserInteraction      `xml:"user_interaction"`
	DiskEncryption       PolicyDiskEncryption       `xml:"disk_encryption"`
	Reboot               PolicyReboot               `xml:"reboot"`
}

ResponsePolicy represents the response structure for a single policy

type ResponseScript added in v0.0.15

type ResponseScript struct {
	ID                    int        `xml:"id"`
	Name                  string     `xml:"name"`
	Category              string     `xml:"category,omitempty"`
	Filename              string     `xml:"filename,omitempty"`
	Info                  string     `xml:"info,omitempty"`
	Notes                 string     `xml:"notes,omitempty"`
	Priority              string     `xml:"priority,omitempty"`
	Parameters            Parameters `xml:"parameters"`
	OSRequirements        string     `xml:"os_requirements,omitempty"`
	ScriptContents        string     `xml:"script_contents,omitempty"`
	ScriptContentsEncoded string     `xml:"script_contents_encoded,omitempty"`
}

type ResponseScriptsList added in v0.0.15

type ResponseScriptsList struct {
	Size   int          `xml:"size"`
	Script []ScriptItem `xml:"script"`
}

Scripts List Structs

type ResponseSelfServiceBranding added in v0.0.49

type ResponseSelfServiceBranding struct {
	TotalCount int                         `json:"totalCount"`
	Results    []SelfServiceBrandingDetail `json:"results"`
}

ResponseSelfServiceBranding is the structure that holds the list of self-service branding configurations for macOS.

type ResponseSite added in v0.0.34

type ResponseSite struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type ResponseUploadIcon added in v0.0.50

type ResponseUploadIcon struct {
	URL string `json:"url"`
	ID  int    `json:"id"`
}

ResponseUploadIcon is the response structure for uploading icons.

type ResponseUser added in v0.0.11

type ResponseUser struct {
	ID                   int                                 `json:"id" xml:"id"`
	Name                 string                              `json:"name" xml:"name"` // required
	FullName             string                              `json:"full_name,omitempty" xml:"full_name,omitempty"`
	Email                string                              `json:"email,omitempty" xml:"email,omitempty"`
	EmailAddress         string                              `json:"email_address,omitempty" xml:"email_address,omitempty"`
	PhoneNumber          string                              `json:"phone_number,omitempty" xml:"phone_number,omitempty"`
	Position             string                              `json:"position,omitempty" xml:"position,omitempty"`
	EnableCustomPhotoURL bool                                `json:"enable_custom_photo_url,omitempty" xml:"enable_custom_photo_url,omitempty"`
	CustomPhotoURL       string                              `json:"custom_photo_url,omitempty" xml:"custom_photo_url,omitempty"`
	LDAPServer           UsersDataSubsetLDAPServer           `json:"ldap_server,omitempty" xml:"ldap_server,omitempty"`
	ExtensionAttributes  []UsersDataSubsetExtensionAttribute `json:"extension_attributes,omitempty" xml:"extension_attributes,omitempty"`
	Sites                []UsersDataSubsetUserSite           `json:"sites,omitempty" xml:"sites,omitempty"`
	Links                UsersDataSubsetUserLinks            `json:"links,omitempty" xml:"links,omitempty"`
}

type ResponseUserGroup added in v0.0.11

type ResponseUserGroup struct {
	ID               int                 `json:"id" xml:"id"`
	Name             string              `json:"name" xml:"name"`
	IsSmart          bool                `json:"is_smart" xml:"is_smart"`
	IsNotifyOnChange bool                `json:"is_notify_on_change" xml:"is_notify_on_change"`
	Site             Site                `json:"site,omitempty" xml:"site,omitempty"`
	Criteria         []UserGroupCriteria `json:"criteria,omitempty" xml:"criteria,omitempty"`
	Users            []UserGroupUser     `json:"users,omitempty" xml:"users,omitempty"`
}

type ResponseUserList added in v0.0.11

type ResponseUserList struct {
	Size  int            `json:"size" xml:"size"`
	Users []UserListItem `json:"user" xml:"user"`
}

type ResponseUsers added in v0.0.11

type ResponseUsers struct {
	Size  int            `xml:"size"`
	Users []ResponseUser `xml:"user"`
}

type ResponseVolumePurchasingSubscriptionsList added in v0.0.52

type ResponseVolumePurchasingSubscriptionsList struct {
	TotalCount *int                           `json:"totalCount,omitempty"`
	Results    []VolumePurchasingSubscription `json:"results,omitempty"`
}

type SSOFailoverResponse

type SSOFailoverResponse struct {
	FailoverURL    string `json:"failoverUrl"`
	GenerationTime int64  `json:"generationTime"`
}

type ScopeConfig added in v0.0.11

type ScopeConfig struct {
	AllComputers   bool                   `json:"all_computers,omitempty" xml:"all_computers,omitempty"`
	AllJSSUsers    bool                   `json:"all_jss_users,omitempty" xml:"all_jss_users,omitempty"`
	Computers      []ComputerAssignment   `json:"computers,omitempty" xml:"computers,omitempty"`
	Buildings      []BuildingAssignment   `json:"buildings,omitempty" xml:"buildings,omitempty"`
	Departments    []DepartmentAssignment `json:"departments,omitempty" xml:"departments,omitempty"`
	ComputerGroups []ComputerGroupInfo    `json:"computer_groups,omitempty" xml:"computer_groups,omitempty"`
	JSSUsers       []JSSUserConfig        `json:"jss_users,omitempty" xml:"jss_users,omitempty"`
	JSSUserGroups  []JSSUserGroupInfo     `json:"jss_user_groups,omitempty" xml:"jss_user_groups,omitempty"`
	Limitations    NetworkLimitation      `json:"limitations,omitempty" xml:"limitations,omitempty"`
	Exclusions     ExclusionConfig        `json:"exclusions,omitempty" xml:"exclusions,omitempty"`
}

type ScriptItem added in v0.0.15

type ScriptItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type SelfServiceBrandingDetail added in v0.0.49

type SelfServiceBrandingDetail struct {
	ID                    string `json:"id"`
	ApplicationName       string `json:"applicationName"`
	BrandingName          string `json:"brandingName"`
	BrandingNameSecondary string `json:"brandingNameSecondary"`
	IconId                int    `json:"iconId"`
	BrandingHeaderImageId int    `json:"brandingHeaderImageId"`
}

SelfServiceBrandingDetail represents the details of a self-service branding configuration.

type SelfServiceCategory added in v0.0.11

type SelfServiceCategory struct {
	ID        int    `xml:"id,omitempty"`
	Name      string `xml:"name,omitempty"`
	DisplayIn bool   `xml:"display_in,omitempty"`
	FeatureIn bool   `xml:"feature_in,omitempty"`
}

type SelfServiceConfig added in v0.0.11

type SelfServiceConfig struct {
	InstallButtonText           string                `json:"install_button_text,omitempty" xml:"install_button_text,omitempty"`
	SelfServiceDescription      string                `json:"self_service_description,omitempty" xml:"self_service_description,omitempty"`
	ForceUsersToViewDescription bool                  `json:"force_users_to_view_description,omitempty" xml:"force_users_to_view_description,omitempty"`
	SelfServiceIcon             SelfServiceIconDetail `json:"self_service_icon,omitempty" xml:"self_service_icon,omitempty"`
	FeatureOnMainPage           bool                  `json:"feature_on_main_page,omitempty" xml:"feature_on_main_page,omitempty"`
	SelfServiceCategories       SelfServiceCategory   `json:"self_service_categories,omitempty" xml:"self_service_categories,omitempty"`
	Notification                string                `json:"notification,omitempty" xml:"notification,omitempty"`
	NotificationSubject         string                `json:"notification_subject,omitempty" xml:"notification_subject,omitempty"`
	NotificationMessage         string                `json:"notification_message,omitempty" xml:"notification_message,omitempty"`
}

type SelfServiceIcon added in v0.0.11

type SelfServiceIcon struct {
	ID       int    `xml:"id,omitempty"`
	Filename string `xml:"filename,omitempty"`
	URI      string `xml:"uri,omitempty"`
}

type SelfServiceIconDetail added in v0.0.11

type SelfServiceIconDetail struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	URI  string `json:"uri,omitempty" xml:"uri,omitempty"`
	Data string `json:"data,omitempty" xml:"data,omitempty"`
}

type Signature added in v0.0.52

type Signature struct {
	Algorithm    string `json:"algorithm"`
	AlgorithmOID string `json:"algorithmOid"`
	Value        string `json:"value"`
}

Signature represents the signature part of a certificate authority.

type Site added in v0.0.11

type Site struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type SiteInfo added in v0.0.11

type SiteInfo struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type SiteItem added in v0.0.32

type SiteItem struct {
	ID   int    `xml:"id,omitempty"`
	Name string `xml:"name,omitempty"`
}

type SitesListResponse added in v0.0.32

type SitesListResponse struct {
	Size int        `xml:"size"`
	Site []SiteItem `xml:"site"`
}

type User added in v0.0.11

type User struct {
	ID           int    `json:"id" xml:"id"`
	Username     string `json:"username,omitempty" xml:"username,omitempty"`
	FullName     string `json:"full_name,omitempty" xml:"full_name,omitempty"`
	PhoneNumber  string `json:"phone_number,omitempty" xml:"phone_number,omitempty"`
	EmailAddress string `json:"email_address,omitempty" xml:"email_address,omitempty"`
}

type UserAssignment added in v0.0.11

type UserAssignment struct {
	User UserInfo `json:"user,omitempty" xml:"user,omitempty"`
}

type UserGroupAssignment added in v0.0.11

type UserGroupAssignment struct {
	UserGroup GroupAssignmentDataSubsetGroupDetail `json:"user_group,omitempty" xml:"user_group,omitempty"`
}

type UserGroupCriteria added in v0.0.11

type UserGroupCriteria struct {
	Size      int                `json:"size" xml:"size"`
	Criterion UserGroupCriterion `json:"criterion" xml:"criterion"`
}

type UserGroupCriterion added in v0.0.11

type UserGroupCriterion struct {
	Name         string `json:"name" xml:"name"`
	Priority     int    `json:"priority,omitempty" xml:"priority,omitempty"`
	AndOr        string `json:"and_or,omitempty" xml:"and_or,omitempty"`
	SearchType   string `json:"search_type,omitempty" xml:"search_type,omitempty"`
	Value        string `json:"value,omitempty" xml:"value,omitempty"`
	OpeningParen bool   `json:"opening_paren,omitempty" xml:"opening_paren,omitempty"`
	ClosingParen bool   `json:"closing_paren,omitempty" xml:"closing_paren,omitempty"`
}

type UserGroupScope added in v0.0.11

type UserGroupScope struct {
	Id   int    `xml:"id"`
	Name string `xml:"name"`
}

type UserGroupUser added in v0.0.11

type UserGroupUser struct {
	Size int  `json:"size" xml:"size"`
	User User `json:"user" xml:"user"`
}

type UserInfo added in v0.0.11

type UserInfo struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type UserListItem added in v0.0.11

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

type UserScope added in v0.0.11

type UserScope struct {
	Name string `xml:"name"`
}

type Users

type Users struct {
	User []AccountUser `json:"user,omitempty" xml:"user,omitempty"`
}

type UsersDataSubsetExtensionAttribute added in v0.0.11

type UsersDataSubsetExtensionAttribute struct {
	ExtensionAttributeItem `json:"extension_attribute" xml:"extension_attribute"`
}

type UsersDataSubsetItem added in v0.0.11

type UsersDataSubsetItem struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type UsersDataSubsetLDAPServer added in v0.0.11

type UsersDataSubsetLDAPServer struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}
type UsersDataSubsetUserLinks struct {
	Computers         ComputerLink      `json:"computers,omitempty" xml:"computers,omitempty"`
	Peripherals       PeripheralLink    `json:"peripherals,omitempty" xml:"peripherals,omitempty"`
	MobileDevices     MobileDeviceLink  `json:"mobile_devices,omitempty" xml:"mobile_devices,omitempty"`
	VPPAssignments    VPPAssignmentLink `json:"vpp_assignments,omitempty" xml:"vpp_assignments,omitempty"`
	TotalVPPCodeCount int               `json:"total_vpp_code_count,omitempty" xml:"total_vpp_code_count,omitempty"`
}

type UsersDataSubsetUserSite added in v0.0.11

type UsersDataSubsetUserSite struct {
	Site Site `json:"site,omitempty" xml:"site,omitempty"`
}
type VPPAssignmentLink struct {
	VPPAssignment UsersDataSubsetItem `json:"vpp_assignment" xml:"vpp_assignment"`
}

type VolumePurchasingSubscription added in v0.0.52

type VolumePurchasingSubscription struct {
	Id                 string   `json:"id,omitempty"`
	Name               string   `json:"name"`
	Enabled            bool     `json:"enabled,omitempty"`
	Triggers           []string `json:"triggers,omitempty"`
	LocationIds        []string `json:"locationIds,omitempty"`
	InternalRecipients []struct {
		AccountId string `json:"accountId,omitempty"`
		Frequency string `json:"frequency,omitempty"`
	} `json:"internalRecipients,omitempty"`
	ExternalRecipients []struct {
		Name  string `json:"name,omitempty"`
		Email string `json:"email,omitempty"`
	} `json:"externalRecipients,omitempty"`
	SiteId string `json:"siteId,omitempty"`
}

Jump to

Keyboard shortcuts

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