jamfpro

package
v0.0.90 Latest Latest
Warning

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

Go to latest
Published: Dec 8, 2023 License: MIT Imports: 12 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.

classicapi_vpp_assignments.go

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 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 Application added in v0.0.61

type Application struct {
	Name    string `xml:"name" json:"name"`
	Path    string `xml:"path" json:"path"`
	Version string `xml:"version" json:"version"`
}

Application represents an application installed on the computer

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 Building added in v0.0.11

type Building struct {
	ID   int    `xml:"id,omitempty"`
	Name string `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 Certificate added in v0.0.61

type Certificate struct {
	CommonName   string `xml:"common_name" json:"common_name"`
	Identity     bool   `xml:"identity" json:"identity"`
	ExpiresUtc   string `xml:"expires_utc" json:"expires_utc"`
	ExpiresEpoch int64  `xml:"expires_epoch" json:"expires_epoch"`
	Name         string `xml:"name" json:"name"`
}

Certificate represents a certificate installed on the computer

type ClassAppleTV added in v0.0.51

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

type ClassDeviceGroup added in v0.0.51

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

type ClassGroupID added in v0.0.51

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

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,omitempty"`
	StartTime int    `xml:"start_time,omitempty"`
	EndTime   int    `xml:"end_time,omitempty"`
}

type ClassMeetingTimes added in v0.0.51

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

type ClassMobileDevice added in v0.0.51

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

type ClassSite added in v0.0.51

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

type ClassStudent added in v0.0.51

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

type ClassTeacher added in v0.0.51

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

type ClassTeacherID added in v0.0.51

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

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 *ResponseBuilding) (*ResponseBuildingCreate, error)

CreateBuilding creates a new building in Jamf Pro

func (*Client) CreateBuildingResourceHistoryByID added in v0.0.79

func (c *Client) CreateBuildingResourceHistoryByID(id string, historyUpdate *ResponseBuildingResourceHistory) (*ResponseBuildingResourceHistory, error)

CreateBuildingResourceHistoryByID updates the resource history of a building in Jamf Pro by its ID.

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) CreateCloudIdentityProvider added in v0.0.80

func (c *Client) CreateCloudIdentityProvider(cloudIdPData *ResponseCloudIDP) (*ResponseCloudIDPCreate, error)

CreateCloudIdentityProvider creates a new Cloud Identity Provider.

func (*Client) CreateComputer added in v0.0.61

func (c *Client) CreateComputer(computer ResponseComputer) (*ResponseComputer, error)

CreateComputer creates a new computer.

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) CreateComputerInvitation added in v0.0.56

func (c *Client) CreateComputerInvitation(invitation *ResponseComputerInvitation) (*ResponseComputerInvitation, error)

CreateComputerInvitation creates a new computer invitation.

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) CreateDirectoryBinding added in v0.0.59

func (c *Client) CreateDirectoryBinding(binding *ResponseDirectoryBinding) (*ResponseDirectoryBinding, error)

CreateDirectoryBinding creates a new directory binding.

func (*Client) CreateDiskEncryptionConfiguration added in v0.0.57

func (c *Client) CreateDiskEncryptionConfiguration(config *DiskEncryptionConfiguration) (*ResponseDiskEncryptionConfiguration, error)

CreateDiskEncryptionConfiguration creates a new disk encryption configuration.

func (*Client) CreateDistributionPoint added in v0.0.58

func (c *Client) CreateDistributionPoint(dp *ResponseDistributionPoint) (*ResponseDistributionPoint, error)

CreateDistributionPoint creates a new distribution point.

func (*Client) CreateDockItems added in v0.0.62

func (c *Client) CreateDockItems(dockItem *ResponseDockItem) (*ResponseDockItem, error)

CreateDockItems creates a new dock item.

func (*Client) CreateEbook added in v0.0.63

func (c *Client) CreateEbook(ebook ResponseEbooks) (*ResponseEbooks, error)

CreateEbook creates a new ebook.

func (*Client) CreateFileAttachments added in v0.0.80

func (c *Client) CreateFileAttachments(resource, idType, id string, files map[string]string) (*http.Response, error)

CreateFileAttachments uploads file attachments to a specific resource in Jamf Pro. The function assumes that the file paths are provided as a map where the keys are the form field names.

func (*Client) CreateIBeacon added in v0.0.66

func (c *Client) CreateIBeacon(beacon *ResponseIBeacons) (*ResponseIBeacons, error)

CreateIBeacon creates a new iBeacon in Jamf Pro.

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) CreateLDAPServer added in v0.0.67

func (c *Client) CreateLDAPServer(ldapServer *ResponseLDAPServers) (*ResponseLDAPServers, error)

CreateLDAPServer creates a new LDAP server in Jamf Pro.

func (*Client) CreateLicensedSoftware added in v0.0.68

func (c *Client) CreateLicensedSoftware(licensedSoftware *ResponseLicensedSoftware) (*ResponseLicensedSoftware, error)

CreateLicensedSoftware creates a new licensed software item in Jamf Pro.

func (*Client) CreateMacApplication added in v0.0.64

func (c *Client) CreateMacApplication(macApp ResponseMacApplications) (*ResponseMacApplications, error)

CreateMacApplication creates a new Mac Application.

func (*Client) CreateMacOSConfigurationProfile added in v0.0.11

func (c *Client) CreateMacOSConfigurationProfile(profile *ResponseMacOSConfigurationProfiles) (int, error)

CreateMacOSConfigurationProfile creates a new macOS Configuration Profile on the Jamf Pro server and returns the profile with its ID updated. It sends a POST request to the Jamf Pro server with the profile details and expects a response with the ID of the newly created profile. CreateMacOSConfigurationProfile creates a new macOS Configuration Profile on the Jamf Pro server and returns the ID of the newly created profile.

func (*Client) CreateMobileDevice added in v0.0.83

func (c *Client) CreateMobileDevice(attribute *ResponseMobileDevice) (*ResponseMobileDevice, error)

CreateMobileDevice creates a new mobile device device.

func (*Client) CreateMobileDeviceApplication added in v0.0.69

func (c *Client) CreateMobileDeviceApplication(app *ResponseMobileDeviceApplication) (*ResponseMobileDeviceApplication, error)

CreateMobileDeviceApplication creates a new mobile device application on the Jamf Pro server.

func (*Client) CreateMobileDeviceConfigurationProfile added in v0.0.72

func (c *Client) CreateMobileDeviceConfigurationProfile(profile *ResponseMobileDeviceConfigurationProfile) (*ResponseMobileDeviceConfigurationProfile, error)

CreateMobileDeviceConfigurationProfile creates a new mobile device configuration profile on the Jamf Pro server.

func (*Client) CreateMobileDeviceEnrollmentProfile added in v0.0.72

func (c *Client) CreateMobileDeviceEnrollmentProfile(profile *ResponseMobileDeviceEnrollmentProfile) (*ResponseMobileDeviceEnrollmentProfile, error)

CreateMobileDeviceEnrollmentProfile creates a new mobile device enrollment profile on the Jamf Pro server.

func (*Client) CreateMobileDeviceGroup added in v0.0.75

func (c *Client) CreateMobileDeviceGroup(group *ResponseMobileDeviceGroup) (*ResponseMobileDeviceGroup, error)

CreateMobileDeviceGroup creates a new mobile device group on the Jamf Pro server.

func (*Client) CreateMobileDeviceProvisioningProfileByID added in v0.0.76

func (c *Client) CreateMobileDeviceProvisioningProfileByID(id int, profile *ResponseMobileDeviceProvisioningProfile) (*ResponseMobileDeviceProvisioningProfile, error)

CreateMobileDeviceProvisioningProfileByID creates a new mobile device provisioning profile by its ID.

func (*Client) CreateMobileDeviceProvisioningProfileByName added in v0.0.76

func (c *Client) CreateMobileDeviceProvisioningProfileByName(name string, profile *ResponseMobileDeviceProvisioningProfile) (*ResponseMobileDeviceProvisioningProfile, error)

CreateMobileDeviceProvisioningProfileByName creates a new mobile device provisioning profile by its name.

func (*Client) CreateMobileDeviceProvisioningProfileByUUID added in v0.0.76

func (c *Client) CreateMobileDeviceProvisioningProfileByUUID(uuid string, profile *ResponseMobileDeviceProvisioningProfile) (*ResponseMobileDeviceProvisioningProfile, error)

CreateMobileDeviceProvisioningProfileByUUID creates a new mobile device provisioning profile by its UUID.

func (*Client) CreateMobileExtensionAttribute added in v0.0.72

func (c *Client) CreateMobileExtensionAttribute(attribute *ResponseMobileExtensionAttributes) (*ResponseMobileExtensionAttributes, error)

CreateMobileExtensionAttribute creates a new mobile device extension attribute.

func (*Client) CreateNetworkSegment added in v0.0.74

func (c *Client) CreateNetworkSegment(segment *ResponseNetworkSegment) (*ResponseNetworkSegment, error)

CreateNetworkSegment creates a new network segment on the Jamf Pro server.

func (*Client) CreatePatchPolicy added in v0.0.84

func (c *Client) CreatePatchPolicy(policy *ResponsePatchPolicies, softwareTitleConfigID int) (*ResponsePatchPolicies, error)

CreatePatchPolicy creates a new patch policy.

func (*Client) CreatePolicyByID added in v0.0.45

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

CreatePolicy creates a new policy.

func (*Client) CreatePrinters added in v0.0.73

func (c *Client) CreatePrinters(printer *ResponsePrinters) (*ResponsePrinters, error)

CreatePrinters creates a new printer on the Jamf Pro server.

func (*Client) CreateRemovableMACAddress added in v0.0.86

func (c *Client) CreateRemovableMACAddress(macAddress *RemovableMacAddress) (*RemovableMacAddress, error)

CreateRemovableMACAddress creates a new removable MAC address.

func (*Client) CreateRestrictedSoftware added in v0.0.86

func (c *Client) CreateRestrictedSoftware(restrictedSoftware *ResponseRestrictedSoftware) (*ResponseRestrictedSoftware, error)

CreateRestrictedSoftware creates a new restricted software entry in Jamf Pro.

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) CreateSoftwareUpdateServer added in v0.0.86

func (c *Client) CreateSoftwareUpdateServer(server *ResponseSoftwareUpdateServer) (*ResponseSoftwareUpdateServer, error)

CreateSoftwareUpdateServer creates a new software update server.

func (*Client) CreateUser added in v0.0.81

func (c *Client) CreateUser(newUser *ResponseUser) (*ResponseUser, error)

CreateUser creates a new user.

func (*Client) CreateUserExtensionAttribute added in v0.0.83

func (c *Client) CreateUserExtensionAttribute(attribute *ResponseUserExtensionAttribute) (*ResponseUserExtensionAttribute, error)

CreateUserExtensionAttribute creates a new user extension attribute.

func (*Client) CreateUserGroup added in v0.0.80

func (c *Client) CreateUserGroup(userGroup *ResponseUserGroup) (*ResponseUserGroup, error)

CreateUserGroup creates a new user group.

func (*Client) CreateVPPAccount added in v0.0.86

func (c *Client) CreateVPPAccount(account *ResponseVPPAccount) (*ResponseVPPAccount, error)

CreateVPPAccount creates a new VPP account.

func (*Client) CreateVPPAssignment added in v0.0.88

func (c *Client) CreateVPPAssignment(assignment *ResponseVPPAssignment) error

CreateVPPAssignment creates a new VPP assignment

func (*Client) CreateVolumePurchasingLocation added in v0.0.86

func (c *Client) CreateVolumePurchasingLocation(request *VolumePurchasingLocation) (*VolumePurchasingLocationCreateResponse, error)

CreateVolumePurchasingLocation creates a new volume purchasing location.

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) CreateWebhook added in v0.0.86

func (c *Client) CreateWebhook(webhook *ResponseWebhook) (*ResponseWebhook, error)

CreateWebhook creates a new webhook.

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) DeleteAttachmentByIDAndComputerID added in v0.0.84

func (c *Client) DeleteAttachmentByIDAndComputerID(computerID, attachmentID string) error

DeleteAttachmentByIDAndComputerID deletes a computer's inventory attached by computer ID and the computer's attachment ID. Multiple attachments can be assigned to a single computer resource.

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 string) error

DeleteBuildingByID deletes a building in Jamf Pro by its ID.

func (*Client) DeleteBuildingByNameByID added in v0.0.79

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

DeleteBuildingByNameByID deletes a building in Jamf Pro 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) DeleteCloudIdentityProviderById added in v0.0.80

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

DeleteCloudIdentityProviderById deletes a Cloud Identity Provider by its ID.

func (*Client) DeleteComputerByID added in v0.0.61

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

DeleteComputerByID deletes an existing Computer by its ID

func (*Client) DeleteComputerByName added in v0.0.61

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

DeleteComputerByName deletes an existing computer 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) DeleteComputerInventoryByID added in v0.0.84

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

DeleteComputerInventoryByID deletes a computer's inventory information by its ID.

func (*Client) DeleteComputerInventoryCollectionSettingsCustomPathByID added in v0.0.53

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

DeleteComputerInventoryCollectionSettingsCustomPathByID deletes a custom path by ID.

func (*Client) DeleteComputerInvitationByID added in v0.0.56

func (c *Client) DeleteComputerInvitationByID(invitationID int) error

DeleteComputerInvitationByID deletes a computer invitation by its 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) DeleteComputerPrestageByNameByID added in v0.0.78

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

DeleteComputerPrestageByNameByID 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) DeleteDirectoryBindingByID added in v0.0.59

func (c *Client) DeleteDirectoryBindingByID(bindingID int) error

DeleteDirectoryBindingByID deletes a directory binding by its ID.

func (*Client) DeleteDirectoryBindingByName added in v0.0.59

func (c *Client) DeleteDirectoryBindingByName(bindingName string) error

DeleteDirectoryBindingByName deletes a directory binding by its name.

func (*Client) DeleteDiskEncryptionConfigurationByID added in v0.0.57

func (c *Client) DeleteDiskEncryptionConfigurationByID(configID int) error

DeleteDiskEncryptionConfigurationByID deletes a disk encryption configuration by its ID.

func (*Client) DeleteDiskEncryptionConfigurationByName added in v0.0.57

func (c *Client) DeleteDiskEncryptionConfigurationByName(configName string) error

DeleteDiskEncryptionConfigurationByName deletes a disk encryption configuration by its name.

func (*Client) DeleteDistributionPointByID added in v0.0.58

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

DeleteDistributionPointByID deletes a distribution point by its ID.

func (*Client) DeleteDistributionPointByName added in v0.0.58

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

DeleteDistributionPointByName deletes a distribution point by its name.

func (*Client) DeleteDockItemsByID added in v0.0.62

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

DeleteDockItemsByID deletes a dock item by its ID.

func (*Client) DeleteDockItemsByName added in v0.0.62

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

DeleteDockItemsByName deletes a dock item by its name.

func (*Client) DeleteEbookByID added in v0.0.63

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

DeleteEbookByID deletes a ebook by its ID.

func (*Client) DeleteEbookByName added in v0.0.63

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

DeleteEbookByName deletes a ebook by its name.

func (*Client) DeleteIBeaconByID added in v0.0.66

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

DeleteIBeaconByID deletes an iBeacon by its ID in Jamf Pro.

func (*Client) DeleteIBeaconByName added in v0.0.66

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

DeleteIBeaconByName deletes an iBeacon by its name in Jamf Pro.

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) DeleteLDAPServerByID added in v0.0.67

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

DeleteLDAPServerByID deletes an LDAP server identified by its ID.

func (*Client) DeleteLDAPServerByName added in v0.0.67

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

DeleteLDAPServerByName deletes an LDAP server identified by its name.

func (*Client) DeleteLicensedSoftwareByID added in v0.0.68

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

DeleteLicensedSoftwareByID deletes a licensed software item by its ID.

func (*Client) DeleteLicensedSoftwareByName added in v0.0.68

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

DeleteLicensedSoftwareByName deletes a licensed software item by its name.

func (*Client) DeleteMacApplicationByID added in v0.0.64

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

DeleteMacApplicationByID deletes a MacApplication by its ID.

func (*Client) DeleteMacApplicationByName added in v0.0.64

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

DeleteMacApplicationByName deletes a MacApplication by its name.

func (*Client) DeleteMacOSConfigurationProfileByID added in v0.0.11

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

DeleteMacOSConfigurationProfileByID deletes a macOS Configuration Profile by its ID from the Jamf Pro server.

func (*Client) DeleteMacOSConfigurationProfileByName added in v0.0.11

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

DeleteMacOSConfigurationProfileByName deletes a macOS Configuration Profile by its name from the Jamf Pro server.

func (*Client) DeleteMobileDeviceApplicationByBundleID added in v0.0.69

func (c *Client) DeleteMobileDeviceApplicationByBundleID(bundleID string) error

DeleteMobileDeviceApplicationByBundleID deletes a mobile device application by its bundle ID from the Jamf Pro server.

func (*Client) DeleteMobileDeviceApplicationByBundleIDAndVersion added in v0.0.69

func (c *Client) DeleteMobileDeviceApplicationByBundleIDAndVersion(bundleID string, version string) error

DeleteMobileDeviceApplicationByBundleIDAndVersion deletes a mobile device application by its bundle ID and version from the Jamf Pro server.

func (*Client) DeleteMobileDeviceApplicationByName added in v0.0.69

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

DeleteMobileDeviceApplicationByName deletes a mobile device application by its name from the Jamf Pro server.

func (*Client) DeleteMobileDeviceApplicationpByID added in v0.0.69

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

DeleteMobileDeviceApplicationpByID deletes a mobile device application by its ID from the Jamf Pro server.

func (*Client) DeleteMobileDeviceByID added in v0.0.83

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

DeleteMobileDeviceByID deletes a mobile device by its ID.

func (*Client) DeleteMobileDeviceByName added in v0.0.83

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

DeleteMobileDeviceByName deletes a mobile device by its name.

func (*Client) DeleteMobileDeviceConfigurationProfileByID added in v0.0.72

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

DeleteMobileDeviceConfigurationProfileByID deletes a mobile device configuration profile by its ID from the Jamf Pro server.

func (*Client) DeleteMobileDeviceConfigurationProfileByName added in v0.0.72

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

DeleteMobileDeviceConfigurationProfileByName deletes a mobile device configuration profile by its name from the Jamf Pro server.

func (*Client) DeleteMobileDeviceEnrollmentProfileByID added in v0.0.72

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

DeleteMobileDeviceEnrollmentProfileByID deletes a mobile device enrollment profile by its ID.

func (*Client) DeleteMobileDeviceEnrollmentProfileByInvitation added in v0.0.72

func (c *Client) DeleteMobileDeviceEnrollmentProfileByInvitation(invitation string) error

DeleteMobileDeviceEnrollmentProfileByInvitation deletes a mobile device enrollment profile by its invitation.

func (*Client) DeleteMobileDeviceEnrollmentProfileByName added in v0.0.72

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

DeleteMobileDeviceEnrollmentProfileByName deletes a mobile device enrollment profile by its name.

func (*Client) DeleteMobileDeviceGroupByID added in v0.0.75

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

DeleteMobileDeviceGroupByID deletes a mobile device group by its ID.

func (*Client) DeleteMobileDeviceGroupByName added in v0.0.75

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

DeleteMobileDeviceGroupByName deletes a mobile device group by its name.

func (*Client) DeleteMobileDeviceProvisioningProfileByID added in v0.0.76

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

DeleteMobileDeviceProvisioningProfileByID deletes a mobile device provisioning profile by ID

func (*Client) DeleteMobileDeviceProvisioningProfileByName added in v0.0.76

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

DeleteMobileDeviceProvisioningProfileByName deletes a mobile device provisioning profile by Name

func (*Client) DeleteMobileDeviceProvisioningProfileByUUID added in v0.0.76

func (c *Client) DeleteMobileDeviceProvisioningProfileByUUID(uuid string) error

DeleteMobileDeviceProvisioningProfileByUUID deletes a mobile device provisioning profile by UUID

func (*Client) DeleteMobileExtensionAttributeByID added in v0.0.72

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

DeleteMobileExtensionAttributeByID deletes a mobile extension attribute by its ID.

func (*Client) DeleteMobileExtensionAttributeByName added in v0.0.72

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

DeleteMobileExtensionAttributeByName deletes a mobile extension attribute by its name.

func (*Client) DeleteMultipleBuildingsByID added in v0.0.79

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

DeleteMultipleBuildingsByID deletes multiple buildings in Jamf Pro by their IDs.

func (*Client) DeleteMultipleCategoriesByID added in v0.0.45

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

DeleteMultipleCategoriesByID deletes multiple categories by their IDs

func (*Client) DeleteNetworkSegmentByID added in v0.0.74

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

DeleteNetworkSegmentByID deletes a policy by its ID.

func (*Client) DeleteNetworkSegmentByName added in v0.0.74

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

DeleteNetworkSegmentByName deletes a policy by its name.

func (*Client) DeletePatchPolicyByID added in v0.0.84

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

DeletePatchPolicyByID deletes a patch policy by its ID.

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) DeletePrinterByID added in v0.0.73

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

DeletePrinterByID deletes a printer by its ID.

func (*Client) DeletePrinterByName added in v0.0.73

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

DeletePrinterByName deletes a printer by its name.

func (*Client) DeleteRemovableMACAddressByID added in v0.0.86

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

DeleteRemovableMACAddressByID deletes a removable MAC address by its ID.

func (*Client) DeleteRemovableMACAddressByName added in v0.0.86

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

DeleteRemovableMACAddressByName deletes a removable MAC address by its name.

func (*Client) DeleteRestrictedSoftwareByID added in v0.0.86

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

DeleteRestrictedSoftwareByID deletes a restricted software entry by its ID.

func (*Client) DeleteRestrictedSoftwareByName added in v0.0.86

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

DeleteRestrictedSoftwareByName deletes a restricted software entry 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) DeleteSoftwareUpdateServerByID added in v0.0.86

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

DeleteSoftwareUpdateServerByID deletes a software update server by its ID.

func (*Client) DeleteSoftwareUpdateServerByName added in v0.0.86

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

DeleteSoftwareUpdateServerByName deletes a software update server by its name.

func (*Client) DeleteUserByEmail added in v0.0.81

func (c *Client) DeleteUserByEmail(email string) error

DeleteUserByEmail deletes a user by their email.

func (*Client) DeleteUserByID added in v0.0.81

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

DeleteUserByID deletes a user by their ID.

func (*Client) DeleteUserByName added in v0.0.81

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

DeleteUserByName deletes a user by their name.

func (*Client) DeleteUserExtensionAttributeByID added in v0.0.83

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

DeleteUserExtensionAttributeByID deletes a user extension attribute by its ID.

func (*Client) DeleteUserExtensionAttributeByName added in v0.0.83

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

DeleteUserExtensionAttributeByName deletes a user extension attribute by its name.

func (*Client) DeleteUserGroupByID added in v0.0.80

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

DeleteUserGroupByID deletes a user group by its ID.

func (*Client) DeleteUserGroupByName added in v0.0.80

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

DeleteUserGroupByName deletes a user group by its name.

func (*Client) DeleteVPPAccountByID added in v0.0.86

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

DeleteVPPAccountByID deletes a specific VPP account by its ID.

func (*Client) DeleteVPPAssignmentByID added in v0.0.88

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

DeleteVPPAssignmentByID deletes a VPP assignment by its ID

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) DeleteWebhookByID added in v0.0.86

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

DeleteWebhookByID deletes a specific webhook by its ID.

func (*Client) DeleteWebhookByName added in v0.0.86

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

DeleteWebhookByName deletes a specific webhook by its name.

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() (*ResponseAdvancedComputerSearchesList, 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) (*ResponseBuilding, error)

GetBuildingByID retrieves a single building information by its ID.

func (*Client) GetBuildingByNameByID added in v0.0.79

func (c *Client) GetBuildingByNameByID(name string) (*ResponseBuilding, error)

GetBuildingByNameByID retrieves a single building information by its name using GetBuildingByID.

func (*Client) GetBuildingResourceHistoryByID added in v0.0.79

func (c *Client) GetBuildingResourceHistoryByID(id string) (*ResponseBuildingResourceHistoryList, error)

GetBuildingResourceHistoryByID retrieves the resource history of a specific building by its ID.

func (*Client) GetBuildings added in v0.0.9

func (c *Client) GetBuildings(sort []string) (*ResponseBuildingsList, error)

GetBuildings retrieves all building information with optional sorting.

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(sort, filter string) (*ResponseCategoriesList, error)

GetCategories retrieves all categories from the Jamf Pro API, handling pagination automatically. This function makes multiple API calls to fetch each page of category data and aggregates the results. It uses a loop to iterate through all available pages of categories. The default response contains information for 100 resources, this function is set to the maximum number of 2000. Parameters: - sort: A string specifying the sorting order of the returned categories. - filter: A string to filter the categories based on certain criteria.

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) GetCloudIdentityProviderByID added in v0.0.80

func (c *Client) GetCloudIdentityProviderByID(id string) (*ResponseCloudIDP, error)

GetCloudIdentityProviderByID retrieves Cloud Identity Provider information.

func (*Client) GetCloudIdentityProviderDefaultServerMappings added in v0.0.80

func (c *Client) GetCloudIdentityProviderDefaultServerMappings() (*CloudIdPServerMappings, error)

GetCloudIdentityProviderDefaultServerMappings retrieves the default mappings for the Cloud Identity Provider.

func (*Client) GetComputerByID added in v0.0.61

func (c *Client) GetComputerByID(id int) (*ResponseComputer, error)

GetComputerByID retrieves the computer details by its ID.

func (*Client) GetComputerByName added in v0.0.61

func (c *Client) GetComputerByName(name string) (*ResponseComputer, error)

GetComputerByName retrieves the computer by its name

func (*Client) GetComputerCheckinInformation added in v0.0.88

func (c *Client) GetComputerCheckinInformation() (*ResponseComputerCheckin, error)

GetComputerCheckinInformation gets the jamf pro computer check-in settings

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) GetComputerFileVaultInventoryByID added in v0.0.84

func (c *Client) GetComputerFileVaultInventoryByID(id string) (*FileVaultInventory, error)

GetComputerFileVaultInventoryByID returns file vault details by the computer ID.

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() (*ResponseComputerGroupsList, error)

GetComputerGroups gets a list of all computer groups

func (*Client) GetComputerInventoryByID added in v0.0.84

func (c *Client) GetComputerInventoryByID(id string) (*ResponseComputerInventory, error)

GetComputerInventoryByID retrieves a specific computer's inventory information by its ID.

func (*Client) GetComputerInventoryByName added in v0.0.89

func (c *Client) GetComputerInventoryByName(name string) (*ResponseComputerInventory, error)

GetComputerInventoryByName retrieves a specific computer's inventory information by its name.

func (*Client) GetComputerInventoryCollectionSettings added in v0.0.53

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

func (*Client) GetComputerInvitationByID added in v0.0.56

func (c *Client) GetComputerInvitationByID(invitationID int) (*ResponseComputerInvitation, error)

GetComputerInvitationByID retrieves a computer invitation by its ID.

func (*Client) GetComputerInvitations added in v0.0.56

func (c *Client) GetComputerInvitations() (*ResponseComputerInvitationsList, error)

GetComputerInvitations retrieves a list of all computer invitations.

func (*Client) GetComputerInvitationsByInvitationID added in v0.0.56

func (c *Client) GetComputerInvitationsByInvitationID(invitationID int) (*ResponseComputerInvitation, error)

GetComputerInvitationsByName retrieves a computer invitation by its invitation Name.

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(sort []string) (*ResponseComputerPrestagesV3, error)

GetComputerPrestagesV3 retrieves all computer prestage information with optional sorting.

func (*Client) GetComputerRecoveryLockPasswordByID added in v0.0.84

func (c *Client) GetComputerRecoveryLockPasswordByID(id string) (*ResponseRecoveryLockPassword, error)

GetComputerRecoveryLockPasswordByID returns a computer recover lock password by the computer ID.

func (*Client) GetComputers added in v0.0.61

func (c *Client) GetComputers() (*ResponseComputersList, error)

GetComputers retrieves all computers

func (*Client) GetComputersFileVaultInventory added in v0.0.84

func (c *Client) GetComputersFileVaultInventory() (*FileVaultInventoryList, error)

GetComputersFileVaultInventory retrieves all computer inventory filevault information.

func (*Client) GetComputersInventory added in v0.0.84

func (c *Client) GetComputersInventory(sort []string, sections []string) (*ResponseComputerInventoryList, error)

GetComputersInventory retrieves all computer inventory information with optional sorting and section filters.

func (*Client) GetDefaultCloudIdentityProvider added in v0.0.80

func (c *Client) GetDefaultCloudIdentityProvider() (*CloudIdPServer, error)

GetDefaultCloudIdentityProvider retrieves the default server configuration for the Cloud Identity Provider.

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) GetDeviceEnrollments added in v0.0.77

func (c *Client) GetDeviceEnrollments(sort []string) (*ResponseDeviceEnrollmentList, error)

GetDeviceEnrollments retrieves a paginated list of device enrollments.

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) GetDirectoryBindingByID added in v0.0.59

func (c *Client) GetDirectoryBindingByID(bindingID int) (*ResponseDirectoryBinding, error)

GetDirectoryBindingByID retrieves a single directory binding by its ID.

func (*Client) GetDirectoryBindingByName added in v0.0.59

func (c *Client) GetDirectoryBindingByName(bindingName string) (*ResponseDirectoryBinding, error)

GetDirectoryBindingByName retrieves a single directory binding by its name.

func (*Client) GetDirectoryBindings added in v0.0.59

func (c *Client) GetDirectoryBindings() (*ResponseDirectoryBindingsList, error)

GetDirectoryBindings retrieves a serialized list of directory bindings.

func (*Client) GetDiskEncryptionConfigurationByID added in v0.0.57

func (c *Client) GetDiskEncryptionConfigurationByID(configID int) (*ResponseDiskEncryptionConfiguration, error)

GetDiskEncryptionConfigurationByID retrieves a single disk encryption configuration by its ID.

func (*Client) GetDiskEncryptionConfigurationByName added in v0.0.57

func (c *Client) GetDiskEncryptionConfigurationByName(configName string) (*ResponseDiskEncryptionConfiguration, error)

GetDiskEncryptionConfigurationByName retrieves a disk encryption configuration by its name.

func (*Client) GetDiskEncryptionConfigurations added in v0.0.57

func (c *Client) GetDiskEncryptionConfigurations() (*ResponseDiskEncryptionConfigurationsList, error)

GetDiskEncryptionConfigurations retrieves a serialized list of disk encryption configurations.

func (*Client) GetDistributionPointByID added in v0.0.58

func (c *Client) GetDistributionPointByID(id int) (*ResponseDistributionPoint, error)

GetDistributionPointByID retrieves a single distribution point by its ID.

func (*Client) GetDistributionPointByName added in v0.0.58

func (c *Client) GetDistributionPointByName(name string) (*ResponseDistributionPoint, error)

GetDistributionPointByName retrieves a single distribution point by its name.

func (*Client) GetDistributionPoints added in v0.0.58

func (c *Client) GetDistributionPoints() (*ResponseDistributionPointsList, error)

GetDistributionPoints retrieves a serialized list of distribution points.

func (*Client) GetDockItems added in v0.0.62

func (c *Client) GetDockItems() (*ResponseDockItemsList, error)

GetDockItems retrieves a serialized list of dock items.

func (*Client) GetDockItemsByID added in v0.0.62

func (c *Client) GetDockItemsByID(id int) (*ResponseDockItem, error)

GetDockItemsByID retrieves a single dock item by its ID.

func (*Client) GetDockItemsByName added in v0.0.62

func (c *Client) GetDockItemsByName(name string) (*ResponseDockItem, error)

GetDockItemsByName retrieves a single dock item by its name.

func (*Client) GetEbooks added in v0.0.63

func (c *Client) GetEbooks() (*ResponseEbooksList, error)

GetEbooks retrieves a serialized list of ebooks.

func (*Client) GetEbooksByID added in v0.0.63

func (c *Client) GetEbooksByID(id int) (*ResponseEbooks, error)

GetEbooksByID retrieves a single ebook by its ID.

func (*Client) GetEbooksByName added in v0.0.63

func (c *Client) GetEbooksByName(name string) (*ResponseEbooks, error)

GetEbooksByName retrieves a single ebook by its name.

func (*Client) GetEbooksByNameAndDataSubset added in v0.0.63

func (c *Client) GetEbooksByNameAndDataSubset(name, subset string) (*ResponseEbooks, error)

GetEbooksByNameAndDataSubset retrieves a specific subset of an ebook by its name.

func (*Client) GetGSXConnectionInformation added in v0.0.88

func (c *Client) GetGSXConnectionInformation() (*ResponseGSXConnection, error)

GetGSXConnectionInformation gets the GSX connection settings

func (*Client) GetIBeaconByID added in v0.0.66

func (c *Client) GetIBeaconByID(id int) (*ResponseIBeacons, error)

GetIBeaconByID fetches the details of a specific iBeacon by its ID. It returns the iBeacon's ID, name, UUID, major, and minor values.

func (*Client) GetIBeaconByName added in v0.0.66

func (c *Client) GetIBeaconByName(name string) (*ResponseIBeacons, error)

GetIBeaconByName fetches the details of a specific iBeacon by its name. It returns the iBeacon's ID, name, UUID, major, and minor values.

func (*Client) GetIBeacons added in v0.0.66

func (c *Client) GetIBeacons() (*ResponseIBeaconsList, error)

GetIBeacons retrieves a list of all iBeacons registered in Jamf Pro. It returns a serialized list of iBeacon details including ID, name, UUID, major, and minor values.

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) GetLDAPServerByID added in v0.0.67

func (c *Client) GetLDAPServerByID(id int) (*ResponseLDAPServers, error)

GetLDAPServerByID retrieves the details of a specific LDAP server by its ID.

func (*Client) GetLDAPServerByIDAndGroupDataSubset added in v0.0.67

func (c *Client) GetLDAPServerByIDAndGroupDataSubset(id int, group string) (*ResponseLDAPServers, error)

GetLDAPServerByIDAndGroupDataSubset retrieves information about matching groups for a specific LDAP server by its ID.

func (*Client) GetLDAPServerByIDAndUserDataSubset added in v0.0.67

func (c *Client) GetLDAPServerByIDAndUserDataSubset(id int, user string) (*ResponseLDAPServers, error)

GetLDAPServerByIDAndUserDataSubset retrieves information about matching users for a specific LDAP server by its ID.

func (*Client) GetLDAPServerByIDAndUserMembershipInGroupDataSubset added in v0.0.67

func (c *Client) GetLDAPServerByIDAndUserMembershipInGroupDataSubset(id int, group, user string) (*ResponseLDAPServers, error)

GetLDAPServerByIDAndUserMembershipInGroupDataSubset retrieves information about user membership in a group for an LDAP server specified by its ID.

func (*Client) GetLDAPServerByName added in v0.0.67

func (c *Client) GetLDAPServerByName(name string) (*ResponseLDAPServers, error)

GetLDAPServerByName retrieves the details of a specific LDAP server by its name.

func (*Client) GetLDAPServerByNameAndGroupDataSubset added in v0.0.67

func (c *Client) GetLDAPServerByNameAndGroupDataSubset(name, group string) (*ResponseLDAPServers, error)

GetLDAPServerByNameAndGroupDataSubset retrieves information about groups for a specific LDAP server specified by its name.

func (*Client) GetLDAPServerByNameAndUserDataSubset added in v0.0.67

func (c *Client) GetLDAPServerByNameAndUserDataSubset(name, user string) (*ResponseLDAPServers, error)

GetLDAPServerByNameAndUserDataSubset retrieves information about matching users for a specific LDAP server specified by its name.

func (*Client) GetLDAPServerByNameAndUserMembershipInGroupDataSubset added in v0.0.67

func (c *Client) GetLDAPServerByNameAndUserMembershipInGroupDataSubset(name, group, user string) (*ResponseLDAPServers, error)

GetLDAPServerByNameAndUserMembershipInGroupDataSubset retrieves information about user membership in a group for a specific LDAP server by its name.

func (*Client) GetLDAPServers added in v0.0.67

func (c *Client) GetLDAPServers() (*ResponseLDAPServersList, error)

GetLDAPServers retrieves a serialized list of LDAP servers.

func (*Client) GetLicensedSoftware added in v0.0.68

func (c *Client) GetLicensedSoftware() (*ResponseLicensedSoftwareList, error)

GetLicensedSoftware retrieves a serialized list of licensed software.

func (*Client) GetLicensedSoftwareByID added in v0.0.68

func (c *Client) GetLicensedSoftwareByID(id int) (*ResponseLicensedSoftware, error)

GetLicensedSoftwareByID retrieves details of a specific licensed software by its ID.

func (*Client) GetLicensedSoftwareByName added in v0.0.68

func (c *Client) GetLicensedSoftwareByName(name string) (*ResponseLicensedSoftware, error)

GetLicensedSoftwareByName retrieves details of a specific licensed software by its name.

func (*Client) GetMacApplicationByID added in v0.0.64

func (c *Client) GetMacApplicationByID(id int) (*ResponseMacApplications, error)

GetMacApplicationByID retrieves a single Mac application by its ID.

func (*Client) GetMacApplicationByIDAndDataSubset added in v0.0.64

func (c *Client) GetMacApplicationByIDAndDataSubset(id int, subset string) (*ResponseMacApplications, error)

GetMacApplicationByNameAndDataSubset retrieves a specific Mac Application by its ID and filters by a specific data subset. Subset values can be General, Scope, SelfService, VPPCodes and VPP.

func (*Client) GetMacApplicationByName added in v0.0.64

func (c *Client) GetMacApplicationByName(name string) (*ResponseMacApplications, error)

GetMacApplicationByName retrieves a single Mac application by its name.

func (*Client) GetMacApplicationByNameAndDataSubset added in v0.0.64

func (c *Client) GetMacApplicationByNameAndDataSubset(name, subset string) (*ResponseMacApplications, error)

GetMacApplicationByNameAndDataSubset retrieves a specific Mac Application by its name and filters by a specific data subset. Subset values can be General, Scope, SelfService, VPPCodes and VPP.

func (*Client) GetMacApplications added in v0.0.64

func (c *Client) GetMacApplications() (*ResponseMacApplicationsList, error)

GetDockItems retrieves a serialized list of vpp mac applications.

func (*Client) GetMacOSConfigurationProfileByID added in v0.0.11

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

GetMacOSConfigurationProfileByID fetches a specific macOS Configuration Profile by its ID from the Jamf Pro server.

func (*Client) GetMacOSConfigurationProfileByName added in v0.0.11

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

GetMacOSConfigurationProfileByName fetches a specific macOS Configuration Profile by its name from the Jamf Pro server.

func (*Client) GetMacOSConfigurationProfileByNameByID added in v0.0.78

func (c *Client) GetMacOSConfigurationProfileByNameByID(name string) (*ResponseMacOSConfigurationProfiles, error)

GetMacOSConfigurationProfileByNameByID retrieves the details of a macOS Configuration Profile by its name.

func (*Client) GetMacOSConfigurationProfiles added in v0.0.11

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

GetMacOSConfigurationProfiles fetches a list of all macOS Configuration Profiles from the Jamf Pro server.

func (*Client) GetMobileDeviceApplicationByAppBundleID added in v0.0.69

func (c *Client) GetMobileDeviceApplicationByAppBundleID(bundleID string) (*ResponseMobileDeviceApplication, error)

GetMobileDeviceApplicationByAppBundleID fetches a specific mobile device application by its bundle ID from the Jamf Pro server.

func (*Client) GetMobileDeviceApplicationByAppBundleIDAndVersion added in v0.0.69

func (c *Client) GetMobileDeviceApplicationByAppBundleIDAndVersion(bundleID string, version string) (*ResponseMobileDeviceApplication, error)

GetMobileDeviceApplicationByAppBundleIDAndVersion fetches a specific mobile device application by its bundle ID and version from the Jamf Pro server.

func (*Client) GetMobileDeviceApplicationByID added in v0.0.69

func (c *Client) GetMobileDeviceApplicationByID(id int) (*ResponseMobileDeviceApplication, error)

GetMobileDeviceApplicationByID fetches a specific mobile device application by its ID from the Jamf Pro server.

func (*Client) GetMobileDeviceApplicationByIDAndDataSubset added in v0.0.69

func (c *Client) GetMobileDeviceApplicationByIDAndDataSubset(id int, subset string) (*ResponseMobileDeviceApplication, error)

GetMobileDeviceApplicationByIDAndDataSubset fetches a specific mobile device application by its ID and a specified data subset from the Jamf Pro server.

func (*Client) GetMobileDeviceApplicationByName added in v0.0.69

func (c *Client) GetMobileDeviceApplicationByName(name string) (*ResponseMobileDeviceApplication, error)

GetMobileDeviceApplicationByName fetches a specific mobile device application by its name from the Jamf Pro server.

func (*Client) GetMobileDeviceApplicationByNameAndDataSubset added in v0.0.69

func (c *Client) GetMobileDeviceApplicationByNameAndDataSubset(name string, subset string) (*ResponseMobileDeviceApplication, error)

GetMobileDeviceApplicationByNameAndDataSubset fetches a specific mobile device application by its name and a specified data subset from the Jamf Pro server.

func (*Client) GetMobileDeviceApplications added in v0.0.69

func (c *Client) GetMobileDeviceApplications() (*ResponseMobileDeviceApplicationsList, error)

GetMobileDeviceApplications retrieves a serialized list of mobile device applications.

func (*Client) GetMobileDeviceByID added in v0.0.83

func (c *Client) GetMobileDeviceByID(id int) (*ResponseMobileDevice, error)

GetMobileDeviceByID retrieves a specific mobile device by its ID.

func (*Client) GetMobileDeviceByIDAndDataSubset added in v0.0.83

func (c *Client) GetMobileDeviceByIDAndDataSubset(id int, subset string) (*ResponseMobileDevice, error)

GetMobileDeviceByIDAndDataSubset retrieves a specific subset of data for a mobile device by its ID.

func (*Client) GetMobileDeviceByName added in v0.0.83

func (c *Client) GetMobileDeviceByName(name string) (*ResponseMobileDevice, error)

GetMobileDeviceByName retrieves a specific mobile device by its name.

func (*Client) GetMobileDeviceByNameAndDataSubset added in v0.0.83

func (c *Client) GetMobileDeviceByNameAndDataSubset(name, subset string) (*ResponseMobileDevice, error)

GetMobileDeviceByNameAndDataSubset retrieves a specific subset of data for a mobile device by its name.

func (*Client) GetMobileDeviceConfigurationProfileByID added in v0.0.72

func (c *Client) GetMobileDeviceConfigurationProfileByID(id int) (*ResponseMobileDeviceConfigurationProfile, error)

GetMobileDeviceConfigurationProfileByID fetches a specific mobile device configuration profile by its ID.

func (*Client) GetMobileDeviceConfigurationProfileByIDBySubset added in v0.0.72

func (c *Client) GetMobileDeviceConfigurationProfileByIDBySubset(id int, subset string) (*ResponseMobileDeviceConfigurationProfile, error)

GetMobileDeviceConfigurationProfileByIDBySubset fetches a specific mobile device configuration profile by its ID and a specified subset.

func (*Client) GetMobileDeviceConfigurationProfileByName added in v0.0.72

func (c *Client) GetMobileDeviceConfigurationProfileByName(name string) (*ResponseMobileDeviceConfigurationProfile, error)

GetMobileDeviceConfigurationProfileByName fetches a specific mobile device configuration profile by its name.

func (*Client) GetMobileDeviceConfigurationProfileByNameBySubset added in v0.0.72

func (c *Client) GetMobileDeviceConfigurationProfileByNameBySubset(name string, subset string) (*ResponseMobileDeviceConfigurationProfile, error)

GetMobileDeviceConfigurationProfileByNameBySubset fetches a specific mobile device configuration profile by its name and a specified subset.

func (*Client) GetMobileDeviceConfigurationProfiles added in v0.0.72

func (c *Client) GetMobileDeviceConfigurationProfiles() (*ResponseMobileDeviceConfigurationProfilesList, error)

GetMobileDeviceConfigurationProfiles retrieves a serialized list of mobile device configuration profiles.

func (*Client) GetMobileDeviceEnrollmentProfileByID added in v0.0.72

func (c *Client) GetMobileDeviceEnrollmentProfileByID(id int) (*ResponseMobileDeviceEnrollmentProfile, error)

GetMobileDeviceEnrollmentProfileByID fetches a specific mobile device enrollment profile by its ID.

func (*Client) GetMobileDeviceEnrollmentProfileByIDBySubset added in v0.0.72

func (c *Client) GetMobileDeviceEnrollmentProfileByIDBySubset(id int, subset string) (*ResponseMobileDeviceEnrollmentProfile, error)

GetMobileDeviceEnrollmentProfileByIDBySubset fetches a specific mobile device configuration profile by its ID and a specified subset.

func (*Client) GetMobileDeviceEnrollmentProfileByName added in v0.0.72

func (c *Client) GetMobileDeviceEnrollmentProfileByName(name string) (*ResponseMobileDeviceEnrollmentProfile, error)

GetMobileDeviceEnrollmentProfileByName fetches a specific mobile device enrollment profile by its name.

func (*Client) GetMobileDeviceEnrollmentProfileByNameBySubset added in v0.0.72

func (c *Client) GetMobileDeviceEnrollmentProfileByNameBySubset(name string, subset string) (*ResponseMobileDeviceEnrollmentProfile, error)

GetMobileDeviceEnrollmentProfileByNameBySubset fetches a specific mobile device configuration profile by its name and a specified subset.

func (*Client) GetMobileDeviceEnrollmentProfiles added in v0.0.72

func (c *Client) GetMobileDeviceEnrollmentProfiles() (*ResponseMobileDeviceEnrollmentProfilesList, error)

GetMobileDeviceEnrollmentProfiles retrieves a serialized list of mobile device enrollment profiles.

func (*Client) GetMobileDeviceGroups added in v0.0.75

func (c *Client) GetMobileDeviceGroups() (*ResponseMobileDeviceGroupsList, error)

GetMobileDeviceGroups retrieves a serialized list of mobile device groups.

func (*Client) GetMobileDeviceGroupsByID added in v0.0.75

func (c *Client) GetMobileDeviceGroupsByID(id int) (*ResponseMobileDeviceGroup, error)

GetMobileDeviceGroupsByID retrieves a single mobile device group by its ID.

func (*Client) GetMobileDeviceGroupsByName added in v0.0.75

func (c *Client) GetMobileDeviceGroupsByName(name string) (*ResponseMobileDeviceGroup, error)

GetMobileDeviceGroupsByName retrieves a single mobile device group by its name.

func (*Client) GetMobileDeviceProvisioningProfileByID added in v0.0.76

func (c *Client) GetMobileDeviceProvisioningProfileByID(id int) (*ResponseMobileDeviceProvisioningProfile, error)

GetMobileDeviceProvisioningProfileByID fetches a specific mobile device provisioning profile by its ID.

func (*Client) GetMobileDeviceProvisioningProfileByName added in v0.0.76

func (c *Client) GetMobileDeviceProvisioningProfileByName(name string) (*ResponseMobileDeviceProvisioningProfile, error)

GetMobileDeviceProvisioningProfileByName fetches a specific mobile device provisioning profile by its name.

func (*Client) GetMobileDeviceProvisioningProfileByUUID added in v0.0.76

func (c *Client) GetMobileDeviceProvisioningProfileByUUID(uuid string) (*ResponseMobileDeviceProvisioningProfile, error)

GetMobileDeviceProvisioningProfileByUUID fetches a specific mobile device provisioning profile by its UUID.

func (*Client) GetMobileDeviceProvisioningProfiles added in v0.0.76

func (c *Client) GetMobileDeviceProvisioningProfiles() (*ResponseMobileDeviceProvisioningProfilesList, error)

GetMobileDeviceProvisioningProfiles retrieves a serialized list of mobile device provisioning profiles.

func (*Client) GetMobileDevices added in v0.0.83

func (c *Client) GetMobileDevices() (*ResponseMobileDevicesList, error)

GetMobileDevices retrieves a list of all mobile devices.

func (*Client) GetMobileExtensionAttributeByID added in v0.0.72

func (c *Client) GetMobileExtensionAttributeByID(id int) (*ResponseMobileExtensionAttributes, error)

GetMobileExtensionAttributeByID fetches a specific mobile extension attribute by its ID.

func (*Client) GetMobileExtensionAttributeByName added in v0.0.72

func (c *Client) GetMobileExtensionAttributeByName(name string) (*ResponseMobileExtensionAttributes, error)

GetMobileExtensionAttributeByName fetches a specific mobile extension attribute by its name.

func (*Client) GetMobileExtensionAttributes added in v0.0.72

func (c *Client) GetMobileExtensionAttributes() (*ResponseMobileDeviceExtensionAttributesList, error)

GetMobileExtensionAttributes retrieves a serialized list of mobile device extension attributes.

func (*Client) GetNetworkSegmentByID added in v0.0.74

func (c *Client) GetNetworkSegmentByID(id int) (*ResponseNetworkSegment, error)

GetNetworkSegmentByID retrieves a specific network segment by its ID.

func (*Client) GetNetworkSegmentByName added in v0.0.74

func (c *Client) GetNetworkSegmentByName(name string) (*ResponseNetworkSegment, error)

GetNetworkSegmentByName retrieves a specific network segment by its name.

func (*Client) GetNetworkSegments added in v0.0.74

func (c *Client) GetNetworkSegments() (*ResponseNetworkSegmentList, error)

GetNetworkSegments retrieves a list of network segments.

func (*Client) GetPatchPoliciesByID added in v0.0.84

func (c *Client) GetPatchPoliciesByID(id int) (*ResponsePatchPolicies, error)

GetPatchPoliciesByID retrieves the details of a patch policy by its ID.

func (*Client) GetPatchPolicyByIDAndDataSubset added in v0.0.84

func (c *Client) GetPatchPolicyByIDAndDataSubset(id int, subset string) (*ResponsePatchPolicies, error)

GetPatchPolicyByIDAndDataSubset retrieves a specific subset of data for a patch policy by its ID.

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) GetPrinterByID added in v0.0.73

func (c *Client) GetPrinterByID(id int) (*ResponsePrinters, error)

GetPrinterByID fetches a specific printer by its ID.

func (*Client) GetPrinterByName added in v0.0.73

func (c *Client) GetPrinterByName(name string) (*ResponsePrinters, error)

GetPrinterByName fetches a specific printer by its name.

func (*Client) GetPrinters added in v0.0.73

func (c *Client) GetPrinters() (*ResponsePrintersList, error)

GetPrinters retrieves a serialized list of printers.

func (*Client) GetProfileByInvitation added in v0.0.72

func (c *Client) GetProfileByInvitation(invitation string) (*ResponseMobileDeviceEnrollmentProfile, error)

GetProfileByInvitation fetches a specific mobile device enrollment profile by its invitation.

func (*Client) GetRemovableMACAddressByID added in v0.0.86

func (c *Client) GetRemovableMACAddressByID(id int) (*ResponseRemovableMACAddress, error)

GetRemovableMACAddressByID retrieves the details of a removable MAC address by its ID.

func (*Client) GetRemovableMACAddressByName added in v0.0.86

func (c *Client) GetRemovableMACAddressByName(name string) (*ResponseRemovableMACAddress, error)

GetRemovableMACAddressByName retrieves the details of a removable MAC address by its name.

func (*Client) GetRemovableMACAddresses added in v0.0.86

func (c *Client) GetRemovableMACAddresses() (*ResponseRemovableMacAddressesList, error)

GetRemovableMACAddresses retrieves a list of all removable MAC addresses.

func (*Client) GetRestrictedSoftwareByID added in v0.0.86

func (c *Client) GetRestrictedSoftwareByID(id int) (*ResponseRestrictedSoftware, error)

GetRestrictedSoftwareByID fetches the details of a specific restricted software entry by its ID.

func (*Client) GetRestrictedSoftwareByName added in v0.0.86

func (c *Client) GetRestrictedSoftwareByName(name string) (*ResponseRestrictedSoftware, error)

GetRestrictedSoftwareByName retrieves the details of a specific restricted software entry by its name.

func (*Client) GetRestrictedSoftwares added in v0.0.86

func (c *Client) GetRestrictedSoftwares() (*ResponseRestrictedSoftwaresList, error)

GetRestrictedSoftwares retrieves a list of all restricted software.

func (*Client) GetSMTPServerInformation added in v0.0.88

func (c *Client) GetSMTPServerInformation() (*ResponseSMTPServer, error)

GetSMTPServerInformation gets the SMTP server settings

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() (*ResponseSitesList, error)

GetSites gets a list of all sites

func (*Client) GetSoftwareUpdateServers added in v0.0.86

func (c *Client) GetSoftwareUpdateServers() (*ResponseSoftwareUpdateServersList, error)

GetSoftwareUpdateServers retrieves a list of all software update servers.

func (*Client) GetSoftwareUpdateServersByID added in v0.0.86

func (c *Client) GetSoftwareUpdateServersByID(id int) (*ResponseSoftwareUpdateServer, error)

GetSoftwareUpdateServersByID retrieves a specific software update server by its ID.

func (*Client) GetSoftwareUpdateServersByName added in v0.0.86

func (c *Client) GetSoftwareUpdateServersByName(name string) (*ResponseSoftwareUpdateServer, error)

GetSoftwareUpdateServersByName retrieves a specific software update server by its name.

func (*Client) GetUserByEmail added in v0.0.81

func (c *Client) GetUserByEmail(email string) (*ResponseUser, error)

GetUserByEmail retrieves the details of a user by their email.

func (*Client) GetUserByID added in v0.0.81

func (c *Client) GetUserByID(id int) (*ResponseUser, error)

GetUserByID retrieves the details of a user by their ID.

func (*Client) GetUserByName added in v0.0.81

func (c *Client) GetUserByName(name string) (*ResponseUser, error)

GetUserByName retrieves the details of a user by their name.

func (*Client) GetUserExtensionAttributeByID added in v0.0.83

func (c *Client) GetUserExtensionAttributeByID(id int) (*ResponseUserExtensionAttribute, error)

GetUserExtensionAttributeByID retrieves a user extension attribute by its ID.

func (*Client) GetUserExtensionAttributeByName added in v0.0.83

func (c *Client) GetUserExtensionAttributeByName(name string) (*ResponseUserExtensionAttribute, error)

GetUserExtensionAttributeByName retrieves a user extension attribute by its name.

func (*Client) GetUserExtensionAttributes added in v0.0.83

func (c *Client) GetUserExtensionAttributes() (*ResponseUserExtensionAttributesList, error)

GetUserExtensionAttributes retrieves a list of all user extension attributes.

func (*Client) GetUserGroups added in v0.0.80

func (c *Client) GetUserGroups() (*ResponseUserGroupsList, error)

GetUserGroups retrieves a list of all user groups.

func (*Client) GetUserGroupsByID added in v0.0.80

func (c *Client) GetUserGroupsByID(id int) (*ResponseUserGroup, error)

GetUserGroupsByID retrieves the details of a user group by its ID.

func (*Client) GetUserGroupsByName added in v0.0.80

func (c *Client) GetUserGroupsByName(name string) (*ResponseUserGroup, error)

GetUserGroupsByName retrieves the details of a user group by its name.

func (*Client) GetUsers added in v0.0.81

func (c *Client) GetUsers() (*ResponseUsersList, error)

GetUsers retrieves a list of all users.

func (*Client) GetVPPAccountByID added in v0.0.86

func (c *Client) GetVPPAccountByID(id int) (*ResponseVPPAccount, error)

GetVPPAccountByID retrieves a specific VPP account by its ID.

func (*Client) GetVPPAccounts added in v0.0.86

func (c *Client) GetVPPAccounts() (*ResponseVPPAccountsList, error)

GetVPPAccounts retrieves a list of all VPP accounts.

func (*Client) GetVPPAssignmentByID added in v0.0.88

func (c *Client) GetVPPAssignmentByID(id int) (*ResponseVPPAssignment, error)

GetVPPAssignmentByID fetches a VPP assignment by its ID

func (*Client) GetVPPAssignments added in v0.0.88

func (c *Client) GetVPPAssignments() (*ResponseVPPAssignmentsList, error)

GetVPPAssignments fetches a list of VPP assignments

func (*Client) GetVolumePurchaseLocations added in v0.0.86

func (c *Client) GetVolumePurchaseLocations(sort []string, filter string) (*ResponseVolumePurchasingList, error)

GetVolumePurchaseLocations retrieves all volume purchasing locations with optional sorting and filtering.

func (*Client) GetVolumePurchasingContentForLocationByID added in v0.0.86

func (c *Client) GetVolumePurchasingContentForLocationByID(id string, sort []string, filter string) (*ResponseVolumePurchasingContentList, error)

GetVolumePurchasingContentForLocationByID retrieves the content for a specific volume purchasing location by its ID.

func (*Client) GetVolumePurchasingLocationByID added in v0.0.86

func (c *Client) GetVolumePurchasingLocationByID(id string) (*ResponseVolumePurchasingLocation, error)

GetVolumePurchasingLocationByID retrieves a specific volume purchasing location by its ID.

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) GetWebhookByID added in v0.0.86

func (c *Client) GetWebhookByID(id int) (*ResponseWebhook, error)

GetWebhookByID retrieves a specific webhook by its ID.

func (*Client) GetWebhookByName added in v0.0.86

func (c *Client) GetWebhookByName(name string) (*ResponseWebhook, error)

GetWebhookByName retrieves a specific webhook by its name.

func (*Client) GetWebhooks added in v0.0.86

func (c *Client) GetWebhooks() (*ResponseWebhooksList, error)

GetWebhooks retrieves a list of all webhooks.

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(id string, buildingUpdate *ResponseBuilding) (*ResponseBuilding, error)

UpdateBuildingByID updates a building's information in Jamf Pro by its ID.

func (*Client) UpdateBuildingByNameByID added in v0.0.79

func (c *Client) UpdateBuildingByNameByID(name string, buildingUpdate *ResponseBuilding) (*ResponseBuilding, error)

UpdateBuildingByNameByID updates a building's information in Jamf Pro 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) UpdateCloudIdentityProviderById added in v0.0.80

func (c *Client) UpdateCloudIdentityProviderById(id string, cloudIdPData *ResponseCloudIDP) (*ResponseCloudIDP, error)

UpdateCloudIdentityProviderById updates an existing Cloud Identity Provider by its ID.

func (*Client) UpdateComputerByID added in v0.0.61

func (c *Client) UpdateComputerByID(id int, computer ResponseComputer) (*ResponseComputer, error)

UpdateComputerByID updates the details of a computer by its ID.

func (*Client) UpdateComputerByName added in v0.0.61

func (c *Client) UpdateComputerByName(name string, computer ResponseComputer) (*ResponseComputer, error)

UpdateComputerByName updates the details of a computer by its name.

func (*Client) UpdateComputerCheckinInformation added in v0.0.88

func (c *Client) UpdateComputerCheckinInformation(settings *ResponseComputerCheckin) error

UpdateComputerCheckinInformation updates the jamf pro computer check-in settings

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) UpdateComputerInventoryByID added in v0.0.84

func (c *Client) UpdateComputerInventoryByID(id string, inventoryUpdate *ResponseComputerInventory) (*ResponseComputerInventory, error)

UpdateComputerInventoryByID updates a specific computer's inventory information by its ID.

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) UpdateComputerPrestageByNameByID added in v0.0.78

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

UpdateComputerPrestageByNameByID 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) UpdateDirectoryBindingByID added in v0.0.59

func (c *Client) UpdateDirectoryBindingByID(bindingID int, binding *ResponseDirectoryBinding) (*ResponseDirectoryBinding, error)

UpdateDirectoryBindingByID updates a directory binding by its ID.

func (*Client) UpdateDirectoryBindingByName added in v0.0.59

func (c *Client) UpdateDirectoryBindingByName(bindingName string, binding *ResponseDirectoryBinding) (*ResponseDirectoryBinding, error)

UpdateDirectoryBindingByName updates a directory binding by its name.

func (*Client) UpdateDiskEncryptionConfigurationByID added in v0.0.57

func (c *Client) UpdateDiskEncryptionConfigurationByID(configID int, config *DiskEncryptionConfiguration) (*DiskEncryptionConfiguration, error)

UpdateDiskEncryptionConfigurationByID updates a disk encryption configuration by its ID.

func (*Client) UpdateDiskEncryptionConfigurationByName added in v0.0.57

func (c *Client) UpdateDiskEncryptionConfigurationByName(configName string, config *DiskEncryptionConfiguration) (*DiskEncryptionConfiguration, error)

UpdateDiskEncryptionConfigurationByName updates a disk encryption configuration by its name.

func (*Client) UpdateDistributionPointByID added in v0.0.58

func (c *Client) UpdateDistributionPointByID(id int, dp *ResponseDistributionPoint) (*ResponseDistributionPoint, error)

UpdateDistributionPointByID updates a distribution point by its ID.

func (*Client) UpdateDistributionPointByName added in v0.0.58

func (c *Client) UpdateDistributionPointByName(name string, dp *ResponseDistributionPoint) (*ResponseDistributionPoint, error)

UpdateDistributionPointByName updates a distribution point by its name.

func (*Client) UpdateDockItemsByID added in v0.0.62

func (c *Client) UpdateDockItemsByID(id int, dockItem *ResponseDockItem) (*ResponseDockItem, error)

UpdateDockItemByID updates a dock item by its ID.

func (*Client) UpdateDockItemsByName added in v0.0.62

func (c *Client) UpdateDockItemsByName(name string, dockItem *ResponseDockItem) (*ResponseDockItem, error)

UpdateDockItemByName updates a dock item by its name.

func (*Client) UpdateEbookByID added in v0.0.63

func (c *Client) UpdateEbookByID(id int, ebook ResponseEbooks) (*ResponseEbooks, error)

UpdateEbookByID updates an existing ebook by its ID.

func (*Client) UpdateEbookByName added in v0.0.63

func (c *Client) UpdateEbookByName(name string, ebook ResponseEbooks) (*ResponseEbooks, error)

UpdateEbookByName updates an existing ebook 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) UpdateGSXConnectionInformation added in v0.0.88

func (c *Client) UpdateGSXConnectionInformation(settings *ResponseGSXConnection) error

UpdateGSXConnectionInformation updates the GSX connection settings

func (*Client) UpdateIBeaconByID added in v0.0.66

func (c *Client) UpdateIBeaconByID(id int, beacon *ResponseIBeacons) (*ResponseIBeacons, error)

UpdateIBeaconByID updates an existing iBeacon by its ID in Jamf Pro.

func (*Client) UpdateIBeaconByName added in v0.0.66

func (c *Client) UpdateIBeaconByName(name string, beacon *ResponseIBeacons) (*ResponseIBeacons, error)

UpdateIBeaconByName updates an existing iBeacon by its name in Jamf Pro.

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) UpdateLDAPServerByID added in v0.0.67

func (c *Client) UpdateLDAPServerByID(id int, ldapServer *ResponseLDAPServers) (*ResponseLDAPServers, error)

UpdateLDAPServerByID updates an existing LDAP server identified by its ID.

func (*Client) UpdateLDAPServerByName added in v0.0.67

func (c *Client) UpdateLDAPServerByName(name string, ldapServer *ResponseLDAPServers) (*ResponseLDAPServers, error)

UpdateLDAPServerByName updates an existing LDAP server identified by its name.

func (*Client) UpdateLicensedSoftwareByID added in v0.0.68

func (c *Client) UpdateLicensedSoftwareByID(id int, licensedSoftware *ResponseLicensedSoftware) (*ResponseLicensedSoftware, error)

UpdateLicensedSoftwareByID updates an existing licensed software item by its ID.

func (*Client) UpdateLicensedSoftwareByName added in v0.0.68

func (c *Client) UpdateLicensedSoftwareByName(name string, licensedSoftware *ResponseLicensedSoftware) (*ResponseLicensedSoftware, error)

UpdateLicensedSoftwareByName updates an existing licensed software item by its name.

func (*Client) UpdateMacApplicationByID added in v0.0.64

func (c *Client) UpdateMacApplicationByID(id int, macApp ResponseMacApplications) (*ResponseMacApplications, error)

UpdateMacApplicationByID updates an existing Mac Application by its ID.

func (*Client) UpdateMacApplicationByName added in v0.0.64

func (c *Client) UpdateMacApplicationByName(name string, macApp ResponseMacApplications) (*ResponseMacApplications, error)

UpdateMacApplicationByName updates an existing Mac Application by its name.

func (*Client) UpdateMacOSConfigurationProfileByID added in v0.0.11

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

UpdateMacOSConfigurationProfileByID updates an existing macOS Configuration Profile by its ID on the Jamf Pro server and returns the ID of the updated profile.

func (*Client) UpdateMacOSConfigurationProfileByName added in v0.0.11

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

UpdateMacOSConfigurationProfileByName updates an existing macOS Configuration Profile by its name on the Jamf Pro server and returns the ID of the updated profile.

func (*Client) UpdateMobileDeviceApplicationByApplicationBundleID added in v0.0.69

func (c *Client) UpdateMobileDeviceApplicationByApplicationBundleID(bundleID string, app *ResponseMobileDeviceApplication) (*ResponseMobileDeviceApplication, error)

UpdateMobileDeviceApplicationByApplicationBundleID updates a mobile device application by its bundle ID on the Jamf Pro server.

func (*Client) UpdateMobileDeviceApplicationByID added in v0.0.69

func (c *Client) UpdateMobileDeviceApplicationByID(id int, app *ResponseMobileDeviceApplication) (*ResponseMobileDeviceApplication, error)

UpdateMobileDeviceApplicationByID updates a mobile device application by its ID on the Jamf Pro server.

func (*Client) UpdateMobileDeviceApplicationByIDAndAppVersion added in v0.0.69

func (c *Client) UpdateMobileDeviceApplicationByIDAndAppVersion(id int, version string, app *ResponseMobileDeviceApplication) (*ResponseMobileDeviceApplication, error)

UpdateMobileDeviceApplicationByIDAndAppVersion updates a mobile device application by its ID and application version on the Jamf Pro server.

func (*Client) UpdateMobileDeviceApplicationByName added in v0.0.69

func (c *Client) UpdateMobileDeviceApplicationByName(name string, app *ResponseMobileDeviceApplication) (*ResponseMobileDeviceApplication, error)

UpdateMobileDeviceApplicationByName updates a mobile device application by its name on the Jamf Pro server.

func (*Client) UpdateMobileDeviceByID added in v0.0.83

func (c *Client) UpdateMobileDeviceByID(id int, attribute *ResponseMobileDevice) (*ResponseMobileDevice, error)

UpdateMobileDeviceByID updates a mobile device by its ID.

func (*Client) UpdateMobileDeviceByName added in v0.0.83

func (c *Client) UpdateMobileDeviceByName(name string, attribute *ResponseMobileDevice) (*ResponseMobileDevice, error)

UpdateMobileDeviceByName updates a mobile device by its name.

func (*Client) UpdateMobileDeviceConfigurationProfileByID added in v0.0.72

func (c *Client) UpdateMobileDeviceConfigurationProfileByID(id int, profile *ResponseMobileDeviceConfigurationProfile) (*ResponseMobileDeviceConfigurationProfile, error)

UpdateMobileDeviceConfigurationProfileByID updates a mobile device configuration profile by its ID on the Jamf Pro server.

func (*Client) UpdateMobileDeviceConfigurationProfileByName added in v0.0.72

func (c *Client) UpdateMobileDeviceConfigurationProfileByName(name string, profile *ResponseMobileDeviceConfigurationProfile) (*ResponseMobileDeviceConfigurationProfile, error)

UpdateMobileDeviceConfigurationProfileByName updates a mobile device configuration profile by its name on the Jamf Pro server.

func (*Client) UpdateMobileDeviceEnrollmentProfileByID added in v0.0.72

func (c *Client) UpdateMobileDeviceEnrollmentProfileByID(id int, profile *ResponseMobileDeviceEnrollmentProfile) (*ResponseMobileDeviceEnrollmentProfile, error)

UpdateMobileDeviceEnrollmentProfileByID updates a mobile device enrollment profile by its ID.

func (*Client) UpdateMobileDeviceEnrollmentProfileByInvitation added in v0.0.72

func (c *Client) UpdateMobileDeviceEnrollmentProfileByInvitation(invitation string, profile *ResponseMobileDeviceEnrollmentProfile) (*ResponseMobileDeviceEnrollmentProfile, error)

UpdateMobileDeviceEnrollmentProfileByInvitation updates a mobile device enrollment profile by its invitation.

func (*Client) UpdateMobileDeviceEnrollmentProfileByName added in v0.0.72

func (c *Client) UpdateMobileDeviceEnrollmentProfileByName(name string, profile *ResponseMobileDeviceEnrollmentProfile) (*ResponseMobileDeviceEnrollmentProfile, error)

UpdateMobileDeviceEnrollmentProfileByName updates a mobile device enrollment profile by its name.

func (*Client) UpdateMobileDeviceGroupByID added in v0.0.75

func (c *Client) UpdateMobileDeviceGroupByID(id int, group *ResponseMobileDeviceGroup) (*ResponseMobileDeviceGroup, error)

UpdateMobileDeviceGroupByID updates a mobile device group by its ID.

func (*Client) UpdateMobileDeviceGroupByName added in v0.0.75

func (c *Client) UpdateMobileDeviceGroupByName(name string, group *ResponseMobileDeviceGroup) (*ResponseMobileDeviceGroup, error)

UpdateMobileDeviceGroupByName updates a mobile device group by its name.

func (*Client) UpdateMobileDeviceProvisioningProfileByID added in v0.0.76

func (c *Client) UpdateMobileDeviceProvisioningProfileByID(id int, profile *ResponseMobileDeviceProvisioningProfile) (*ResponseMobileDeviceProvisioningProfile, error)

UpdateMobileDeviceProvisioningProfileByID updates a mobile device provisioning profile by its ID.

func (*Client) UpdateMobileDeviceProvisioningProfileByName added in v0.0.76

func (c *Client) UpdateMobileDeviceProvisioningProfileByName(name string, profile *ResponseMobileDeviceProvisioningProfile) (*ResponseMobileDeviceProvisioningProfile, error)

UpdateMobileDeviceProvisioningProfileByName updates a mobile device provisioning profile by its name.

func (*Client) UpdateMobileDeviceProvisioningProfileByUUID added in v0.0.76

func (c *Client) UpdateMobileDeviceProvisioningProfileByUUID(uuid string, profile *ResponseMobileDeviceProvisioningProfile) (*ResponseMobileDeviceProvisioningProfile, error)

UpdateMobileDeviceProvisioningProfileByUUID updates a mobile device provisioning profile by its UUID.

func (*Client) UpdateMobileExtensionAttributeByID added in v0.0.72

func (c *Client) UpdateMobileExtensionAttributeByID(id int, attribute *ResponseMobileExtensionAttributes) (*ResponseMobileExtensionAttributes, error)

UpdateMobileExtensionAttributeByID updates a mobile extension attribute by its ID.

func (*Client) UpdateMobileExtensionAttributeByName added in v0.0.72

func (c *Client) UpdateMobileExtensionAttributeByName(name string, attribute *ResponseMobileExtensionAttributes) (*ResponseMobileExtensionAttributes, error)

UpdateMobileExtensionAttributeByName updates a mobile extension attribute by its name.

func (*Client) UpdateNetworkSegmentByID added in v0.0.74

func (c *Client) UpdateNetworkSegmentByID(id int, segment *ResponseNetworkSegment) (*ResponseNetworkSegment, error)

UpdateNetworkSegmentByID updates a specific network segment by its ID.

func (*Client) UpdateNetworkSegmentByName added in v0.0.74

func (c *Client) UpdateNetworkSegmentByName(name string, segment *ResponseNetworkSegment) (*ResponseNetworkSegment, error)

UpdateNetworkSegmentByName updates a specific network segment by its name.

func (*Client) UpdatePatchPolicy added in v0.0.84

func (c *Client) UpdatePatchPolicy(policy *ResponsePatchPolicies, softwareTitleConfigID int) (*ResponsePatchPolicies, error)

UpdatePatchPolicy creates a new patch policy.

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) UpdatePrinterByID added in v0.0.73

func (c *Client) UpdatePrinterByID(id int, printer *ResponsePrinters) (*ResponsePrinters, error)

UpdatePrinterByID updates a printer by its ID.

func (*Client) UpdatePrinterByName added in v0.0.73

func (c *Client) UpdatePrinterByName(name string, printer *ResponsePrinters) (*ResponsePrinters, error)

UpdatePrinterByName updates a printer by its name.

func (*Client) UpdateRemovableMACAddressByID added in v0.0.86

func (c *Client) UpdateRemovableMACAddressByID(id int, macAddress *RemovableMacAddress) (*RemovableMacAddress, error)

UpdateRemovableMACAddressByID updates an existing removable MAC address by its ID.

func (*Client) UpdateRemovableMACAddressByName added in v0.0.86

func (c *Client) UpdateRemovableMACAddressByName(name string, macAddress *RemovableMacAddress) (*RemovableMacAddress, error)

UpdateRemovableMACAddressByName updates an existing removable MAC address by its name.

func (*Client) UpdateRestrictedSoftwareByID added in v0.0.86

func (c *Client) UpdateRestrictedSoftwareByID(id int, restrictedSoftware *ResponseRestrictedSoftware) error

UpdateRestrictedSoftwareByID updates an existing restricted software entry by its ID.

func (*Client) UpdateRestrictedSoftwareByName added in v0.0.86

func (c *Client) UpdateRestrictedSoftwareByName(name string, restrictedSoftware *ResponseRestrictedSoftware) error

UpdateRestrictedSoftwareByName updates an existing restricted software entry by its name.

func (*Client) UpdateSMTPServerInformation added in v0.0.88

func (c *Client) UpdateSMTPServerInformation(settings *ResponseSMTPServer) error

UpdateSMTPServerInformation updates the SMTP server settings

func (*Client) UpdateScriptByID added in v0.0.15

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

UpdateScriptByID updates an existing script by its ID.

func (*Client) UpdateScriptByName added in v0.0.15

func (c *Client) UpdateScriptByName(name string, 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) UpdateSoftwareUpdateServerByID added in v0.0.86

func (c *Client) UpdateSoftwareUpdateServerByID(id int, server *ResponseSoftwareUpdateServer) (*ResponseSoftwareUpdateServer, error)

UpdateSoftwareUpdateServerByID updates a software update server by its ID.

func (*Client) UpdateSoftwareUpdateServerByName added in v0.0.86

func (c *Client) UpdateSoftwareUpdateServerByName(name string, server *ResponseSoftwareUpdateServer) (*ResponseSoftwareUpdateServer, error)

UpdateSoftwareUpdateServerByName updates a software update server by its name.

func (*Client) UpdateUserByEmail added in v0.0.81

func (c *Client) UpdateUserByEmail(email string, updatedUser *ResponseUser) (*ResponseUser, error)

UpdateUserByEmail updates a user's details by their email.

func (*Client) UpdateUserByID added in v0.0.81

func (c *Client) UpdateUserByID(id int, updatedUser *ResponseUser) (*ResponseUser, error)

UpdateUserByID updates a user's details by their ID.

func (*Client) UpdateUserByName added in v0.0.81

func (c *Client) UpdateUserByName(name string, updatedUser *ResponseUser) (*ResponseUser, error)

UpdateUserByName updates a user's details by their name.

func (*Client) UpdateUserExtensionAttributeByID added in v0.0.83

func (c *Client) UpdateUserExtensionAttributeByID(id int, attribute *ResponseUserExtensionAttribute) (*ResponseUserExtensionAttribute, error)

UpdateUserExtensionAttributeByID updates a user extension attribute by its ID.

func (*Client) UpdateUserExtensionAttributeByName added in v0.0.83

func (c *Client) UpdateUserExtensionAttributeByName(name string, attribute *ResponseUserExtensionAttribute) (*ResponseUserExtensionAttribute, error)

UpdateUserExtensionAttributeByName updates a user extension attribute by its name.

func (*Client) UpdateUserGroupByID added in v0.0.80

func (c *Client) UpdateUserGroupByID(id int, userGroup *ResponseUserGroup) (*ResponseUserGroup, error)

UpdateUserGroupByID updates an existing user group by its ID.

func (*Client) UpdateUserGroupByName added in v0.0.80

func (c *Client) UpdateUserGroupByName(name string, userGroup *ResponseUserGroup) (*ResponseUserGroup, error)

UpdateUserGroupByName updates an existing user group by its name.

func (*Client) UpdateVPPAccount added in v0.0.86

func (c *Client) UpdateVPPAccount(id int, account *ResponseVPPAccount) (*ResponseVPPAccount, error)

UpdateVPPAccount updates an existing VPP account.

func (*Client) UpdateVPPAssignmentByID added in v0.0.88

func (c *Client) UpdateVPPAssignmentByID(id int, assignment *ResponseVPPAssignment) error

UpdateVPPAssignmentByID updates a VPP assignment by its ID

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) UpdateWebhookByID added in v0.0.86

func (c *Client) UpdateWebhookByID(id int, webhook *ResponseWebhook) (*ResponseWebhook, error)

UpdateWebhookByID updates a specific webhook by its ID.

func (*Client) UpdateWebhookByName added in v0.0.86

func (c *Client) UpdateWebhookByName(name string, webhook *ResponseWebhook) (*ResponseWebhook, error)

UpdateWebhookByName updates a specific webhook by its name.

func (*Client) UploadAttachmentAndAssignToComputerByID added in v0.0.84

func (c *Client) UploadAttachmentAndAssignToComputerByID(id, filePath string) (*ResponseUploadAttachment, error)

UploadAttachmentAndAssignToComputerByID uploads a file attachment to a computer by computer ID.

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 CloudIdPCommon added in v0.0.80

type CloudIdPCommon struct {
	DisplayName  string `json:"displayName"`
	ProviderName string `json:"providerName"`
}

type CloudIdPServer added in v0.0.80

type CloudIdPServer struct {
	ID                                       string                 `json:"id"`
	TenantId                                 string                 `json:"tenantId"`
	Enabled                                  bool                   `json:"enabled"`
	Migrated                                 bool                   `json:"migrated"`
	Mappings                                 CloudIdPServerMappings `json:"mappings"`
	SearchTimeout                            int                    `json:"searchTimeout"`
	TransitiveMembershipEnabled              bool                   `json:"transitiveMembershipEnabled"`
	TransitiveMembershipUserField            string                 `json:"transitiveMembershipUserField"`
	TransitiveDirectoryMembershipEnabled     bool                   `json:"transitiveDirectoryMembershipEnabled"`
	MembershipCalculationOptimizationEnabled bool                   `json:"membershipCalculationOptimizationEnabled"`
	Code                                     string                 `json:"code"`
}

type CloudIdPServerMappings added in v0.0.80

type CloudIdPServerMappings struct {
	UserId     string `json:"userId"`
	UserName   string `json:"userName"`
	RealName   string `json:"realName"`
	Email      string `json:"email"`
	Department string `json:"department"`
	Building   string `json:"building"`
	Room       string `json:"room"`
	Phone      string `json:"phone"`
	Position   string `json:"position"`
	GroupId    string `json:"groupId"`
	GroupName  string `json:"groupName"`
}

type ComputerContainer added in v0.0.46

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

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 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 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 ComputerInventoryDataSubsetApplication added in v0.0.84

type ComputerInventoryDataSubsetApplication struct {
	Name              string `json:"name"`
	Path              string `json:"path"`
	Version           string `json:"version"`
	MacAppStore       bool   `json:"macAppStore"`
	SizeMegabytes     int    `json:"sizeMegabytes"`
	BundleId          string `json:"bundleId"`
	UpdateAvailable   bool   `json:"updateAvailable"`
	ExternalVersionId string `json:"externalVersionId"`
}

ComputerInventoryDataSubsetApplication represents an individual application in the 'applications' array.

type ComputerInventoryDataSubsetAttachment added in v0.0.84

type ComputerInventoryDataSubsetAttachment struct {
	ID        string `json:"id"`
	Name      string `json:"name"`
	FileType  string `json:"fileType"`
	SizeBytes int    `json:"sizeBytes"`
}

Attachment represents an attachment.

type ComputerInventoryDataSubsetBootPartitionEncryptionDetails added in v0.0.84

type ComputerInventoryDataSubsetBootPartitionEncryptionDetails struct {
	PartitionName              string `json:"partitionName"`
	PartitionFileVault2State   string `json:"partitionFileVault2State"`
	PartitionFileVault2Percent int    `json:"partitionFileVault2Percent"`
}

BootPartitionEncryptionDetails represents the details of disk encryption.

type ComputerInventoryDataSubsetCertificate added in v0.0.84

type ComputerInventoryDataSubsetCertificate struct {
	CommonName        string `json:"commonName"`
	Identity          bool   `json:"identity"`
	ExpirationDate    string `json:"expirationDate"`
	Username          string `json:"username"`
	LifecycleStatus   string `json:"lifecycleStatus"`
	CertificateStatus string `json:"certificateStatus"`
	SubjectName       string `json:"subjectName"`
	SerialNumber      string `json:"serialNumber"`
	Sha1Fingerprint   string `json:"sha1Fingerprint"`
	IssuedDate        string `json:"issuedDate"`
}

Certificate represents a security certificate.

type ComputerInventoryDataSubsetConfigurationProfile added in v0.0.84

type ComputerInventoryDataSubsetConfigurationProfile struct {
	ID                string `json:"id"`
	Username          string `json:"username"`
	LastInstalled     string `json:"lastInstalled"`
	Removable         bool   `json:"removable"`
	DisplayName       string `json:"displayName"`
	ProfileIdentifier string `json:"profileIdentifier"`
}

ConfigurationProfile represents a configuration profile.

type ComputerInventoryDataSubsetContentCaching added in v0.0.84

type ComputerInventoryDataSubsetContentCaching struct {
	ComputerContentCachingInformationId string                                                      `json:"computerContentCachingInformationId"`
	Parents                             []ComputerInventoryDataSubsetContentCachingParent           `json:"parents"`
	Alerts                              []ComputerInventoryDataSubsetContentCachingAlert            `json:"alerts"` // Corrected to slice
	Activated                           bool                                                        `json:"activated"`
	Active                              bool                                                        `json:"active"`
	ActualCacheBytesUsed                int                                                         `json:"actualCacheBytesUsed"`
	CacheDetails                        []ComputerInventoryDataSubsetContentCachingCacheDetail      `json:"cacheDetails"`
	CacheBytesFree                      int                                                         `json:"cacheBytesFree"`
	CacheBytesLimit                     int                                                         `json:"cacheBytesLimit"`
	CacheStatus                         string                                                      `json:"cacheStatus"`
	CacheBytesUsed                      int                                                         `json:"cacheBytesUsed"`
	DataMigrationCompleted              bool                                                        `json:"dataMigrationCompleted"`
	DataMigrationProgressPercentage     int                                                         `json:"dataMigrationProgressPercentage"`
	DataMigrationError                  ComputerInventoryDataSubsetContentCachingDataMigrationError `json:"dataMigrationError"`
	MaxCachePressureLast1HourPercentage int                                                         `json:"maxCachePressureLast1HourPercentage"`
	PersonalCacheBytesFree              int                                                         `json:"personalCacheBytesFree"`
	PersonalCacheBytesLimit             int                                                         `json:"personalCacheBytesLimit"`
	PersonalCacheBytesUsed              int                                                         `json:"personalCacheBytesUsed"`
	Port                                int                                                         `json:"port"`
	PublicAddress                       string                                                      `json:"publicAddress"`
	RegistrationError                   string                                                      `json:"registrationError"`
	RegistrationResponseCode            int                                                         `json:"registrationResponseCode"`
	RegistrationStarted                 string                                                      `json:"registrationStarted"`
	RegistrationStatus                  string                                                      `json:"registrationStatus"`
	RestrictedMedia                     bool                                                        `json:"restrictedMedia"`
	ServerGuid                          string                                                      `json:"serverGuid"`
	StartupStatus                       string                                                      `json:"startupStatus"`
	TetheratorStatus                    string                                                      `json:"tetheratorStatus"`
	TotalBytesAreSince                  string                                                      `json:"totalBytesAreSince"`
	TotalBytesDropped                   int64                                                       `json:"totalBytesDropped"`
	TotalBytesImported                  int64                                                       `json:"totalBytesImported"`
	TotalBytesReturnedToChildren        int64                                                       `json:"totalBytesReturnedToChildren"`
	TotalBytesReturnedToClients         int64                                                       `json:"totalBytesReturnedToClients"`
	TotalBytesReturnedToPeers           int64                                                       `json:"totalBytesReturnedToPeers"`
	TotalBytesStoredFromOrigin          int64                                                       `json:"totalBytesStoredFromOrigin"`
	TotalBytesStoredFromParents         int64                                                       `json:"totalBytesStoredFromParents"`
	TotalBytesStoredFromPeers           int64                                                       `json:"totalBytesStoredFromPeers"`
}

ContentCaching represents the content caching details.

type ComputerInventoryDataSubsetContentCachingAlert added in v0.0.84

type ComputerInventoryDataSubsetContentCachingAlert struct {
	ContentCachingParentAlertId string   `json:"contentCachingParentAlertId"`
	Addresses                   []string `json:"addresses"`
	ClassName                   string   `json:"className"`
	PostDate                    string   `json:"postDate"`
}

ContentCachingAlert represents an alert in the content caching details.

type ComputerInventoryDataSubsetContentCachingCacheDetail added in v0.0.84

type ComputerInventoryDataSubsetContentCachingCacheDetail struct {
	ComputerContentCachingCacheDetailsId string `json:"computerContentCachingCacheDetailsId"`
	CategoryName                         string `json:"categoryName"`
	DiskSpaceBytesUsed                   int64  `json:"diskSpaceBytesUsed"`
}

ContentCachingCacheDetail represents cache details in content caching.

type ComputerInventoryDataSubsetContentCachingCapabilities added in v0.0.84

type ComputerInventoryDataSubsetContentCachingCapabilities struct {
	ContentCachingParentCapabilitiesId string `json:"contentCachingParentCapabilitiesId"`
	Imports                            bool   `json:"imports"`
	Namespaces                         bool   `json:"namespaces"`
	PersonalContent                    bool   `json:"personalContent"`
	QueryParameters                    bool   `json:"queryParameters"`
	SharedContent                      bool   `json:"sharedContent"`
	Prioritization                     bool   `json:"prioritization"`
}

ContentCachingCapabilities represents the capabilities in content caching details.

type ComputerInventoryDataSubsetContentCachingDataMigrationError added in v0.0.84

type ComputerInventoryDataSubsetContentCachingDataMigrationError struct {
	Code     int                                                 `json:"code"`
	Domain   string                                              `json:"domain"`
	UserInfo []ComputerInventoryDataSubsetContentCachingUserInfo `json:"userInfo"`
}

ContentCachingDataMigrationError represents a data migration error in content caching.

type ComputerInventoryDataSubsetContentCachingDetails added in v0.0.84

type ComputerInventoryDataSubsetContentCachingDetails struct {
	ContentCachingParentDetailsId string                                                  `json:"contentCachingParentDetailsId"`
	AcPower                       bool                                                    `json:"acPower"`
	CacheSizeBytes                int64                                                   `json:"cacheSizeBytes"`
	Capabilities                  ComputerInventoryDataSubsetContentCachingCapabilities   `json:"capabilities"`
	Portable                      bool                                                    `json:"portable"`
	LocalNetwork                  []ComputerInventoryDataSubsetContentCachingLocalNetwork `json:"localNetwork"`
}

ContentCachingDetails represents the details of content caching.

type ComputerInventoryDataSubsetContentCachingLocalNetwork added in v0.0.84

type ComputerInventoryDataSubsetContentCachingLocalNetwork struct {
	ContentCachingParentLocalNetworkId string `json:"contentCachingParentLocalNetworkId"`
	Speed                              int    `json:"speed"`
	Wired                              bool   `json:"wired"`
}

ContentCachingLocalNetwork represents a local network in content caching details.

type ComputerInventoryDataSubsetContentCachingParent added in v0.0.84

type ComputerInventoryDataSubsetContentCachingParent struct {
	ContentCachingParentId string                                           `json:"contentCachingParentId"`
	Address                string                                           `json:"address"`
	Alerts                 ComputerInventoryDataSubsetContentCachingAlert   `json:"alerts"` // Changed from slice to struct
	Details                ComputerInventoryDataSubsetContentCachingDetails `json:"details"`
	Guid                   string                                           `json:"guid"`
	Healthy                bool                                             `json:"healthy"`
	Port                   int                                              `json:"port"`
	Version                string                                           `json:"version"`
}

ContentCachingParent represents a parent in the content caching details.

type ComputerInventoryDataSubsetContentCachingUserInfo added in v0.0.84

type ComputerInventoryDataSubsetContentCachingUserInfo struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

ContentCachingUserInfo represents user info in content caching data migration error.

type ComputerInventoryDataSubsetDisk added in v0.0.84

type ComputerInventoryDataSubsetDisk struct {
	ID            string                                 `json:"id"`
	Device        string                                 `json:"device"`
	Model         string                                 `json:"model"`
	Revision      string                                 `json:"revision"`
	SerialNumber  string                                 `json:"serialNumber"`
	SizeMegabytes int                                    `json:"sizeMegabytes"`
	SmartStatus   string                                 `json:"smartStatus"`
	Type          string                                 `json:"type"`
	Partitions    []ComputerInventoryDataSubsetPartition `json:"partitions"`
}

ComputerInventoryDataSubsetDisk represents a storage disk.

type ComputerInventoryDataSubsetDiskEncryption added in v0.0.84

type ComputerInventoryDataSubsetDiskEncryption struct {
	BootPartitionEncryptionDetails      ComputerInventoryDataSubsetBootPartitionEncryptionDetails `json:"bootPartitionEncryptionDetails"`
	IndividualRecoveryKeyValidityStatus string                                                    `json:"individualRecoveryKeyValidityStatus"`
	InstitutionalRecoveryKeyPresent     bool                                                      `json:"institutionalRecoveryKeyPresent"`
	DiskEncryptionConfigurationName     string                                                    `json:"diskEncryptionConfigurationName"`
	FileVault2EnabledUserNames          []string                                                  `json:"fileVault2EnabledUserNames"`
	FileVault2EligibilityMessage        string                                                    `json:"fileVault2EligibilityMessage"`
}

ComputerInventoryDataSubsetDiskEncryption represents the 'diskEncryption' section of a result.

type ComputerInventoryDataSubsetEnrollmentMethod added in v0.0.84

type ComputerInventoryDataSubsetEnrollmentMethod struct {
	ID         string `json:"id"`
	ObjectName string `json:"objectName"`
	ObjectType string `json:"objectType"`
}

EnrollmentMethod represents the 'enrollmentMethod' section of 'general'.

type ComputerInventoryDataSubsetExtensionAttribute added in v0.0.84

type ComputerInventoryDataSubsetExtensionAttribute struct {
	DefinitionId string   `json:"definitionId"`
	Name         string   `json:"name"`
	Description  string   `json:"description"`
	Enabled      bool     `json:"enabled"`
	MultiValue   bool     `json:"multiValue"`
	Values       []string `json:"values"`
	DataType     string   `json:"dataType"`
	Options      []string `json:"options"`
	InputType    string   `json:"inputType"`
}

ExtensionAttribute represents a generic extension attribute.

type ComputerInventoryDataSubsetFont added in v0.0.84

type ComputerInventoryDataSubsetFont struct {
	Name    string `json:"name"`
	Version string `json:"version"`
	Path    string `json:"path"`
}

Font represents a font installed on the computer.

type ComputerInventoryDataSubsetGeneral added in v0.0.84

type ComputerInventoryDataSubsetGeneral struct {
	Name                                 string                                          `json:"name"`
	LastIpAddress                        string                                          `json:"lastIpAddress"`
	LastReportedIp                       string                                          `json:"lastReportedIp"`
	JamfBinaryVersion                    string                                          `json:"jamfBinaryVersion"`
	Platform                             string                                          `json:"platform"`
	Barcode1                             string                                          `json:"barcode1"`
	Barcode2                             string                                          `json:"barcode2"`
	AssetTag                             string                                          `json:"assetTag"`
	RemoteManagement                     ComputerInventoryDataSubsetRemoteManagement     `json:"remoteManagement"`
	Supervised                           bool                                            `json:"supervised"`
	MdmCapable                           ComputerInventoryDataSubsetMdmCapable           `json:"mdmCapable"`
	ReportDate                           string                                          `json:"reportDate"`
	LastContactTime                      string                                          `json:"lastContactTime"`
	LastCloudBackupDate                  string                                          `json:"lastCloudBackupDate"`
	LastEnrolledDate                     string                                          `json:"lastEnrolledDate"`
	MdmProfileExpiration                 string                                          `json:"mdmProfileExpiration"`
	InitialEntryDate                     string                                          `json:"initialEntryDate"`
	DistributionPoint                    string                                          `json:"distributionPoint"`
	EnrollmentMethod                     ComputerInventoryDataSubsetEnrollmentMethod     `json:"enrollmentMethod"`
	Site                                 ComputerInventoryDataSubsetSite                 `json:"site"`
	ItunesStoreAccountActive             bool                                            `json:"itunesStoreAccountActive"`
	EnrolledViaAutomatedDeviceEnrollment bool                                            `json:"enrolledViaAutomatedDeviceEnrollment"`
	UserApprovedMdm                      bool                                            `json:"userApprovedMdm"`
	DeclarativeDeviceManagementEnabled   bool                                            `json:"declarativeDeviceManagementEnabled"`
	ExtensionAttributes                  []ComputerInventoryDataSubsetExtensionAttribute `json:"extensionAttributes"`
	ManagementId                         string                                          `json:"managementId"`
}

General represents the 'general' section of a result.

type ComputerInventoryDataSubsetGroupMembership added in v0.0.84

type ComputerInventoryDataSubsetGroupMembership struct {
	GroupId    string `json:"groupId"`
	GroupName  string `json:"groupName"`
	SmartGroup bool   `json:"smartGroup"`
}

GroupMembership represents a group membership.

type ComputerInventoryDataSubsetHardware added in v0.0.84

type ComputerInventoryDataSubsetHardware struct {
	Make                   string                                          `json:"make"`
	Model                  string                                          `json:"model"`
	ModelIdentifier        string                                          `json:"modelIdentifier"`
	SerialNumber           string                                          `json:"serialNumber"`
	ProcessorSpeedMhz      int                                             `json:"processorSpeedMhz"`
	ProcessorCount         int                                             `json:"processorCount"`
	CoreCount              int                                             `json:"coreCount"`
	ProcessorType          string                                          `json:"processorType"`
	ProcessorArchitecture  string                                          `json:"processorArchitecture"`
	BusSpeedMhz            int                                             `json:"busSpeedMhz"`
	CacheSizeKilobytes     int                                             `json:"cacheSizeKilobytes"`
	NetworkAdapterType     string                                          `json:"networkAdapterType"`
	MacAddress             string                                          `json:"macAddress"`
	AltNetworkAdapterType  string                                          `json:"altNetworkAdapterType"`
	AltMacAddress          string                                          `json:"altMacAddress"`
	TotalRamMegabytes      int                                             `json:"totalRamMegabytes"`
	OpenRamSlots           int                                             `json:"openRamSlots"`
	BatteryCapacityPercent int                                             `json:"batteryCapacityPercent"`
	SmcVersion             string                                          `json:"smcVersion"`
	NicSpeed               string                                          `json:"nicSpeed"`
	OpticalDrive           string                                          `json:"opticalDrive"`
	BootRom                string                                          `json:"bootRom"`
	BleCapable             bool                                            `json:"bleCapable"`
	SupportsIosAppInstalls bool                                            `json:"supportsIosAppInstalls"`
	AppleSilicon           bool                                            `json:"appleSilicon"`
	ExtensionAttributes    []ComputerInventoryDataSubsetExtensionAttribute `json:"extensionAttributes"`
}

Hardware represents the hardware details of a computer.

type ComputerInventoryDataSubsetIbeacon added in v0.0.84

type ComputerInventoryDataSubsetIbeacon struct {
	Name string `json:"name"`
}

Ibeacon represents an iBeacon.

type ComputerInventoryDataSubsetLicensedSoftware added in v0.0.84

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

LicensedSoftware represents licensed software.

type ComputerInventoryDataSubsetLocalUserAccount added in v0.0.84

type ComputerInventoryDataSubsetLocalUserAccount struct {
	UID                            string `json:"uid"`
	UserGuid                       string `json:"userGuid"`
	Username                       string `json:"username"`
	FullName                       string `json:"fullName"`
	Admin                          bool   `json:"admin"`
	HomeDirectory                  string `json:"homeDirectory"`
	HomeDirectorySizeMb            int    `json:"homeDirectorySizeMb"`
	FileVault2Enabled              bool   `json:"fileVault2Enabled"`
	UserAccountType                string `json:"userAccountType"`
	PasswordMinLength              int    `json:"passwordMinLength"`
	PasswordMaxAge                 int    `json:"passwordMaxAge"`
	PasswordMinComplexCharacters   int    `json:"passwordMinComplexCharacters"`
	PasswordHistoryDepth           int    `json:"passwordHistoryDepth"`
	PasswordRequireAlphanumeric    bool   `json:"passwordRequireAlphanumeric"`
	ComputerAzureActiveDirectoryId string `json:"computerAzureActiveDirectoryId"`
	UserAzureActiveDirectoryId     string `json:"userAzureActiveDirectoryId"`
	AzureActiveDirectoryId         string `json:"azureActiveDirectoryId"`
}

LocalUserAccount represents a local user account on the computer.

type ComputerInventoryDataSubsetMdmCapable added in v0.0.84

type ComputerInventoryDataSubsetMdmCapable struct {
	Capable      bool     `json:"capable"`
	CapableUsers []string `json:"capableUsers"`
}

MdmCapable represents the 'mdmCapable' section of 'general'.

type ComputerInventoryDataSubsetOperatingSystem added in v0.0.84

type ComputerInventoryDataSubsetOperatingSystem struct {
	Name                     string                                          `json:"name"`
	Version                  string                                          `json:"version"`
	Build                    string                                          `json:"build"`
	SupplementalBuildVersion string                                          `json:"supplementalBuildVersion"`
	RapidSecurityResponse    string                                          `json:"rapidSecurityResponse"`
	ActiveDirectoryStatus    string                                          `json:"activeDirectoryStatus"`
	FileVault2Status         string                                          `json:"fileVault2Status"`
	SoftwareUpdateDeviceId   string                                          `json:"softwareUpdateDeviceId"`
	ExtensionAttributes      []ComputerInventoryDataSubsetExtensionAttribute `json:"extensionAttributes"`
}

OperatingSystem represents the operating system details of the computer.

type ComputerInventoryDataSubsetPackageReceipts added in v0.0.84

type ComputerInventoryDataSubsetPackageReceipts struct {
	InstalledByJamfPro      []string `json:"installedByJamfPro"`
	InstalledByInstallerSwu []string `json:"installedByInstallerSwu"`
	Cached                  []string `json:"cached"`
}

PackageReceipts represents the package receipts.

type ComputerInventoryDataSubsetPartition added in v0.0.84

type ComputerInventoryDataSubsetPartition struct {
	Name                      string `json:"name"`
	SizeMegabytes             int    `json:"sizeMegabytes"`
	AvailableMegabytes        int    `json:"availableMegabytes"`
	PartitionType             string `json:"partitionType"`
	PercentUsed               int    `json:"percentUsed"`
	FileVault2State           string `json:"fileVault2State"`
	FileVault2ProgressPercent int    `json:"fileVault2ProgressPercent"`
	LvmManaged                bool   `json:"lvmManaged"`
}

Partition represents a partition of a disk.

type ComputerInventoryDataSubsetPlugin added in v0.0.84

type ComputerInventoryDataSubsetPlugin struct {
	Name    string `json:"name"`
	Version string `json:"version"`
	Path    string `json:"path"`
}

Plugin represents a software plugin.

type ComputerInventoryDataSubsetPrinter added in v0.0.84

type ComputerInventoryDataSubsetPrinter struct {
	Name     string `json:"name"`
	Type     string `json:"type"`
	URI      string `json:"uri"`
	Location string `json:"location"`
}

Printer represents a printer device.

type ComputerInventoryDataSubsetPurchasing added in v0.0.84

type ComputerInventoryDataSubsetPurchasing struct {
	Leased              bool                                            `json:"leased"`
	Purchased           bool                                            `json:"purchased"`
	PoNumber            string                                          `json:"poNumber"`
	PoDate              string                                          `json:"poDate"`
	Vendor              string                                          `json:"vendor"`
	WarrantyDate        string                                          `json:"warrantyDate"`
	AppleCareId         string                                          `json:"appleCareId"`
	LeaseDate           string                                          `json:"leaseDate"`
	PurchasePrice       string                                          `json:"purchasePrice"`
	LifeExpectancy      int                                             `json:"lifeExpectancy"`
	PurchasingAccount   string                                          `json:"purchasingAccount"`
	PurchasingContact   string                                          `json:"purchasingContact"`
	ExtensionAttributes []ComputerInventoryDataSubsetExtensionAttribute `json:"extensionAttributes"`
}

Purchasing represents the 'purchasing' section of a result.

type ComputerInventoryDataSubsetRemoteManagement added in v0.0.84

type ComputerInventoryDataSubsetRemoteManagement struct {
	Managed            bool   `json:"managed"`
	ManagementUsername string `json:"managementUsername"`
}

RemoteManagement represents the 'remoteManagement' section of 'general'.

type ComputerInventoryDataSubsetSecurity added in v0.0.84

type ComputerInventoryDataSubsetSecurity struct {
	SipStatus             string `json:"sipStatus"`
	GatekeeperStatus      string `json:"gatekeeperStatus"`
	XprotectVersion       string `json:"xprotectVersion"`
	AutoLoginDisabled     bool   `json:"autoLoginDisabled"`
	RemoteDesktopEnabled  bool   `json:"remoteDesktopEnabled"`
	ActivationLockEnabled bool   `json:"activationLockEnabled"`
	RecoveryLockEnabled   bool   `json:"recoveryLockEnabled"`
	FirewallEnabled       bool   `json:"firewallEnabled"`
	SecureBootLevel       string `json:"secureBootLevel"`
	ExternalBootLevel     string `json:"externalBootLevel"`
	BootstrapTokenAllowed bool   `json:"bootstrapTokenAllowed"`
}

Security represents the security settings of the computer.

type ComputerInventoryDataSubsetService added in v0.0.84

type ComputerInventoryDataSubsetService struct {
	Name string `json:"name"`
}

Service represents a service.

type ComputerInventoryDataSubsetSite added in v0.0.84

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

Site represents the 'site' section of 'general'.

type ComputerInventoryDataSubsetSoftwareUpdate added in v0.0.84

type ComputerInventoryDataSubsetSoftwareUpdate struct {
	Name        string `json:"name"`
	Version     string `json:"version"`
	PackageName string `json:"packageName"`
}

SoftwareUpdate represents a software update.

type ComputerInventoryDataSubsetStorage added in v0.0.84

type ComputerInventoryDataSubsetStorage struct {
	BootDriveAvailableSpaceMegabytes int                               `json:"bootDriveAvailableSpaceMegabytes"`
	Disks                            []ComputerInventoryDataSubsetDisk `json:"disks"`
}

Storage represents the 'storage' section of a result.

type ComputerInventoryDataSubsetUserAndLocation added in v0.0.84

type ComputerInventoryDataSubsetUserAndLocation struct {
	Username            string                                          `json:"username"`
	Realname            string                                          `json:"realname"`
	Email               string                                          `json:"email"`
	Position            string                                          `json:"position"`
	Phone               string                                          `json:"phone"`
	DepartmentId        string                                          `json:"departmentId"`
	BuildingId          string                                          `json:"buildingId"`
	Room                string                                          `json:"room"`
	ExtensionAttributes []ComputerInventoryDataSubsetExtensionAttribute `json:"extensionAttributes"`
}

UserAndLocation represents the 'userAndLocation' section of a result.

type ComputerInvitationDetail added in v0.0.56

type ComputerInvitationDetail struct {
	ID                  int    `xml:"id,omitempty"`
	Invitation          int64  `xml:"invitation,omitempty"`
	InvitationType      string `xml:"invitation_type,omitempty"`
	ExpirationDate      string `xml:"expiration_date,omitempty"`
	ExpirationDateUTC   string `xml:"expiration_date_utc,omitempty"`
	ExpirationDateEpoch int64  `xml:"expiration_date_epoch,omitempty"`
}

type ComputerInvitationSite added in v0.0.56

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

type ComputerItem added in v0.0.61

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

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 Config added in v0.0.21

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

type ConfigurationProfile added in v0.0.61

type ConfigurationProfile struct {
	ID          int    `xml:"id" json:"id"`
	Name        string `xml:"name" json:"name"`
	UUID        string `xml:"uuid" json:"uuid"`
	IsRemovable bool   `xml:"is_removable" json:"is_removable"`
}

ConfigurationProfile represents a configuration profile applied to the computer

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 DepartmentItem added in v0.0.34

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

type DeviceEnrollment added in v0.0.77

type DeviceEnrollment struct {
	ID                    string `json:"id"`
	Name                  string `json:"name"`
	SupervisionIdentityId string `json:"supervisionIdentityId"`
	SiteId                string `json:"siteId"`
	ServerName            string `json:"serverName"`
	ServerUuid            string `json:"serverUuid"`
	AdminId               string `json:"adminId"`
	OrgName               string `json:"orgName"`
	OrgEmail              string `json:"orgEmail"`
	OrgPhone              string `json:"orgPhone"`
	OrgAddress            string `json:"orgAddress"`
	TokenExpirationDate   string `json:"tokenExpirationDate"`
}

DeviceEnrollment represents a single device enrollment instance.

type DeviceGroupAndOr added in v0.0.11

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

type DirectoryBindingDetail added in v0.0.59

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

type DiskEncryptionConfiguration added in v0.0.57

type DiskEncryptionConfiguration struct {
	XMLName                  xml.Name                                                       `xml:"disk_encryption_configuration"`
	Name                     string                                                         `xml:"name"`
	KeyType                  string                                                         `xml:"key_type"`
	FileVaultEnabledUsers    string                                                         `xml:"file_vault_enabled_users"`
	InstitutionalRecoveryKey *DiskEncryptionConfigurationDataSubsetInstitutionalRecoveryKey `xml:"institutional_recovery_key,omitempty"`
}

DiskEncryptionConfiguration represents the top-level XML structure for creating/updating a Disk Encryption Configuration.

type DiskEncryptionConfigurationDataSubsetInstitutionalRecoveryKey added in v0.0.57

type DiskEncryptionConfigurationDataSubsetInstitutionalRecoveryKey struct {
	Key             string `xml:"key"`
	CertificateType string `xml:"certificate_type"`
	Password        string `xml:"password"`
	Data            string `xml:"data"`
}

DiskEncryptionConfigurationDataSubsetInstitutionalRecoveryKey represents the XML structure for Institutional Recovery Key.

type DiskEncryptionConfigurationDetail added in v0.0.57

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

type DisplayFieldDetail added in v0.0.36

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

DisplayFieldDetail represents the details of a display field.

type DistributionPointListDetail added in v0.0.58

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

type DockItem added in v0.0.62

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

type Ebook added in v0.0.63

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

type EbooksDataSubsetBuilding added in v0.0.63

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

Building represents a building within the scope.

type EbooksDataSubsetCategory added in v0.0.63

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

type EbooksDataSubsetClass added in v0.0.63

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

Class represents a class within the scope.

type EbooksDataSubsetComputer added in v0.0.63

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

Computer represents a single computer within the scope.

type EbooksDataSubsetComputerGroup added in v0.0.63

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

ComputerGroup represents a group of computers within the scope.

type EbooksDataSubsetDepartment added in v0.0.63

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

Department represents a department within the scope.

type EbooksDataSubsetExclusions added in v0.0.63

type EbooksDataSubsetExclusions struct {
	Computers          []EbooksDataSubsetComputer          `xml:"computers>computer"`
	ComputerGroups     []EbooksDataSubsetComputerGroup     `xml:"computer_groups>computer_group"`
	MobileDevices      []EbooksDataSubsetMobileDevice      `xml:"mobile_devices>mobile_device"`
	MobileDeviceGroups []EbooksDataSubsetMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group"`
	Buildings          []EbooksDataSubsetBuilding          `xml:"buildings>building"`
	Departments        []EbooksDataSubsetDepartment        `xml:"departments>department"`
	JSSUsers           []EbooksDataSubsetUser              `xml:"jss_users>user"`
	JSSUserGroups      []EbooksDataSubsetUserGroup         `xml:"jss_user_groups>user_group"`
}

Exclusions represent any exclusions within the scope.

type EbooksDataSubsetGeneral added in v0.0.63

type EbooksDataSubsetGeneral struct {
	ID              int                             `xml:"id"`
	Name            string                          `xml:"name"`
	Author          string                          `xml:"author"`
	Version         string                          `xml:"version"`
	Free            bool                            `xml:"free"`
	URL             string                          `xml:"url"`
	DeploymentType  string                          `xml:"deployment_type"`
	FileType        string                          `xml:"file_type"`
	DeployAsManaged bool                            `xml:"deploy_as_managed"`
	Category        EbooksDataSubsetCategory        `xml:"category"`
	SelfServiceIcon EbooksDataSubsetSelfServiceIcon `xml:"self_service_icon"`
	Site            EbooksDataSubsetSite            `xml:"site"`
}

type EbooksDataSubsetLimitations added in v0.0.63

type EbooksDataSubsetLimitations struct {
	NetworkSegments []EbooksDataSubsetNetworkSegment `xml:"network_segments>network_segment"`
	Users           []EbooksDataSubsetUser           `xml:"users>user"`
	UserGroups      []EbooksDataSubsetUserGroup      `xml:"user_groups>user_group"`
}

EbooksDataSubsetLimitations represents any limitations within the scope.

type EbooksDataSubsetMobileDevice added in v0.0.63

type EbooksDataSubsetMobileDevice struct {
	ID             int    `xml:"id"`
	Name           string `xml:"name"`
	UDID           string `xml:"udid"`
	WiFiMacAddress string `xml:"wifi_mac_address"`
}

MobileDevice represents a single mobile device within the scope.

type EbooksDataSubsetMobileDeviceGroup added in v0.0.63

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

EbooksDataSubsetMobileDeviceGroup represents a group of mobile devices within the scope.

type EbooksDataSubsetNetworkSegment added in v0.0.63

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

EbooksDataSubsetNetworkSegment represents a network segment within the limitations.

type EbooksDataSubsetScope added in v0.0.63

type EbooksDataSubsetScope struct {
	AllComputers       bool                            `xml:"all_computers"`
	AllMobileDevices   bool                            `xml:"all_mobile_devices"`
	AllJSSUsers        bool                            `xml:"all_jss_users"`
	Computers          []EbooksDataSubsetComputer      `xml:"computers>computer"`
	ComputerGroups     []EbooksDataSubsetComputerGroup `xml:"computer_groups>computer_group"`
	MobileDevices      []EbooksDataSubsetMobileDevice  `xml:"mobile_devices>mobile_device"`
	MobileDeviceGroups []MobileDeviceGroup             `xml:"mobile_device_groups>mobile_device_group"`
	Buildings          []EbooksDataSubsetBuilding      `xml:"buildings>building"`
	Departments        []EbooksDataSubsetDepartment    `xml:"departments>department"`
	JSSUsers           []EbooksDataSubsetUser          `xml:"jss_users>user"`
	JSSUserGroups      []EbooksDataSubsetUserGroup     `xml:"jss_user_groups>user_group"`
	Classes            []EbooksDataSubsetClass         `xml:"classes>class"`
	Limitations        EbooksDataSubsetLimitations     `xml:"limitations"`
	Exclusions         EbooksDataSubsetExclusions      `xml:"exclusions"`
}

type EbooksDataSubsetSelfService added in v0.0.63

type EbooksDataSubsetSelfService struct {
	SelfServiceDisplayName      string                                `xml:"self_service_display_name"`
	InstallButtonText           string                                `xml:"install_button_text"`
	SelfServiceDescription      string                                `xml:"self_service_description"`
	ForceUsersToViewDescription bool                                  `xml:"force_users_to_view_description"`
	SelfServiceIcon             EbooksDataSubsetSelfServiceIcon       `xml:"self_service_icon"`
	FeatureOnMainPage           bool                                  `xml:"feature_on_main_page"`
	SelfServiceCategories       EbooksDataSubsetSelfServiceCategories `xml:"self_service_categories"`
	Notification                bool                                  `xml:"notification"`
	NotificationSubject         string                                `xml:"notification_subject"`
	NotificationMessage         string                                `xml:"notification_message"`
}

type EbooksDataSubsetSelfServiceCategories added in v0.0.63

type EbooksDataSubsetSelfServiceCategories struct {
	Category []EbooksDataSubsetCategory `xml:"category"`
}

SelfServiceCategories represent the categories within SelfService.

type EbooksDataSubsetSelfServiceIcon added in v0.0.63

type EbooksDataSubsetSelfServiceIcon struct {
	ID   int    `xml:"id"`
	URI  string `xml:"uri"`
	Data string `xml:"data"`
}

type EbooksDataSubsetSite added in v0.0.63

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

type EbooksDataSubsetUser added in v0.0.63

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

User represents a user within the scope.

type EbooksDataSubsetUserGroup added in v0.0.63

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

UserGroup represents a group of users within the scope.

type ExtensionAttribute added in v0.0.61

type ExtensionAttribute struct {
	ID    int    `xml:"id" json:"id"`
	Name  string `xml:"name" json:"name"`
	Type  string `xml:"type" json:"type"`
	Value string `xml:"value" json:"value"`
}

ExtensionAttribute represents a custom extension attribute of the computer

type Field added in v0.0.61

type Field struct {
	Name  string `xml:"name" json:"name"`
	Value string `xml:"value" json:"value"`
}

type FileVaultInventory added in v0.0.84

type FileVaultInventory struct {
	ComputerId                          string                                                    `json:"computerId"`
	Name                                string                                                    `json:"name"`
	PersonalRecoveryKey                 string                                                    `json:"personalRecoveryKey"`
	BootPartitionEncryptionDetails      ComputerInventoryDataSubsetBootPartitionEncryptionDetails `json:"bootPartitionEncryptionDetails"`
	IndividualRecoveryKeyValidityStatus string                                                    `json:"individualRecoveryKeyValidityStatus"`
	InstitutionalRecoveryKeyPresent     bool                                                      `json:"institutionalRecoveryKeyPresent"`
	DiskEncryptionConfigurationName     string                                                    `json:"diskEncryptionConfigurationName"`
}

FileVaultInventory represents the FileVault information for a single computer.

type FileVaultInventoryList added in v0.0.84

type FileVaultInventoryList struct {
	TotalCount int                  `json:"totalCount"`
	Results    []FileVaultInventory `json:"results"`
}

FileVaultInventoryList represents the paginated FileVault inventory response.

type Filevault2User added in v0.0.61

type Filevault2User struct {
	User string `xml:"user" json:"user"`
}

Filevault2User represents a user associated with FileVault 2

type Font added in v0.0.61

type Font struct {
	Name    string `xml:"name" json:"name"`
	Path    string `xml:"path" json:"path"`
	Version string `xml:"version" json:"version"`
}

Font represents a font installed on the computer

type General added in v0.0.61

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

type GroupMembership added in v0.0.61

type GroupMembership struct {
	Group string `xml:"group" json:"group"`
}

GroupMembership represents a membership of a computer in a group

type Groups

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

type GroupsAccounts added in v0.0.61

type GroupsAccounts struct {
	ComputerGroupMemberships []GroupMembership `xml:"computer_group_memberships>group" json:"computer_group_memberships"`
	LocalAccounts            []LocalAccount    `xml:"local_accounts>user" json:"local_accounts"`
}

GroupsAccounts contains information about group memberships and local accounts

type Hardware added in v0.0.61

type Hardware struct {
	Make                        string           `xml:"make" json:"make"`
	Model                       string           `xml:"model" json:"model"`
	ModelIdentifier             string           `xml:"model_identifier" json:"model_identifier"`
	OsName                      string           `xml:"os_name" json:"os_name"`
	OsVersion                   string           `xml:"os_version" json:"os_version"`
	OsBuild                     string           `xml:"os_build" json:"os_build"`
	MasterPasswordSet           bool             `xml:"master_password_set" json:"master_password_set"`
	ActiveDirectoryStatus       string           `xml:"active_directory_status" json:"active_directory_status"`
	ServicePack                 string           `xml:"service_pack" json:"service_pack"`
	ProcessorType               string           `xml:"processor_type" json:"processor_type"`
	ProcessorArchitecture       string           `xml:"processor_architecture" json:"processor_architecture"`
	ProcessorSpeed              int              `xml:"processor_speed" json:"processor_speed"`
	ProcessorSpeedMhz           int              `xml:"processor_speed_mhz" json:"processor_speed_mhz"`
	NumberProcessors            int              `xml:"number_processors" json:"number_processors"`
	NumberCores                 int              `xml:"number_cores" json:"number_cores"`
	TotalRam                    int              `xml:"total_ram" json:"total_ram"`
	TotalRamMb                  int              `xml:"total_ram_mb" json:"total_ram_mb"`
	BootRom                     string           `xml:"boot_rom" json:"boot_rom"`
	BusSpeed                    int              `xml:"bus_speed" json:"bus_speed"`
	BusSpeedMhz                 int              `xml:"bus_speed_mhz" json:"bus_speed_mhz"`
	BatteryCapacity             int              `xml:"battery_capacity" json:"battery_capacity"`
	CacheSize                   int              `xml:"cache_size" json:"cache_size"`
	CacheSizeKb                 int              `xml:"cache_size_kb" json:"cache_size_kb"`
	AvailableRamSlots           int              `xml:"available_ram_slots" json:"available_ram_slots"`
	OpticalDrive                string           `xml:"optical_drive" json:"optical_drive"`
	NicSpeed                    string           `xml:"nic_speed" json:"nic_speed"`
	SmcVersion                  string           `xml:"smc_version" json:"smc_version"`
	BleCapable                  bool             `xml:"ble_capable" json:"ble_capable"`
	SipStatus                   string           `xml:"sip_status" json:"sip_status"`
	GatekeeperStatus            string           `xml:"gatekeeper_status" json:"gatekeeper_status"`
	XprotectVersion             string           `xml:"xprotect_version" json:"xprotect_version"`
	InstitutionalRecoveryKey    string           `xml:"institutional_recovery_key" json:"institutional_recovery_key"`
	DiskEncryptionConfiguration string           `xml:"disk_encryption_configuration" json:"disk_encryption_configuration"`
	SoftwareUpdateDeviceID      string           `xml:"software_update_device_id,omitempty" json:"software_update_device_id,omitempty"`
	IsAppleSilicon              bool             `xml:"is_apple_silicon,omitempty" json:"is_apple_silicon,omitempty"`
	SupportsIosAppInstalls      bool             `xml:"supports_ios_app_installs,omitempty" json:"supports_ios_app_installs,omitempty"`
	Filevault2Users             []Filevault2User `xml:"filevault2_users>user" json:"filevault_2_users"`
	Storage                     []StorageDevice  `xml:"storage>device" json:"storage"`
	MappedPrinters              []Printer        `xml:"mapped_printers>printer" json:"mapped_printers"`
}

Hardware details of the computer

type IBeaconItem added in v0.0.66

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

IBeaconItem represents the structure of an individual iBeacon.

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 LDAPAccount added in v0.0.67

type LDAPAccount struct {
	DistinguishedUsername string `xml:"distinguished_username"`
	Password              string `xml:"password"`
}

type LDAPConnection added in v0.0.67

type LDAPConnection struct {
	ID                 int         `xml:"id"`
	Name               string      `xml:"name"`
	Hostname           string      `xml:"hostname"`
	ServerType         string      `xml:"server_type"`
	Port               int         `xml:"port"`
	UseSSL             bool        `xml:"use_ssl"`
	AuthenticationType string      `xml:"authentication_type"`
	Account            LDAPAccount `xml:"account"`
	OpenCloseTimeout   int         `xml:"open_close_timeout"`
	SearchTimeout      int         `xml:"search_timeout"`
	ReferralResponse   string      `xml:"referral_response"`
	UseWildcards       bool        `xml:"use_wildcards"`
}

type LDAPGroupMembershipMappings added in v0.0.67

type LDAPGroupMembershipMappings struct {
	UserGroupMembershipStoredIn       string `xml:"user_group_membership_stored_in"`
	MapGroupMembershipToUserField     string `xml:"map_group_membership_to_user_field"`
	AppendToUsername                  string `xml:"append_to_username"`
	UseDN                             bool   `xml:"use_dn"`
	RecursiveLookups                  bool   `xml:"recursive_lookups"`
	MapUserMembershipToGroupField     bool   `xml:"map_user_membership_to_group_field"`
	MapUserMembershipUseDN            bool   `xml:"map_user_membership_use_dn"`
	MapObjectClassToAnyOrAll          string `xml:"map_object_class_to_any_or_all"`
	ObjectClasses                     string `xml:"object_classes"`
	SearchBase                        string `xml:"search_base"`
	SearchScope                       string `xml:"search_scope"`
	Username                          string `xml:"username"`
	GroupID                           string `xml:"group_id"`
	UserGroupMembershipUseLDAPCompare bool   `xml:"user_group_membership_use_ldap_compare"`
}

type LDAPMappingsForUsers added in v0.0.67

type LDAPMappingsForUsers struct {
	UserMappings                LDAPUserMappings            `xml:"user_mappings"`
	UserGroupMappings           LDAPUserGroupMappings       `xml:"user_group_mappings"`
	UserGroupMembershipMappings LDAPGroupMembershipMappings `xml:"user_group_membership_mappings"`
}

type LDAPServerItem added in v0.0.67

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

type LDAPUserGroupMappings added in v0.0.67

type LDAPUserGroupMappings struct {
	MapObjectClassToAnyOrAll string `xml:"map_object_class_to_any_or_all"`
	ObjectClasses            string `xml:"object_classes"`
	SearchBase               string `xml:"search_base"`
	SearchScope              string `xml:"search_scope"`
	MapGroupID               string `xml:"map_group_id"`
	MapGroupName             string `xml:"map_group_name"`
	MapGroupUUID             string `xml:"map_group_uuid"`
}

type LDAPUserMappings added in v0.0.67

type LDAPUserMappings struct {
	MapObjectClassToAnyOrAll string `xml:"map_object_class_to_any_or_all"`
	ObjectClasses            string `xml:"object_classes"`
	SearchBase               string `xml:"search_base"`
	SearchScope              string `xml:"search_scope"`
	MapUserID                string `xml:"map_user_id"`
	MapUsername              string `xml:"map_username"`
	MapRealName              string `xml:"map_realname"`
	MapEmailAddress          string `xml:"map_email_address"`
	AppendToEmailResults     string `xml:"append_to_email_results"`
	MapDepartment            string `xml:"map_department"`
	MapBuilding              string `xml:"map_building"`
	MapRoom                  string `xml:"map_room"`
	MapTelephone             string `xml:"map_telephone"`
	MapPosition              string `xml:"map_position"`
	MapUserUUID              string `xml:"map_user_uuid"`
}

type LicenseDetail added in v0.0.68

type LicenseDetail struct {
	SerialNumber1    string                       `xml:"serial_number_1"`
	SerialNumber2    string                       `xml:"serial_number_2"`
	OrganizationName string                       `xml:"organization_name"`
	RegisteredTo     string                       `xml:"registered_to"`
	LicenseType      string                       `xml:"license_type"`
	LicenseCount     int                          `xml:"license_count"`
	Notes            string                       `xml:"notes"`
	Purchasing       PurchasingDetail             `xml:"purchasing"`
	Attachments      []LicensedSoftwareAttachment `xml:"attachments>attachment"`
}

type LicensedSoftwareAttachment added in v0.0.68

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

type LicensedSoftwareFontDefinition added in v0.0.68

type LicensedSoftwareFontDefinition struct {
	CompareType string `xml:"compare_type"`
	Name        string `xml:"name"`
	Version     int    `xml:"version"`
}

type LicensedSoftwareGeneral added in v0.0.68

type LicensedSoftwareGeneral struct {
	ID                                 int                  `xml:"id"`
	Name                               string               `xml:"name"`
	Publisher                          string               `xml:"publisher"`
	Platform                           string               `xml:"platform"`
	SendEmailOnViolation               bool                 `xml:"send_email_on_violation"`
	RemoveTitlesFromInventoryReports   bool                 `xml:"remove_titles_from_inventory_reports"`
	ExcludeTitlesPurchasedFromAppStore bool                 `xml:"exclude_titles_purchased_from_app_store"`
	Notes                              string               `xml:"notes"`
	Site                               LicensedSoftwareSite `xml:"site"`
}

type LicensedSoftwareItem added in v0.0.68

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

LicensedSoftwareItem represents a single licensed software item.

type LicensedSoftwareLicense added in v0.0.68

type LicensedSoftwareLicense struct {
	Size    int           `xml:"size"`
	License LicenseDetail `xml:"license"`
}

type LicensedSoftwarePluginDefinition added in v0.0.68

type LicensedSoftwarePluginDefinition struct {
	CompareType string `xml:"compare_type"`
	Name        string `xml:"name"`
	Version     int    `xml:"version"`
}

type LicensedSoftwareSite added in v0.0.68

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

type LocalAccount added in v0.0.61

type LocalAccount struct {
	Name             string `xml:"name" json:"name"`
	RealName         string `xml:"realname" json:"realname"`
	UID              string `xml:"uid" json:"uid"`
	Home             string `xml:"home" json:"home"`
	HomeSize         string `xml:"home_size" json:"home_size"`
	HomeSizeMb       int    `xml:"home_size_mb" json:"home_size_mb"`
	Administrator    bool   `xml:"administrator" json:"administrator"`
	FilevaultEnabled bool   `xml:"filevault_enabled" json:"filevault_enabled"`
}

LocalAccount represents a local account on the computer

type Location added in v0.0.61

type Location struct {
	Username     string `xml:"username" json:"username"`
	RealName     string `xml:"realname" json:"realname"`
	EmailAddress string `xml:"email_address" json:"email_address"`
	Position     string `xml:"position" json:"position"`
	Phone        string `xml:"phone" json:"phone"`
	PhoneNumber  string `xml:"phone_number" json:"phone_number"`
	Department   string `xml:"department" json:"department"`
	Building     string `xml:"building" json:"building"`
	Room         string `xml:"room" json:"room"`
}

Location details of the computer

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 MacAppBuilding added in v0.0.64

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

type MacAppCategory added in v0.0.64

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

type MacAppComputer added in v0.0.64

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

type MacAppComputerGroup added in v0.0.64

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

type MacAppDataSubsetGeneral added in v0.0.64

type MacAppDataSubsetGeneral struct {
	ID       int            `xml:"id"`
	Name     string         `xml:"name"`
	Version  string         `xml:"version"`
	IsFree   bool           `xml:"is_free"`
	BundleID string         `xml:"bundle_id"`
	URL      string         `xml:"url"`
	Category MacAppCategory `xml:"category"`
	Site     MacAppSite     `xml:"site"`
}

type MacAppDataSubsetScope added in v0.0.64

type MacAppDataSubsetScope struct {
	AllComputers   bool                       `xml:"all_computers"`
	AllJSSUsers    bool                       `xml:"all_jss_users"`
	Buildings      []MacAppScopeBuilding      `xml:"buildings>building"`
	Departments    []MacAppScopeDepartment    `xml:"departments>department"`
	Computers      []MacAppScopeComputer      `xml:"computers>computer"`
	ComputerGroups []MacAppScopeComputerGroup `xml:"computer_groups>computer_group"`
	JSSUsers       []MacAppScopeUser          `xml:"jss_users>user"`
	JSSUserGroups  []MacAppScopeUserGroup     `xml:"jss_user_groups>user_group"`
	Limitations    MacAppScopeLimitations     `xml:"limitations"`
	Exclusions     MacAppScopeExclusions      `xml:"exclusions"`
}

type MacAppDataSubsetSelfService added in v0.0.64

type MacAppDataSubsetSelfService struct {
	InstallButtonText           string                      `xml:"install_button_text"`
	SelfServiceDescription      string                      `xml:"self_service_description"`
	ForceUsersToViewDescription bool                        `xml:"force_users_to_view_description"`
	SelfServiceIcon             MacAppSelfServiceIcon       `xml:"self_service_icon"`
	FeatureOnMainPage           bool                        `xml:"feature_on_main_page"`
	SelfServiceCategories       []MacAppSelfServiceCategory `xml:"self_service_categories>category"`
	Notification                string                      `xml:"notification"`
	NotificationSubject         string                      `xml:"notification_subject"`
	NotificationMessage         string                      `xml:"notification_message"`
	VPP                         MacAppVPP                   `xml:"vpp"`
}

type MacAppDepartment added in v0.0.64

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

type MacAppScopeBuilding added in v0.0.64

type MacAppScopeBuilding struct {
	Building MacAppBuilding `xml:"building"`
}

Define structs for each scope component (Building, Department, Computer, etc.)

type MacAppScopeComputer added in v0.0.64

type MacAppScopeComputer struct {
	Computer MacAppComputer `xml:"computer"`
}

type MacAppScopeComputerGroup added in v0.0.64

type MacAppScopeComputerGroup struct {
	ComputerGroup MacAppComputerGroup `xml:"computer_group"`
}

type MacAppScopeDepartment added in v0.0.64

type MacAppScopeDepartment struct {
	Department MacAppDepartment `xml:"department"`
}

type MacAppScopeExclusions added in v0.0.64

type MacAppScopeExclusions struct {
	Buildings       []MacAppScopeBuilding       `xml:"buildings>building"`
	Departments     []MacAppScopeDepartment     `xml:"departments>department"`
	Users           []MacAppScopeUser           `xml:"users>user"`
	UserGroups      []MacAppScopeUserGroup      `xml:"user_groups>user_group"`
	NetworkSegments []MacAppScopeNetworkSegment `xml:"network_segments>network_segment"`
	Computers       []MacAppScopeComputer       `xml:"computers>computer"`
	ComputerGroups  []MacAppScopeComputerGroup  `xml:"computer_groups>computer_group"`
	JSSUsers        []MacAppScopeUser           `xml:"jss_users>user"`
	JSSUserGroups   []MacAppScopeUserGroup      `xml:"jss_user_groups>user_group"`
}

type MacAppScopeLimitations added in v0.0.64

type MacAppScopeLimitations struct {
	Users           []MacAppScopeUser           `xml:"users>user"`
	UserGroups      []MacAppScopeUserGroup      `xml:"user_groups>user_group"`
	NetworkSegments []MacAppScopeNetworkSegment `xml:"network_segments>network_segment"`
}

type MacAppScopeNetworkSegment added in v0.0.64

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

type MacAppScopeUser added in v0.0.64

type MacAppScopeUser struct {
	User MacAppUser `xml:"user"`
}

type MacAppScopeUserGroup added in v0.0.64

type MacAppScopeUserGroup struct {
	UserGroup MacAppUserGroup `xml:"user_group"`
}

type MacAppSelfServiceCategory added in v0.0.64

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

type MacAppSelfServiceIcon added in v0.0.64

type MacAppSelfServiceIcon struct {
	ID   int    `xml:"id"`
	URI  string `xml:"uri"`
	Data string `xml:"data"`
}

type MacAppSite added in v0.0.64

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

type MacAppUser added in v0.0.64

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

type MacAppUserGroup added in v0.0.64

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

type MacAppVPP added in v0.0.64

type MacAppVPP struct {
	AssignVPPDeviceBasedLicenses bool `xml:"assign_vpp_device_based_licenses"`
	VPPAdminAccountID            int  `xml:"vpp_admin_account_id"`
}

type MacApplication added in v0.0.64

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

type MacOSConfigurationProfileListItem added in v0.0.11

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

type MacOSConfigurationProfilesDataSubsetBuilding added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetCategory added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetComputer added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetComputerGroup added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetDepartment added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetExclusions added in v0.0.66

type MacOSConfigurationProfilesDataSubsetExclusions struct {
	Computers       []MacOSConfigurationProfilesDataSubsetComputer       `xml:"computers,omitempty"`
	ComputerGroups  []MacOSConfigurationProfilesDataSubsetComputerGroup  `xml:"computer_groups,omitempty"`
	Users           []MacOSConfigurationProfilesDataSubsetUser           `xml:"users,omitempty"`
	UserGroups      []MacOSConfigurationProfilesDataSubsetUserGroup      `xml:"user_groups,omitempty"`
	Buildings       []MacOSConfigurationProfilesDataSubsetBuilding       `xml:"buildings,omitempty"`
	Departments     []MacOSConfigurationProfilesDataSubsetDepartment     `xml:"departments,omitempty"`
	NetworkSegments []MacOSConfigurationProfilesDataSubsetNetworkSegment `xml:"network_segments,omitempty"`
	JSSUsers        []MacOSConfigurationProfilesDataSubsetJSSUser        `xml:"jss_users,omitempty"`
	JSSUserGroups   []MacOSConfigurationProfilesDataSubsetJSSUserGroup   `xml:"jss_user_groups,omitempty"`
	IBeacons        []MacOSConfigurationProfilesDataSubsetIBeacon        `xml:"ibeacons,omitempty"`
}

type MacOSConfigurationProfilesDataSubsetGeneral added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetIBeacon added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetJSSUser added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetJSSUserGroup added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetLimitations added in v0.0.66

type MacOSConfigurationProfilesDataSubsetLimitations struct {
	Users           []MacOSConfigurationProfilesDataSubsetUser           `xml:"users>user,omitempty"`
	UserGroups      []MacOSConfigurationProfilesDataSubsetUserGroup      `xml:"user_groups>user_group,omitempty"`
	NetworkSegments []MacOSConfigurationProfilesDataSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	IBeacons        []MacOSConfigurationProfilesDataSubsetIBeacon        `xml:"ibeacons>ibeacon,omitempty"`
}

type MacOSConfigurationProfilesDataSubsetNetworkSegment added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetScope added in v0.0.66

type MacOSConfigurationProfilesDataSubsetScope struct {
	AllComputers   bool                                                `xml:"all_computers,omitempty"`
	AllJSSUsers    bool                                                `xml:"all_jss_users,omitempty"`
	Computers      []MacOSConfigurationProfilesDataSubsetComputer      `xml:"computers>computer,omitempty"`
	ComputerGroups []MacOSConfigurationProfilesDataSubsetComputerGroup `xml:"computer_groups>computer_group,omitempty"`
	JSSUsers       []MacOSConfigurationProfilesDataSubsetJSSUser       `xml:"jss_users>jss_user,omitempty"`
	JSSUserGroups  []MacOSConfigurationProfilesDataSubsetJSSUserGroup  `xml:"jss_user_groups>jss_user_group,omitempty"`
	Buildings      []MacOSConfigurationProfilesDataSubsetBuilding      `xml:"buildings>building,omitempty"`
	Departments    []MacOSConfigurationProfilesDataSubsetDepartment    `xml:"departments>department,omitempty"`
	Limitations    MacOSConfigurationProfilesDataSubsetLimitations     `xml:"limitations,omitempty"`
	Exclusions     MacOSConfigurationProfilesDataSubsetExclusions      `xml:"exclusions,omitempty"`
}

type MacOSConfigurationProfilesDataSubsetSelfService added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetSelfServiceCategories added in v0.0.66

type MacOSConfigurationProfilesDataSubsetSelfServiceCategories struct {
	Category MacOSConfigurationProfilesDataSubsetSelfServiceCategory `xml:"category,omitempty"`
}

type MacOSConfigurationProfilesDataSubsetSelfServiceCategory added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetSelfServiceIcon added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetSite added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetUser added in v0.0.66

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

type MacOSConfigurationProfilesDataSubsetUserGroup added in v0.0.66

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

type ManagementStatus added in v0.0.61

type ManagementStatus struct {
	EnrolledViaDep         bool `xml:"enrolled_via_dep" json:"enrolled_via_dep"`
	UserApprovedEnrollment bool `xml:"user_approved_enrollment" json:"user_approved_enrollment"`
	UserApprovedMdm        bool `xml:"user_approved_mdm" json:"user_approved_mdm"`
}

type MdmCapableUsers added in v0.0.61

type MdmCapableUsers struct {
	MdmCapableUser string `xml:"mdm_capable_user" json:"mdm_capable_user"`
}

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 MobileDeviceApplicationBuilding added in v0.0.69

type MobileDeviceApplicationBuilding struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationCategory added in v0.0.69

type MobileDeviceApplicationCategory struct {
	ID   int    `xml:"id,omitempty"` // ID is optional
	Name string `xml:"name"`         // Name is required
}

type MobileDeviceApplicationConfiguration added in v0.0.69

type MobileDeviceApplicationConfiguration struct {
	Preferences string `xml:"preferences,omitempty"` // Optional as per the documentation.
}

type MobileDeviceApplicationDepartment added in v0.0.69

type MobileDeviceApplicationDepartment struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationExclusion added in v0.0.69

type MobileDeviceApplicationExclusion struct {
	MobileDevices      []MobileDeviceApplicationMobileDevice      `xml:"mobile_devices>mobile_device,omitempty"`             // Optional
	Buildings          []MobileDeviceApplicationBuilding          `xml:"buildings>building,omitempty"`                       // Optional
	Departments        []MobileDeviceApplicationDepartment        `xml:"departments>department,omitempty"`                   // Optional
	MobileDeviceGroups []MobileDeviceApplicationMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group,omitempty"` // Optional
	JSSUsers           []MobileDeviceApplicationJSSUser           `xml:"jss_users>user,omitempty"`                           // Optional
	JSSUserGroups      []MobileDeviceApplicationJSSUserGroup      `xml:"jss_user_groups>user_group,omitempty"`               // Optional
}

type MobileDeviceApplicationGeneral added in v0.0.69

type MobileDeviceApplicationGeneral struct {
	ID                               int                             `xml:"id,omitempty"`
	Name                             string                          `xml:"name"`
	DisplayName                      string                          `xml:"display_name"`
	Description                      string                          `xml:"description,omitempty"`
	BundleID                         string                          `xml:"bundle_id"`
	Version                          string                          `xml:"version"`
	InternalApp                      bool                            `xml:"internal_app,omitempty"`
	OsType                           string                          `xml:"os_type,omitempty"`
	Category                         MobileDeviceApplicationCategory `xml:"category"`
	IPA                              MobileDeviceApplicationIPA      `xml:"ipa,omitempty"`
	Icon                             MobileDeviceApplicationIcon     `xml:"icon"`
	ProvisioningProfile              int                             `xml:"mobile_device_provisioning_profile,omitempty"`
	ITunesStoreURL                   string                          `xml:"itunes_store_url,omitempty"`
	MakeAvailableAfterInstall        bool                            `xml:"make_available_after_install,omitempty"`
	ITunesCountryRegion              string                          `xml:"itunes_country_region,omitempty"`
	ITunesSyncTime                   int                             `xml:"itunes_sync_time,omitempty"`
	DeploymentType                   string                          `xml:"deployment_type,omitempty"`
	DeployAutomatically              bool                            `xml:"deploy_automatically,omitempty"`
	DeployAsManagedApp               bool                            `xml:"deploy_as_managed_app,omitempty"`
	RemoveAppWhenMDMProfileIsRemoved bool                            `xml:"remove_app_when_mdm_profile_is_removed,omitempty"`
	PreventBackupOfAppData           bool                            `xml:"prevent_backup_of_app_data,omitempty"`
	KeepDescriptionAndIconUpToDate   bool                            `xml:"keep_description_and_icon_up_to_date,omitempty"`
	Free                             bool                            `xml:"free,omitempty"`
	TakeOverManagement               bool                            `xml:"take_over_management,omitempty"`
	HostExternally                   bool                            `xml:"host_externally,omitempty"`
	ExternalURL                      string                          `xml:"external_url,omitempty"`
	Site                             MobileDeviceApplicationSite     `xml:"site"`
}

type MobileDeviceApplicationIPA added in v0.0.69

type MobileDeviceApplicationIPA struct {
	Name string `xml:"name,omitempty"` // Optional fields
	URI  string `xml:"uri,omitempty"`
	Data string `xml:"data,omitempty"`
}

type MobileDeviceApplicationIcon added in v0.0.69

type MobileDeviceApplicationIcon struct {
	ID   int    `xml:"id,omitempty"` // ID is optional
	Name string `xml:"name"`         // Name is required
	URI  string `xml:"uri,omitempty"`
	Data string `xml:"data,omitempty"`
}

type MobileDeviceApplicationItem added in v0.0.69

type MobileDeviceApplicationItem struct {
	ID          int    `xml:"id"`
	Name        string `xml:"name"`
	DisplayName string `xml:"display_name"`
	BundleID    string `xml:"bundle_id"`
	Version     string `xml:"version"`
	InternalApp bool   `xml:"internal_app"`
}

MobileDeviceApplicationItem represents a single mobile device application item.

type MobileDeviceApplicationJSSUser added in v0.0.69

type MobileDeviceApplicationJSSUser struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationJSSUserGroup added in v0.0.69

type MobileDeviceApplicationJSSUserGroup struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationLimitation added in v0.0.69

type MobileDeviceApplicationLimitation struct {
	Users           []MobileDeviceApplicationUser           `xml:"users>user,omitempty"`                       // Optional
	UserGroups      []MobileDeviceApplicationUserGroup      `xml:"user_groups>user_group,omitempty"`           // Optional
	NetworkSegments []MobileDeviceApplicationNetworkSegment `xml:"network_segments>network_segment,omitempty"` // Optional
}

type MobileDeviceApplicationMobileDevice added in v0.0.69

type MobileDeviceApplicationMobileDevice struct {
	ID             int    `xml:"id,omitempty"`               // ID is optional
	Name           string `xml:"name,omitempty"`             // Name is optional
	UDID           string `xml:"udid,omitempty"`             // UDID is optional
	WifiMacAddress string `xml:"wifi_mac_address,omitempty"` // WifiMacAddress is optional
}

type MobileDeviceApplicationMobileDeviceGroup added in v0.0.69

type MobileDeviceApplicationMobileDeviceGroup struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationNetworkSegment added in v0.0.69

type MobileDeviceApplicationNetworkSegment struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	UID  string `xml:"uid,omitempty"`  // UID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationScope added in v0.0.69

type MobileDeviceApplicationScope struct {
	AllMobileDevices   bool                                       `xml:"all_mobile_devices,omitempty"`
	AllJSSUsers        bool                                       `xml:"all_jss_users,omitempty"`
	MobileDevices      []MobileDeviceApplicationMobileDevice      `xml:"mobile_devices>mobile_device,omitempty"`
	Buildings          []MobileDeviceApplicationBuilding          `xml:"buildings>building,omitempty"`
	Departments        []MobileDeviceApplicationDepartment        `xml:"departments>department,omitempty"`
	MobileDeviceGroups []MobileDeviceApplicationMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group,omitempty"`
	JSSUsers           []MobileDeviceApplicationJSSUser           `xml:"jss_users>user,omitempty"`
	JSSUserGroups      []MobileDeviceApplicationJSSUserGroup      `xml:"jss_user_groups>user_group,omitempty"`
	Limitations        MobileDeviceApplicationLimitation          `xml:"limitations,omitempty"`
	Exclusions         MobileDeviceApplicationExclusion           `xml:"exclusions,omitempty"`
}

type MobileDeviceApplicationSelfService added in v0.0.69

type MobileDeviceApplicationSelfService struct {
	SelfServiceDescription string                      `xml:"self_service_description,omitempty"`         // Optional
	SelfServiceIcon        MobileDeviceApplicationIcon `xml:"self_service_icon,omitempty"`                // Optional
	FeatureOnMainPage      bool                        `xml:"feature_on_main_page,omitempty"`             // Optional
	SelfServiceCategories  []SelfServiceCategoryItem   `xml:"self_service_categories>category,omitempty"` // Optional
	Notification           bool                        `xml:"notification,omitempty"`                     // Optional
	NotificationSubject    string                      `xml:"notification_subject,omitempty"`             // Optional
	NotificationMessage    string                      `xml:"notification_message,omitempty"`             // Optional
}

type MobileDeviceApplicationSite added in v0.0.69

type MobileDeviceApplicationSite struct {
	ID   int    `xml:"id,omitempty"` // ID is optional
	Name string `xml:"name"`         // Name is required
}

type MobileDeviceApplicationUser added in v0.0.69

type MobileDeviceApplicationUser struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationUserGroup added in v0.0.69

type MobileDeviceApplicationUserGroup struct {
	ID   int    `xml:"id,omitempty"`   // ID is optional
	Name string `xml:"name,omitempty"` // Name is optional
}

type MobileDeviceApplicationVPP added in v0.0.69

type MobileDeviceApplicationVPP struct {
	AssignVPPDeviceBasedLicenses bool `xml:"assign_vpp_device_based_licenses,omitempty"` // Optional as per the documentation.
	VPPAdminAccountID            int  `xml:"vpp_admin_account_id,omitempty"`             // Optional as per the documentation.
}

type MobileDeviceConfigurationProfileBuilding added in v0.0.72

type MobileDeviceConfigurationProfileBuilding struct {
	Building MobileDeviceConfigurationProfileBuildingDetail `xml:"building"`
}

type MobileDeviceConfigurationProfileBuildingDetail added in v0.0.72

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

type MobileDeviceConfigurationProfileCategory added in v0.0.72

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

type MobileDeviceConfigurationProfileCategoryDetail added in v0.0.72

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

type MobileDeviceConfigurationProfileDepartment added in v0.0.72

type MobileDeviceConfigurationProfileDepartment struct {
	Department MobileDeviceConfigurationProfileDepartmentDetail `xml:"department"`
}

type MobileDeviceConfigurationProfileDepartmentDetail added in v0.0.72

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

type MobileDeviceConfigurationProfileDevice added in v0.0.72

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

type MobileDeviceConfigurationProfileDeviceGroup added in v0.0.72

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

type MobileDeviceConfigurationProfileExclusion added in v0.0.72

type MobileDeviceConfigurationProfileExclusion struct {
	MobileDevices      []MobileDeviceConfigurationProfileMobileDevice      `xml:"mobile_devices>mobile_device,omitempty"`
	Buildings          []MobileDeviceConfigurationProfileBuilding          `xml:"buildings>building,omitempty"`
	Departments        []MobileDeviceConfigurationProfileDepartment        `xml:"departments>department,omitempty"`
	MobileDeviceGroups []MobileDeviceConfigurationProfileMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group,omitempty"`
	Users              []MobileDeviceConfigurationProfileUser              `xml:"users>user,omitempty"`
	UserGroups         []MobileDeviceConfigurationProfileUserGroup         `xml:"user_groups>user_group,omitempty"`
	NetworkSegments    []MobileDeviceConfigurationProfileNetworkSegment    `xml:"network_segments>network_segment,omitempty"`
	Ibeacons           []MobileDeviceConfigurationProfileIbeacon           `xml:"ibeacons>ibeacon,omitempty"`
	JSSUsers           []MobileDeviceConfigurationProfileJSSUser           `xml:"jss_users>user,omitempty"`
	JSSUserGroups      []MobileDeviceConfigurationProfileJSSUserGroup      `xml:"jss_user_groups>user_group,omitempty"`
}

type MobileDeviceConfigurationProfileGeneral added in v0.0.72

type MobileDeviceConfigurationProfileGeneral struct {
	ID                            int                                      `xml:"id"`
	Name                          string                                   `xml:"name"`
	Description                   string                                   `xml:"description,omitempty"`
	Level                         string                                   `xml:"level,omitempty"`
	Site                          MobileDeviceConfigurationProfileSite     `xml:"site"`
	Category                      MobileDeviceConfigurationProfileCategory `xml:"category"`
	UUID                          string                                   `xml:"uuid,omitempty"`
	DeploymentMethod              string                                   `xml:"deployment_method,omitempty"`
	RedeployOnUpdate              string                                   `xml:"redeploy_on_update,omitempty"`
	RedeployDaysBeforeCertExpires int                                      `xml:"redeploy_Dayss_before_certificate_expires,omitempty"`
	Payloads                      string                                   `xml:"payloads,omitempty"`
}

ConfigurationProfileGeneral contains general information about the configuration profile.

type MobileDeviceConfigurationProfileIbeacon added in v0.0.72

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

type MobileDeviceConfigurationProfileJSSUser added in v0.0.72

type MobileDeviceConfigurationProfileJSSUser struct {
	User MobileDeviceConfigurationProfileUser `xml:"user"`
}

type MobileDeviceConfigurationProfileJSSUserGroup added in v0.0.72

type MobileDeviceConfigurationProfileJSSUserGroup struct {
	UserGroup MobileDeviceConfigurationProfileUserGroup `xml:"user_group"`
}

type MobileDeviceConfigurationProfileLimitation added in v0.0.72

type MobileDeviceConfigurationProfileLimitation struct {
	Users           []MobileDeviceConfigurationProfileUser           `xml:"users>user,omitempty"`
	UserGroups      []MobileDeviceConfigurationProfileUserGroup      `xml:"user_groups>user_group,omitempty"`
	NetworkSegments []MobileDeviceConfigurationProfileNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	Ibeacons        []MobileDeviceConfigurationProfileIbeacon        `xml:"ibeacons>ibeacon,omitempty"`
}

type MobileDeviceConfigurationProfileMobileDevice added in v0.0.72

type MobileDeviceConfigurationProfileMobileDevice struct {
	MobileDevice MobileDeviceConfigurationProfileDevice `xml:"mobile_device"`
}

type MobileDeviceConfigurationProfileMobileDeviceGroup added in v0.0.72

type MobileDeviceConfigurationProfileMobileDeviceGroup struct {
	MobileDeviceGroup MobileDeviceConfigurationProfileDeviceGroup `xml:"mobile_device_group"`
}

type MobileDeviceConfigurationProfileNetworkSegment added in v0.0.72

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

type MobileDeviceConfigurationProfileScope added in v0.0.72

type MobileDeviceConfigurationProfileScope struct {
	AllMobileDevices   bool                                                `xml:"all_mobile_devices,omitempty"`
	AllJSSUsers        bool                                                `xml:"all_jss_users,omitempty"`
	MobileDevices      []MobileDeviceConfigurationProfileMobileDevice      `xml:"mobile_devices>mobile_device,omitempty"`
	Buildings          []MobileDeviceConfigurationProfileBuilding          `xml:"buildings>building,omitempty"`
	Departments        []MobileDeviceConfigurationProfileDepartment        `xml:"departments>department,omitempty"`
	MobileDeviceGroups []MobileDeviceConfigurationProfileMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group,omitempty"`
	JSSUsers           []MobileDeviceConfigurationProfileJSSUser           `xml:"jss_users>user,omitempty"`
	JSSUserGroups      []MobileDeviceConfigurationProfileJSSUserGroup      `xml:"jss_user_groups>user_group,omitempty"`
	Limitations        MobileDeviceConfigurationProfileLimitation          `xml:"limitations,omitempty"`
	Exclusions         MobileDeviceConfigurationProfileExclusion           `xml:"exclusions,omitempty"`
}

ConfigurationProfileScope defines the scope of the configuration profile.

type MobileDeviceConfigurationProfileSecurityName added in v0.0.72

type MobileDeviceConfigurationProfileSecurityName struct {
	RemovalDisallowed string `xml:"removal_disallowed,omitempty"`
}

type MobileDeviceConfigurationProfileSelfService added in v0.0.72

type MobileDeviceConfigurationProfileSelfService struct {
	SelfServiceDescription string                                                `xml:"self_service_description,omitempty"`
	SecurityName           MobileDeviceConfigurationProfileSecurityName          `xml:"security_name,omitempty"`
	SelfServiceIcon        MobileDeviceConfigurationProfileSelfServiceIcon       `xml:"self_service_icon,omitempty"`
	FeatureOnMainPage      bool                                                  `xml:"feature_on_main_page,omitempty"`
	SelfServiceCategories  []MobileDeviceConfigurationProfileSelfServiceCategory `xml:"self_service_categories>category,omitempty"`
}

type MobileDeviceConfigurationProfileSelfServiceCategory added in v0.0.72

type MobileDeviceConfigurationProfileSelfServiceCategory struct {
	Category MobileDeviceConfigurationProfileCategoryDetail `xml:"category"`
}

type MobileDeviceConfigurationProfileSelfServiceIcon added in v0.0.72

type MobileDeviceConfigurationProfileSelfServiceIcon struct {
	Filename string `xml:"filename,omitempty"`
	URI      string `xml:"uri,omitempty"`
	Data     string `xml:"data,omitempty"`
}

type MobileDeviceConfigurationProfileSite added in v0.0.72

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

type MobileDeviceConfigurationProfileUser added in v0.0.72

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

type MobileDeviceConfigurationProfileUserGroup added in v0.0.72

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

type MobileDeviceConfigurationProfiles added in v0.0.72

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

ConfigurationProfile represents a single mobile device configuration profile.

type MobileDeviceEnrollmentProfileAttachment added in v0.0.72

type MobileDeviceEnrollmentProfileAttachment struct {
	Attachment MobileDeviceEnrollmentProfileAttachmentItem `xml:"attachment"`
}

MobileDeviceEnrollmentProfileAttachment represents an attachment in the enrollment profile.

type MobileDeviceEnrollmentProfileAttachmentItem added in v0.0.72

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

MobileDeviceEnrollmentProfileAttachmentItem contains details of an attachment.

type MobileDeviceEnrollmentProfileGeneral added in v0.0.72

type MobileDeviceEnrollmentProfileGeneral struct {
	ID          int    `xml:"id"`
	Name        string `xml:"name"`
	Invitation  string `xml:"invitation,omitempty"`
	UDID        string `xml:"udid,omitempty"`
	Description string `xml:"description,omitempty"`
}

MobileDeviceEnrollmentProfileGeneral contains general information about the enrollment profile.

type MobileDeviceEnrollmentProfileItem added in v0.0.72

type MobileDeviceEnrollmentProfileItem struct {
	ID         int     `xml:"id"`
	Name       string  `xml:"name"`
	Invitation float64 `xml:"invitation"`
}

MobileDeviceEnrollmentProfileItem represents a single mobile device enrollment profile item.

type MobileDeviceEnrollmentProfileLocation added in v0.0.72

type MobileDeviceEnrollmentProfileLocation struct {
	Username     string `xml:"username,omitempty"`
	Realname     string `xml:"realname,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         int    `xml:"room,omitempty"`
}

MobileDeviceEnrollmentProfileLocation contains location information of the enrollment profile.

type MobileDeviceEnrollmentProfilePurchasing added in v0.0.72

type MobileDeviceEnrollmentProfilePurchasing struct {
	IsPurchased          bool   `xml:"is_purchased"`
	IsLeased             bool   `xml:"is_leased"`
	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"`
}

MobileDeviceEnrollmentProfilePurchasing contains purchasing information of the enrollment profile.

type MobileDeviceExtensionAttributeItem added in v0.0.72

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

MobileDeviceExtensionAttributeItem represents a single mobile device extension attribute item.

type MobileDeviceGroup added in v0.0.63

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

MobileDeviceGroup represents a group of mobile devices within the scope.

type MobileDeviceGroupCriteriaItem added in v0.0.75

type MobileDeviceGroupCriteriaItem 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,omitempty"`
	ClosingParen bool   `xml:"closing_paren,omitempty"`
}

MobileDeviceGroupCriteriaItem represents a single criterion within a mobile device group.

type MobileDeviceGroupDeviceItem added in v0.0.75

type MobileDeviceGroupDeviceItem struct {
	ID             int    `xml:"id"`
	Name           string `xml:"name"`
	MacAddress     string `xml:"mac_address,omitempty"`
	UDID           string `xml:"udid"`
	WifiMacAddress string `xml:"wifi_mac_address,omitempty"`
	SerialNumber   string `xml:"serial_number,omitempty"`
}

MobileDeviceGroupDeviceItem represents a single mobile device within a group.

type MobileDeviceGroupItem added in v0.0.75

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

MobileDeviceGroupItem represents a single mobile device group item.

type MobileDeviceGroupSite added in v0.0.75

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

MobileDeviceGroupSite represents the site information for a mobile device group.

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 MobileDeviceProvisioningProfileGeneral added in v0.0.76

type MobileDeviceProvisioningProfileGeneral struct {
	ID          int    `xml:"id"`
	Name        string `xml:"name"`
	DisplayName string `xml:"display_name"`
	UUID        string `xml:"uuid"`
}

MobileDeviceProvisioningProfileGeneral contains general information about the provisioning profile.

type MobileDeviceProvisioningProfileItem added in v0.0.76

type MobileDeviceProvisioningProfileItem struct {
	ID          int    `xml:"id"`
	Name        string `xml:"name"`
	DisplayName string `xml:"display_name"`
	UUID        string `xml:"uuid"`
}

MobileDeviceProvisioningProfileItem represents a single mobile device provisioning profile item.

type MobileDevicesDataSubsetApplication added in v0.0.83

type MobileDevicesDataSubsetApplication struct {
	ApplicationName    string `xml:"application_name"`
	ApplicationVersion string `xml:"application_version"`
	Identifier         string `xml:"identifier"`
}

Struct for Application

type MobileDevicesDataSubsetCertificate added in v0.0.83

type MobileDevicesDataSubsetCertificate struct {
	CommonName string `xml:"common_name"`
	Identity   bool   `xml:"identity"`
}

Struct for Certificate

type MobileDevicesDataSubsetConfigurationProfile added in v0.0.83

type MobileDevicesDataSubsetConfigurationProfile struct {
	DisplayName string `xml:"display_name"`
	Version     int    `xml:"version"`
	Identifier  string `xml:"identifier"`
	UUID        string `xml:"uuid"`
}

Struct for ConfigurationProfile

type MobileDevicesDataSubsetExtensionAttribute added in v0.0.83

type MobileDevicesDataSubsetExtensionAttribute struct {
	ID    int    `xml:"id"`
	Name  string `xml:"name"`
	Type  string `xml:"type"`
	Value string `xml:"value"`
}

Struct for ExtensionAttribute

type MobileDevicesDataSubsetGeneral added in v0.0.83

type MobileDevicesDataSubsetGeneral struct {
	ID                                 int    `xml:"id"`
	DisplayName                        string `xml:"display_name"`
	DeviceName                         string `xml:"device_name"`
	Name                               string `xml:"name"`
	AssetTag                           string `xml:"asset_tag"`
	LastInventoryUpdate                string `xml:"last_inventory_update"`
	LastInventoryUpdateEpoch           int64  `xml:"last_inventory_update_epoch"`
	LastInventoryUpdateUTC             string `xml:"last_inventory_update_utc"`
	Capacity                           int    `xml:"capacity"`
	CapacityMB                         int    `xml:"capacity_mb"`
	Available                          int    `xml:"available"`
	AvailableMB                        int    `xml:"available_mb"`
	PercentageUsed                     int    `xml:"percentage_used"`
	OSType                             string `xml:"os_type"`
	OSVersion                          string `xml:"os_version"`
	OSBuild                            string `xml:"os_build"`
	SerialNumber                       string `xml:"serial_number"`
	UDID                               string `xml:"udid"`
	InitialEntryDateEpoch              int64  `xml:"initial_entry_date_epoch"`
	InitialEntryDateUTC                string `xml:"initial_entry_date_utc"`
	PhoneNumber                        string `xml:"phone_number"`
	IPAddress                          string `xml:"ip_address"`
	WifiMacAddress                     string `xml:"wifi_mac_address"`
	BluetoothMacAddress                string `xml:"bluetooth_mac_address"`
	ModemFirmware                      string `xml:"modem_firmware"`
	Model                              string `xml:"model"`
	ModelIdentifier                    string `xml:"model_identifier"`
	ModelNumber                        string `xml:"model_number"`
	ModelDisplay                       string `xml:"model_display"`
	DeviceOwnershipLevel               string `xml:"device_ownership_level"`
	LastEnrollmentEpoch                int64  `xml:"last_enrollment_epoch"`
	LastEnrollmentUTC                  string `xml:"last_enrollment_utc"`
	Managed                            bool   `xml:"managed"`
	Supervised                         bool   `xml:"supervised"`
	ExchangeActiveSyncDeviceIdentifier string `xml:"exchange_activesync_device_identifier"`
	Shared                             string `xml:"shared"`
	Tethered                           string `xml:"tethered"`
	BatteryLevel                       int    `xml:"battery_level"`
	BLECapable                         bool   `xml:"ble_capable"`
	DeviceLocatorServiceEnabled        bool   `xml:"device_locator_service_enabled"`
	DoNotDisturbEnabled                bool   `xml:"do_not_disturb_enabled"`
	CloudBackupEnabled                 bool   `xml:"cloud_backup_enabled"`
	LastCloudBackupDateEpoch           int64  `xml:"last_cloud_backup_date_epoch"`
	LastCloudBackupDateUTC             string `xml:"last_cloud_backup_date_utc"`
	LocationServicesEnabled            bool   `xml:"location_services_enabled"`
	ItunesStoreAccountIsActive         bool   `xml:"itunes_store_account_is_active"`
	LastBackupTimeEpoch                int64  `xml:"last_backup_time_epoch"`
	LastBackupTimeUTC                  string `xml:"last_backup_time_utc"`
}

type MobileDevicesDataSubsetLocation added in v0.0.83

type MobileDevicesDataSubsetLocation struct {
	Username     string `xml:"username"`
	RealName     string `xml:"realname"`
	EmailAddress string `xml:"email_address"`
	Position     string `xml:"position"`
	Phone        string `xml:"phone"`
	PhoneNumber  string `xml:"phone_number"`
	Department   string `xml:"department"`
	Building     string `xml:"building"`
	Room         int    `xml:"room"`
}

type MobileDevicesDataSubsetMobileDeviceGroup added in v0.0.83

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

Struct for MobileDeviceGroup

type MobileDevicesDataSubsetNetwork added in v0.0.83

type MobileDevicesDataSubsetNetwork struct {
	HomeCarrierNetwork       string `xml:"home_carrier_network"`
	CellularTechnology       string `xml:"cellular_technology"`
	VoiceRoamingEnabled      string `xml:"voice_roaming_enabled"`
	IMEI                     string `xml:"imei"`
	ICCID                    string `xml:"iccid"`
	CurrentCarrierNetwork    string `xml:"current_carrier_network"`
	CarrierSettingsVersion   int    `xml:"carrier_settings_version"`
	CurrentMobileCountryCode int    `xml:"current_mobile_country_code"`
	CurrentMobileNetworkCode int    `xml:"current_mobile_network_code"`
	HomeMobileCountryCode    int    `xml:"home_mobile_country_code"`
	HomeMobileNetworkCode    int    `xml:"home_mobile_network_code"`
	DataRoamingEnabled       bool   `xml:"data_roaming_enabled"`
	PhoneNumber              string `xml:"phone_number"`
}

Struct for Network

type MobileDevicesDataSubsetProvisioningProfile added in v0.0.83

type MobileDevicesDataSubsetProvisioningProfile struct {
	DisplayName         string `xml:"display_name"`
	ExpirationDate      string `xml:"expiration_date"`
	ExpirationDateEpoch int64  `xml:"expiration_date_epoch"`
	ExpirationDateUTC   string `xml:"expiration_date_utc"`
	UUID                string `xml:"uuid"`
}

Struct for ProvisioningProfile

type MobileDevicesDataSubsetPurchasing added in v0.0.83

type MobileDevicesDataSubsetPurchasing struct {
	IsPurchased          bool   `xml:"is_purchased"`
	IsLeased             bool   `xml:"is_leased"`
	PONumber             string `xml:"po_number"`
	Vendor               string `xml:"vendor"`
	ApplecareID          string `xml:"applecare_id"`
	PurchasePrice        string `xml:"purchase_price"`
	PurchasingAccount    string `xml:"purchasing_account"`
	PODate               string `xml:"po_date"`
	PODateEpoch          int64  `xml:"po_date_epoch"`
	PODateUTC            string `xml:"po_date_utc"`
	WarrantyExpires      string `xml:"warranty_expires"`
	WarrantyExpiresEpoch int64  `xml:"warranty_expires_epoch"`
	WarrantyExpiresUTC   string `xml:"warranty_expires_utc"`
	LeaseExpires         string `xml:"lease_expires"`
	LeaseExpiresEpoch    int64  `xml:"lease_expires_epoch"`
	LeaseExpiresUTC      string `xml:"lease_expires_utc"`
	LifeExpectancy       int    `xml:"life_expectancy"`
	PurchasingContact    string `xml:"purchasing_contact"`
}

type MobileDevicesDataSubsetSecurityObject added in v0.0.83

type MobileDevicesDataSubsetSecurityObject struct {
	DataProtection                  bool    `xml:"data_protection"`
	BlockLevelEncryptionCapable     bool    `xml:"block_level_encryption_capable"`
	FileLevelEncryptionCapable      bool    `xml:"file_level_encryption_capable"`
	PasscodePresent                 bool    `xml:"passcode_present"`
	PasscodeCompliant               bool    `xml:"passcode_compliant"`
	PasscodeCompliantWithProfile    bool    `xml:"passcode_compliant_with_profile"`
	PasscodeLockGracePeriodEnforced string  `xml:"passcode_lock_grace_period_enforced"`
	HardwareEncryption              string  `xml:"hardware_encryption"`
	ActivationLockEnabled           bool    `xml:"activation_lock_enabled"`
	JailbreakDetected               string  `xml:"jailbreak_detected"`
	LostModeEnabled                 bool    `xml:"lost_mode_enabled"`
	LostModeEnforced                bool    `xml:"lost_mode_enforced"`
	LostModeEnableIssuedEpoch       int64   `xml:"lost_mode_enable_issued_epoch"`
	LostModeEnableIssuedUTC         string  `xml:"lost_mode_enable_issued_utc"`
	LostModeMessage                 string  `xml:"lost_mode_message"`
	LostModePhone                   string  `xml:"lost_mode_phone"`
	LostModeFootnote                string  `xml:"lost_mode_footnote"`
	LostLocationEpoch               int64   `xml:"lost_location_epoch"`
	LostLocationUTC                 string  `xml:"lost_location_utc"`
	LostLocationLatitude            float64 `xml:"lost_location_latitude"`
	LostLocationLongitude           float64 `xml:"lost_location_longitude"`
	LostLocationAltitude            float64 `xml:"lost_location_altitude"`
	LostLocationSpeed               float64 `xml:"lost_location_speed"`
	LostLocationCourse              float64 `xml:"lost_location_course"`
	LostLocationHorizontalAccuracy  float64 `xml:"lost_location_horizontal_accuracy"`
	LostLocationVerticalAccuracy    float64 `xml:"lost_location_vertical_accuracy"`
}

Struct for SecurityObject

type MobileDevicesListItem added in v0.0.83

type MobileDevicesListItem struct {
	ID              int    `xml:"id"`
	Name            string `xml:"name"`
	DeviceName      string `xml:"device_name"`
	UDID            string `xml:"udid"`
	SerialNumber    string `xml:"serial_number"`
	PhoneNumber     string `xml:"phone_number"`
	WifiMacAddress  string `xml:"wifi_mac_address"`
	Managed         bool   `xml:"managed"`
	Supervised      bool   `xml:"supervised"`
	Model           string `xml:"model"`
	ModelIdentifier string `xml:"model_identifier"`
	ModelDisplay    string `xml:"model_display"`
	Username        string `xml:"username"`
}

MobileDeviceItem represents a single mobile device.

type MobileExtensionAttributeInputType added in v0.0.72

type MobileExtensionAttributeInputType struct {
	Type string `xml:"type,omitempty"`
}

MobileExtensionAttributeInputType represents the input type of the mobile extension attribute.

type NetworkSegmentItem added in v0.0.74

type NetworkSegmentItem struct {
	ID              int    `xml:"id"`
	Name            string `xml:"name"`
	StartingAddress string `xml:"starting_address"`
	EndingAddress   string `xml:"ending_address"`
}

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 Partition added in v0.0.61

type Partition struct {
	Name                 string `xml:"name" json:"name"`
	Size                 int    `xml:"size" json:"size"`
	Type                 string `xml:"type" json:"type"`
	PartitionCapacityMb  int    `xml:"partition_capacity_mb" json:"partition_capacity_mb"`
	PercentageFull       int    `xml:"percentage_full" json:"percentage_full"`
	FilevaultStatus      string `xml:"filevault_status" json:"filevault_status"`
	FilevaultPercent     int    `xml:"filevault_percent" json:"filevault_percent"`
	Filevault2Status     string `xml:"filevault2_status" json:"filevault2_status"`
	Filevault2Percent    int    `xml:"filevault2_percent" json:"filevault2_percent"`
	BootDriveAvailableMb int    `xml:"boot_drive_available_mb" json:"boot_drive_available_mb"`
	LvgUUID              string `xml:"lvgUUID" json:"lvgUUID"`
	LvUUID               string `xml:"lvUUID" json:"lvUUID"`
	PvUUID               string `xml:"pvUUID" json:"pvUUID"`
}

Partition represents a partition on a storage device

type PatchPoliciesDataSubsetBuilding added in v0.0.84

type PatchPoliciesDataSubsetBuilding struct {
	Building PatchPoliciesDataSubsetGroup `xml:"building"`
}

PatchPoliciesDataSubsetBuilding represents a building in the scope.

type PatchPoliciesDataSubsetComputer added in v0.0.84

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

PatchPoliciesDataSubsetComputer contains computer details.

type PatchPoliciesDataSubsetComputerGroup added in v0.0.84

type PatchPoliciesDataSubsetComputerGroup struct {
	ComputerGroup PatchPoliciesDataSubsetGroup `xml:"computer_group"`
}

PatchPoliciesDataSubsetComputerGroup represents a computer group in the scope.

type PatchPoliciesDataSubsetComputerItem added in v0.0.84

type PatchPoliciesDataSubsetComputerItem struct {
	Computer PatchPoliciesDataSubsetComputer `xml:"computer"`
}

PatchPoliciesDataSubsetComputerItem represents a computer in the scope.

type PatchPoliciesDataSubsetDeadlines added in v0.0.84

type PatchPoliciesDataSubsetDeadlines struct {
	DeadlineEnabled bool `xml:"deadline_enabled"`
	DeadlinePeriod  int  `xml:"deadline_period"`
}

PatchPoliciesDataSubsetDeadlines represents deadline settings.

type PatchPoliciesDataSubsetDepartment added in v0.0.84

type PatchPoliciesDataSubsetDepartment struct {
	Department PatchPoliciesDataSubsetGroup `xml:"department"`
}

PatchPoliciesDataSubsetDepartment represents a department in the scope.

type PatchPoliciesDataSubsetExclusions added in v0.0.84

type PatchPoliciesDataSubsetExclusions struct {
	Computers       []PatchPoliciesDataSubsetComputerItem       `xml:"computers>computer"`
	ComputerGroups  []PatchPoliciesDataSubsetComputerGroup      `xml:"computer_groups>computer_group"`
	Buildings       []PatchPoliciesDataSubsetBuilding           `xml:"buildings>building"`
	Departments     []PatchPoliciesDataSubsetDepartment         `xml:"departments>department"`
	NetworkSegments []PatchPoliciesDataSubsetNetworkSegmentItem `xml:"network_segments>network_segment"`
	IBeacons        []PatchPoliciesDataSubsetIBeaconItem        `xml:"ibeacons>ibeacon"`
}

PatchPoliciesDataSubsetExclusions represents exclusions in the scope.

type PatchPoliciesDataSubsetGeneral added in v0.0.84

type PatchPoliciesDataSubsetGeneral struct {
	ID                 int                                  `xml:"id"`
	Name               string                               `xml:"name"`
	Enabled            bool                                 `xml:"enabled"`
	TargetVersion      string                               `xml:"target_version"`
	ReleaseDate        string                               `xml:"release_date"`
	IncrementalUpdates bool                                 `xml:"incremental_updates"`
	Reboot             bool                                 `xml:"reboot"`
	MinimumOS          string                               `xml:"minimum_os"`
	KillApps           []PatchPoliciesDataSubsetKillAppItem `xml:"kill_apps>kill_app"`
	DistributionMethod string                               `xml:"distribution_method"`
	AllowDowngrade     bool                                 `xml:"allow_downgrade"`
	PatchUnknown       bool                                 `xml:"patch_unknown"`
}

PatchPoliciesDataSubsetGeneral contains general information about the patch.

type PatchPoliciesDataSubsetGracePeriod added in v0.0.84

type PatchPoliciesDataSubsetGracePeriod struct {
	GracePeriodDuration       int    `xml:"grace_period_duration"`
	NotificationCenterSubject string `xml:"notification_center_subject"`
	Message                   string `xml:"message"`
}

PatchPoliciesDataSubsetGracePeriod represents grace period settings.

type PatchPoliciesDataSubsetGroup added in v0.0.84

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

PatchPoliciesDataSubsetGroup is a general struct for group elements.

type PatchPoliciesDataSubsetIBeaconItem added in v0.0.84

type PatchPoliciesDataSubsetIBeaconItem struct {
	IBeacon PatchPoliciesDataSubsetGroup `xml:"ibeacon"`
}

PatchPoliciesDataSubsetIBeaconItem represents an iBeacon in limitations.

type PatchPoliciesDataSubsetKillApp added in v0.0.84

type PatchPoliciesDataSubsetKillApp struct {
	KillAppName     string `xml:"kill_app_name"`
	KillAppBundleID string `xml:"kill_app_bundle_id"`
}

PatchPoliciesDataSubsetKillApp contains the details of an app to kill during patching.

type PatchPoliciesDataSubsetKillAppItem added in v0.0.84

type PatchPoliciesDataSubsetKillAppItem struct {
	KillApp PatchPoliciesDataSubsetKillApp `xml:"kill_app"`
}

PatchPoliciesDataSubsetKillAppItem represents an item in the KillApps array.

type PatchPoliciesDataSubsetLimitations added in v0.0.84

type PatchPoliciesDataSubsetLimitations struct {
	NetworkSegments []PatchPoliciesDataSubsetNetworkSegmentItem `xml:"network_segments>network_segment"`
	IBeacons        []PatchPoliciesDataSubsetIBeaconItem        `xml:"ibeacons>ibeacon"`
}

PatchPoliciesDataSubsetLimitations represents limitations in the scope.

type PatchPoliciesDataSubsetNetworkSegmentItem added in v0.0.84

type PatchPoliciesDataSubsetNetworkSegmentItem struct {
	NetworkSegment PatchPoliciesDataSubsetGroup `xml:"network_segment"`
}

PatchPoliciesDataSubsetNetworkSegmentItem represents a network segment in limitations.

type PatchPoliciesDataSubsetNotifications added in v0.0.84

type PatchPoliciesDataSubsetNotifications struct {
	NotificationEnabled bool                             `xml:"notification_enabled"`
	NotificationType    string                           `xml:"notification_type"`
	NotificationSubject string                           `xml:"notification_subject"`
	NotificationMessage string                           `xml:"notification_message"`
	Reminders           PatchPoliciesDataSubsetReminders `xml:"reminders"`
}

PatchPoliciesDataSubsetNotifications represents notifications settings.

type PatchPoliciesDataSubsetReminders added in v0.0.84

type PatchPoliciesDataSubsetReminders struct {
	NotificationRemindersEnabled  bool `xml:"notification_reminders_enabled"`
	NotificationReminderFrequency int  `xml:"notification_reminder_frequency"`
}

PatchPoliciesDataSubsetReminders represents reminder settings.

type PatchPoliciesDataSubsetScope added in v0.0.84

type PatchPoliciesDataSubsetScope struct {
	AllComputers   bool                                   `xml:"all_computers"`
	Computers      []PatchPoliciesDataSubsetComputerItem  `xml:"computers>computer"`
	ComputerGroups []PatchPoliciesDataSubsetComputerGroup `xml:"computer_groups>computer_group"`
	Buildings      []PatchPoliciesDataSubsetBuilding      `xml:"buildings>building"`
	Departments    []PatchPoliciesDataSubsetDepartment    `xml:"departments>department"`
	Limitations    PatchPoliciesDataSubsetLimitations     `xml:"limitations"`
	Exclusions     PatchPoliciesDataSubsetExclusions      `xml:"exclusions"`
}

PatchPoliciesDataSubsetScope represents the scope of the patch policy.

type PatchPoliciesDataSubsetSelfServiceIcon added in v0.0.84

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

PatchPoliciesDataSubsetSelfServiceIcon represents an icon in self-service.

type PatchPoliciesDataSubsetUserInteraction added in v0.0.84

type PatchPoliciesDataSubsetUserInteraction struct {
	InstallButtonText      string                                 `xml:"install_button_text"`
	SelfServiceDescription string                                 `xml:"self_service_description"`
	SelfServiceIcon        PatchPoliciesDataSubsetSelfServiceIcon `xml:"self_service_icon"`
	Notifications          PatchPoliciesDataSubsetNotifications   `xml:"notifications"`
	Deadlines              PatchPoliciesDataSubsetDeadlines       `xml:"deadlines"`
	GracePeriod            PatchPoliciesDataSubsetGracePeriod     `xml:"grace_period"`
}

PatchPoliciesDataSubsetUserInteraction contains user interaction information.

type PathItem added in v0.0.53

type PathItem struct {
	ID   string `json:"id"`
	Path string `json:"path"`
}

type Peripheral added in v0.0.61

type Peripheral struct {
	ID          int                    `xml:"id" json:"id"`
	BarCode1    string                 `xml:"bar_code_1" json:"bar_code_1"`
	BarCode2    string                 `xml:"bar_code_2" json:"bar_code_2"`
	Type        string                 `xml:"type" json:"type"`
	Fields      PeripheralFields       `xml:"fields" json:"fields"`
	Purchasing  PeripheralPurchasing   `xml:"purchasing" json:"purchasing"`
	Attachments []PeripheralAttachment `xml:"attachments>attachment" json:"attachments"`
}

type PeripheralAttachment added in v0.0.61

type PeripheralAttachment struct {
	Size     int    `xml:"size" json:"size"`
	ID       int    `xml:"id" json:"id"`
	Filename string `xml:"filename" json:"filename"`
	URI      string `xml:"uri" json:"uri"`
}

Attachment represents an attachment to a peripheral

type PeripheralFields added in v0.0.61

type PeripheralFields struct {
	Field []Field `xml:"field" json:"field"`
}

type PeripheralPurchasing added in v0.0.61

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

PeripheralPurchasing contains purchasing information for peripherals

type Peripherals added in v0.0.61

type Peripherals struct {
	Size        int          `xml:"size" json:"size"`
	Peripherals []Peripheral `xml:"peripheral" json:"peripherals"`
}

Peripherals associated with the computer

type Plugin added in v0.0.61

type Plugin struct {
	Name    string `xml:"name" json:"name"`
	Path    string `xml:"path" json:"path"`
	Version string `xml:"version" json:"version"`
}

Plugin represents a plugin installed on the computer

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 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 PolicyDataSubsetBuilding added in v0.0.90

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

type PolicyDataSubsetComputer added in v0.0.90

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

type PolicyDataSubsetComputerGroup added in v0.0.90

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

type PolicyDataSubsetDepartment added in v0.0.90

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

type PolicyDataSubsetIBeacon added in v0.0.90

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

type PolicyDataSubsetJSSUser added in v0.0.90

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

type PolicyDataSubsetJSSUserGroup added in v0.0.90

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

type PolicyDataSubsetNetworkSegment added in v0.0.90

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

type PolicyDataSubsetUser added in v0.0.90

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

type PolicyDataSubsetUserGroup added in v0.0.90

type PolicyDataSubsetUserGroup 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 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       []PolicyDataSubsetComputer       `xml:"computers>computer,omitempty"`
	ComputerGroups  []PolicyDataSubsetComputerGroup  `xml:"computer_groups>computer_group,omitempty"`
	Users           []PolicyDataSubsetUser           `xml:"users>user,omitempty"`
	UserGroups      []PolicyDataSubsetUserGroup      `xml:"user_groups>user_group,omitempty"`
	Buildings       []PolicyDataSubsetBuilding       `xml:"buildings>building,omitempty"`
	Departments     []PolicyDataSubsetDepartment     `xml:"departments>department,omitempty"`
	NetworkSegments []PolicyDataSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	JSSUsers        []PolicyDataSubsetJSSUser        `xml:"jss_users>jss_user,omitempty"`
	JSSUserGroups   []PolicyDataSubsetJSSUserGroup   `xml:"jss_user_groups>jss_user_group,omitempty"`
	IBeacons        []PolicyDataSubsetIBeacon        `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 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           []PolicyDataSubsetUser           `xml:"users>user,omitempty"`
	UserGroups      []PolicyDataSubsetUserGroup      `xml:"user_groups>user_group,omitempty"`
	NetworkSegments []PolicyDataSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	IBeacons        []PolicyDataSubsetIBeacon        `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 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"`
	AllJSSUSers    bool                            `xml:"all_jss_users"`
	Computers      []PolicyDataSubsetComputer      `xml:"computers>computer,omitempty"`
	ComputerGroups []PolicyDataSubsetComputerGroup `xml:"computer_groups>computer_group,omitempty"`
	JSSUsers       []PolicyDataSubsetJSSUser       `xml:"jss_users>jss_user,omitempty"`
	JSSUserGroups  []PolicyDataSubsetJSSUserGroup  `xml:"jss_user_groups>jss_user_group,omitempty"`
	Buildings      []PolicyDataSubsetBuilding      `xml:"buildings>building,omitempty"`
	Departments    []PolicyDataSubsetDepartment    `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 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 Printer added in v0.0.61

type Printer struct {
	Name     string `xml:"name" json:"name"`
	URI      string `xml:"uri" json:"uri"`
	Type     string `xml:"type" json:"type"`
	Location string `xml:"location" json:"location"`
}

Printer represents a printer mapped to the computer

type PrinterItem added in v0.0.73

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

PrinterItem represents a single printer item.

type Purchasing added in v0.0.61

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

Purchasing information of the computer

type PurchasingDetail added in v0.0.68

type PurchasingDetail struct {
	IsPerpetual         bool   `xml:"is_perpetual"`
	IsAnnual            bool   `xml:"is_annual"`
	PONumber            string `xml:"po_number"`
	Vendor              string `xml:"vendor"`
	PurchasePrice       string `xml:"purchase_price"`
	PurchasingAccount   string `xml:"purchasing_account"`
	PODate              string `xml:"po_date"`
	PODateEpoch         int64  `xml:"po_date_epoch"`
	PODateUTC           string `xml:"po_date_utc"`
	LicenseExpires      string `xml:"license_expires"`
	LicenseExpiresEpoch int64  `xml:"license_expires_epoch"`
	LicenseExpiresUTC   string `xml:"license_expires_utc"`
	LifeExpectancy      int    `xml:"life_expectancy"`
	PurchasingContact   string `xml:"purchasing_contact"`
}

type RemoteManagement added in v0.0.61

type RemoteManagement struct {
	Managed            bool   `xml:"managed" json:"managed"`
	ManagementUsername string `xml:"management_username" json:"management_username"`
}

type RemovableMacAddress added in v0.0.86

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

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"`
}

ResponseAccount represents an account object

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"`
}

ResponseAccountsList represents a serialized list of accounts

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 ResponseAdvancedComputerSearchesList added in v0.0.78

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

ResponseAdvancedComputerSearchesList 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 struct {
	ID             string `json:"id"`
	Name           string `json:"name"`
	StreetAddress1 string `json:"streetAddress1"`
	StreetAddress2 string `json:"streetAddress2"`
	City           string `json:"city"`
	StateProvince  string `json:"stateProvince"`
	ZipPostalCode  string `json:"zipPostalCode"`
	Country        string `json:"country"`
}

ResponseBuilding represents the structure of each building item in the response.

type ResponseBuildingCreate added in v0.0.79

type ResponseBuildingCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

ResponseBuildingCreate represents the response structure for creating a building.

type ResponseBuildingResourceHistory added in v0.0.79

type ResponseBuildingResourceHistory struct {
	ID       int    `json:"id"`
	Username string `json:"username"`
	Date     string `json:"date"`
	Note     string `json:"note"`
	Details  string `json:"details"`
}

ResponseBuildingResourceHistory represents the structure of each resource history item in the response.

type ResponseBuildingResourceHistoryList added in v0.0.79

type ResponseBuildingResourceHistoryList struct {
	TotalCount *int                              `json:"totalCount"`
	Results    []ResponseBuildingResourceHistory `json:"results"`
}

ResponseBuildingResourceHistoryList represents the structure of the response for the building resource history list.

type ResponseBuildingsList added in v0.0.79

type ResponseBuildingsList struct {
	TotalCount *int               `json:"totalCount"`
	Results    []ResponseBuilding `json:"results"`
}

ResponseBuildings represents the structure of the response for the buildings list.

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,omitempty"`
	Source              string              `xml:"source,omitempty"`
	Name                string              `xml:"name"` // Required
	Description         string              `xml:"description,omitempty"`
	Site                ClassSite           `xml:"site"`
	MobileDeviceGroup   ClassDeviceGroup    `xml:"mobile_device_group,omitempty"`
	Students            []ClassStudent      `xml:"students>student,omitempty"`
	Teachers            []ClassTeacher      `xml:"teachers>teacher,omitempty"`
	TeacherIDs          []ClassTeacherID    `xml:"teacher_ids>id,omitempty"`
	StudentGroupIDs     []ClassGroupID      `xml:"student_group_ids>id,omitempty"`
	TeacherGroupIDs     []ClassGroupID      `xml:"teacher_group_ids>id,omitempty"`
	MobileDevices       []ClassMobileDevice `xml:"mobile_devices>mobile_device,omitempty"`
	MobileDeviceGroupID []ClassGroupID      `xml:"mobile_device_group_id>id,omitempty"`
	MeetingTimes        ClassMeetingTimes   `xml:"meeting_times,omitempty"`
	AppleTVs            []ClassAppleTV      `xml:"apple_tvs>apple_tv,omitempty"`
}

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 ResponseCloudIDP added in v0.0.80

type ResponseCloudIDP struct {
	CloudIdPCommon CloudIdPCommon `json:"cloudIdPCommon"`
	Server         CloudIdPServer `json:"server"`
}

type ResponseCloudIDPCreate added in v0.0.80

type ResponseCloudIDPCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

ResponseCloudIDPCreate represents the response received after creating a Cloud Identity Provider.

type ResponseComputer added in v0.0.61

type ResponseComputer struct {
	General               General                `xml:"general" json:"general"`
	Location              Location               `xml:"location" json:"location"`
	Purchasing            Purchasing             `xml:"purchasing" json:"purchasing"`
	Peripherals           Peripherals            `xml:"peripherals" json:"peripherals"`
	Hardware              Hardware               `xml:"hardware" json:"hardware"`
	Certificates          []Certificate          `xml:"certificates>certificate" json:"certificates"`
	Security              Security               `xml:"security" json:"security"`
	Software              Software               `xml:"software" json:"software"`
	ExtensionAttributes   []ExtensionAttribute   `xml:"extension_attributes>extension_attribute" json:"extension_attributes"`
	GroupsAccounts        GroupsAccounts         `xml:"groups_accounts" json:"groups_accounts"`
	ConfigurationProfiles []ConfigurationProfile `xml:"configuration_profiles>configuration_profile" json:"configuration_profiles"`
}

Response structure for computer resources

type ResponseComputerCheckin added in v0.0.88

type ResponseComputerCheckin struct {
	CheckInFrequency                 int  `xml:"check_in_frequency"`
	CreateStartupScript              bool `xml:"create_startup_script"`
	LogStartupEvent                  bool `xml:"log_startup_event"`
	CheckForPoliciesAtStartup        bool `xml:"check_for_policies_at_startup"`
	ApplyComputerLevelManagedPrefs   bool `xml:"apply_computer_level_managed_preferences"`
	EnsureSSHIsEnabled               bool `xml:"ensure_ssh_is_enabled"`
	CreateLoginLogoutHooks           bool `xml:"create_login_logout_hooks"`
	LogUsername                      bool `xml:"log_username"`
	CheckForPoliciesAtLoginLogout    bool `xml:"check_for_policies_at_login_logout"`
	ApplyUserLevelManagedPreferences bool `xml:"apply_user_level_managed_preferences"`
	HideRestorePartition             bool `xml:"hide_restore_partition"`
	PerformLoginActionsInBackground  bool `xml:"perform_login_actions_in_background"`
	DisplayStatusToUser              bool `xml:"display_status_to_user"`
}

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 ResponseComputerGroupsList added in v0.0.78

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

type ResponseComputerInventory added in v0.0.84

type ResponseComputerInventory struct {
	ID                    string                                            `json:"id"`
	UDID                  string                                            `json:"udid"`
	General               ComputerInventoryDataSubsetGeneral                `json:"general"`
	DiskEncryption        ComputerInventoryDataSubsetDiskEncryption         `json:"diskEncryption"`
	Purchasing            ComputerInventoryDataSubsetPurchasing             `json:"purchasing"`
	Applications          []ComputerInventoryDataSubsetApplication          `json:"applications"`
	Storage               ComputerInventoryDataSubsetStorage                `json:"storage"`
	UserAndLocation       ComputerInventoryDataSubsetUserAndLocation        `json:"userAndLocation"`
	ConfigurationProfiles []ComputerInventoryDataSubsetConfigurationProfile `json:"configurationProfiles"`
	Printers              []ComputerInventoryDataSubsetPrinter              `json:"printers"`
	Services              []ComputerInventoryDataSubsetService              `json:"services"`
	Hardware              ComputerInventoryDataSubsetHardware               `json:"hardware"`
	LocalUserAccounts     []ComputerInventoryDataSubsetLocalUserAccount     `json:"localUserAccounts"`
	Certificates          []ComputerInventoryDataSubsetCertificate          `json:"certificates"`
	Attachments           []ComputerInventoryDataSubsetAttachment           `json:"attachments"`
	Plugins               []ComputerInventoryDataSubsetPlugin               `json:"plugins"`
	PackageReceipts       ComputerInventoryDataSubsetPackageReceipts        `json:"packageReceipts"`
	Fonts                 []ComputerInventoryDataSubsetFont                 `json:"fonts"`
	Security              ComputerInventoryDataSubsetSecurity               `json:"security"`
	OperatingSystem       ComputerInventoryDataSubsetOperatingSystem        `json:"operatingSystem"`
	LicensedSoftware      []ComputerInventoryDataSubsetLicensedSoftware     `json:"licensedSoftware"`
	Ibeacons              []ComputerInventoryDataSubsetIbeacon              `json:"ibeacons"`
	SoftwareUpdates       []ComputerInventoryDataSubsetSoftwareUpdate       `json:"softwareUpdates"`
	ExtensionAttributes   []ComputerInventoryDataSubsetExtensionAttribute   `json:"extensionAttributes"`
	ContentCaching        ComputerInventoryDataSubsetContentCaching         `json:"contentCaching"`
	GroupMemberships      []ComputerInventoryDataSubsetGroupMembership      `json:"groupMemberships"`
}

ResponseComputerInventory represents an individual computer from the inventory.

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 ResponseComputerInventoryList added in v0.0.84

type ResponseComputerInventoryList struct {
	TotalCount int                         `json:"totalCount"`
	Results    []ResponseComputerInventory `json:"results"`
}

ResponseComputerInventoryList represents the top-level JSON response structure.

type ResponseComputerInvitation added in v0.0.56

type ResponseComputerInvitation struct {
	ID                          int                    `xml:"id,omitempty"`
	Invitation                  string                 `xml:"invitation,omitempty"`
	InvitationStatus            string                 `xml:"invitation_status,omitempty"`
	InvitationType              string                 `xml:"invitation_type,omitempty"`
	ExpirationDate              string                 `xml:"expiration_date,omitempty"`
	ExpirationDateUTC           string                 `xml:"expiration_date_utc,omitempty"`
	ExpirationDateEpoch         int64                  `xml:"expiration_date_epoch,omitempty"`
	SSHUsername                 string                 `xml:"ssh_username,omitempty"`
	SSHPassword                 string                 `xml:"ssh_password,omitempty"`
	MultipleUsersAllowed        bool                   `xml:"multiple_users_allowed,omitempty"`
	TimesUsed                   int                    `xml:"times_used,omitempty"`
	CreateAccountIfDoesNotExist bool                   `xml:"create_account_if_does_not_exist,omitempty"`
	HideAccount                 bool                   `xml:"hide_account,omitempty"`
	LockDownSSH                 bool                   `xml:"lock_down_ssh,omitempty"`
	InvitedUserUUID             string                 `xml:"invited_user_uuid,omitempty"`
	EnrollIntoSite              ComputerInvitationSite `xml:"enroll_into_site,omitempty"`
	KeepExistingSiteMembership  bool                   `xml:"keep_existing_site_membership,omitempty"`
	Site                        ComputerInvitationSite `xml:"site,omitempty"`
}

type ResponseComputerInvitationsList added in v0.0.56

type ResponseComputerInvitationsList struct {
	Size               int                        `xml:"size"`
	ComputerInvitation []ComputerInvitationDetail `xml:"computer_invitation"`
}

type ResponseComputerPrestagesV3 added in v0.0.49

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

type ResponseComputersList added in v0.0.61

type ResponseComputersList struct {
	TotalCount int            `xml:"size"`
	Results    []ComputerItem `xml:"computer"`
}

Response structure for the list of computers

type ResponseDepartment added in v0.0.34

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

type ResponseDepartmentsList added in v0.0.34

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

type ResponseDeviceEnrollmentList added in v0.0.77

type ResponseDeviceEnrollmentList struct {
	TotalCount int                `json:"totalCount"`
	Results    []DeviceEnrollment `json:"results"`
}

ResponseDeviceEnrollmentList represents the response for device enrollments list.

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 ResponseDirectoryBinding added in v0.0.59

type ResponseDirectoryBinding struct {
	ID         int    `xml:"id"`
	Name       string `xml:"name"`
	Priority   int    `xml:"priority"`
	Domain     string `xml:"domain"`
	Username   string `xml:"username"`
	Password   string `xml:"password"`
	ComputerOU string `xml:"computer_ou"`
	Type       string `xml:"type"`
}

Struct to capture the XML response for a single directory binding

type ResponseDirectoryBindingsList added in v0.0.59

type ResponseDirectoryBindingsList struct {
	Size             int                      `xml:"size"`
	DirectoryBinding []DirectoryBindingDetail `xml:"directory_binding"`
}

Struct to capture the XML response for directory bindings

type ResponseDiskEncryptionConfiguration added in v0.0.57

type ResponseDiskEncryptionConfiguration struct {
	ID                    int    `xml:"id"`
	Name                  string `xml:"name"`
	KeyType               string `xml:"key_type"`
	FileVaultEnabledUsers string `xml:"file_vault_enabled_users"`
}

type ResponseDiskEncryptionConfigurationsList added in v0.0.57

type ResponseDiskEncryptionConfigurationsList struct {
	Size                        int                                 `xml:"size"`
	DiskEncryptionConfiguration []DiskEncryptionConfigurationDetail `xml:"disk_encryption_configuration"`
}

Struct to capture the XML response for disk encryption configurations

type ResponseDistributionPoint added in v0.0.58

type ResponseDistributionPoint struct {
	ID                       int    `xml:"id"`
	Name                     string `xml:"name"`
	IPAddress                string `xml:"ip_address"`
	IsMaster                 bool   `xml:"is_master"`
	FailoverPoint            string `xml:"failover_point"`
	FailoverPointURL         string `xml:"failover_point_url"`
	EnableLoadBalancing      bool   `xml:"enable_load_balancing"`
	LocalPath                string `xml:"local_path"`
	SSHUsername              string `xml:"ssh_username"`
	Password                 string `xml:"password"`
	ConnectionType           string `xml:"connection_type"`
	ShareName                string `xml:"share_name"`
	WorkgroupOrDomain        string `xml:"workgroup_or_domain"`
	SharePort                int    `xml:"share_port"`
	ReadOnlyUsername         string `xml:"read_only_username"`
	ReadOnlyPassword         string `xml:"read_only_password"`
	ReadWriteUsername        string `xml:"read_write_username"`
	ReadWritePassword        string `xml:"read_write_password"`
	HTTPDownloadsEnabled     bool   `xml:"http_downloads_enabled"`
	HTTPURL                  string `xml:"http_url"`
	Context                  string `xml:"context"`
	Protocol                 string `xml:"protocol"`
	Port                     int    `xml:"port"`
	NoAuthenticationRequired bool   `xml:"no_authentication_required"`
	UsernamePasswordRequired bool   `xml:"username_password_required"`
	HTTPUsername             string `xml:"http_username"`
	HTTPPassword             string `xml:"http_password"`
}

Struct for detailed Distribution Point data

type ResponseDistributionPointsList added in v0.0.58

type ResponseDistributionPointsList struct {
	Size              int                         `xml:"size"`
	DistributionPoint DistributionPointListDetail `xml:"distribution_point"`
}

Struct to capture the XML response for distribution points list

type ResponseDockItem added in v0.0.62

type ResponseDockItem struct {
	ID       int    `xml:"id" json:"id"`
	Name     string `xml:"name" json:"name"`
	Type     string `xml:"type" json:"type"`
	Path     string `xml:"path" json:"path"`
	Contents string `xml:"contents" json:"contents"`
}

Struct to capture the response for a single Dock Item

type ResponseDockItemsList added in v0.0.62

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

Struct to capture the XML response for dock items list

type ResponseEbooks added in v0.0.63

type ResponseEbooks struct {
	General     EbooksDataSubsetGeneral     `xml:"general"`
	Scope       EbooksDataSubsetScope       `xml:"scope"`
	SelfService EbooksDataSubsetSelfService `xml:"self_service"`
}

ResponseEbooks represents the detailed structure of an Ebook response.

type ResponseEbooksList added in v0.0.63

type ResponseEbooksList struct {
	Size  int   `xml:"size"`
	Ebook Ebook `xml:"ebook"`
}

Struct to capture the XML response for ebooks list

type ResponseGSXConnection added in v0.0.88

type ResponseGSXConnection struct {
	Enabled       bool   `xml:"enabled"`
	Username      string `xml:"username"`
	AccountNumber int    `xml:"account_number"`
	Region        string `xml:"region"`
	URI           string `xml:"uri"`
}

type ResponseIBeacons added in v0.0.66

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

ResponseIBeacons represents the structure of an individual iBeacon.

type ResponseIBeaconsList added in v0.0.66

type ResponseIBeaconsList struct {
	Size     int           `xml:"size"`
	IBeacons []IBeaconItem `xml:"ibeacon"`
}

ResponseIBeaconsList represents the response structure for a list of iBeacons.

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 ResponseLDAPServers added in v0.0.67

type ResponseLDAPServers struct {
	Connection       LDAPConnection       `xml:"connection"`
	MappingsForUsers LDAPMappingsForUsers `xml:"mappings_for_users"`
}

ResponseLDAPServers represents the structure of an individual LDAP server.

type ResponseLDAPServersList added in v0.0.67

type ResponseLDAPServersList struct {
	Size        int              `xml:"size"`
	LDAPServers []LDAPServerItem `xml:"ldap_server"`
}

ResponseLDAPServersList represents the response structure for a list of LDAP servers.

type ResponseLicensedSoftware added in v0.0.68

type ResponseLicensedSoftware struct {
	General             LicensedSoftwareGeneral            `xml:"general"`
	SoftwareDefinitions []SoftwareDefinition               `xml:"software_definitions>definition"`
	FontDefinitions     []LicensedSoftwareFontDefinition   `xml:"font_definitions>definition"`
	PluginDefinitions   []LicensedSoftwarePluginDefinition `xml:"plugin_definitions>definition"`
	Licenses            []LicensedSoftwareLicense          `xml:"licenses>license"`
}

ResponseLicensedSoftware represents the structure of a single licensed software item.

type ResponseLicensedSoftwareList added in v0.0.68

type ResponseLicensedSoftwareList struct {
	LicensedSoftware []LicensedSoftwareItem `xml:"licensed_software"`
}

ResponseLicensedSoftwareList represents the response for a list of licensed software.

type ResponseMacApplications added in v0.0.64

type ResponseMacApplications struct {
	General     MacAppDataSubsetGeneral     `xml:"general"`
	Scope       MacAppDataSubsetScope       `xml:"scope"`
	SelfService MacAppDataSubsetSelfService `xml:"self_service"`
}

ResponseMacApplications represents the detailed structure of a Mac Application response.

type ResponseMacApplicationsList added in v0.0.64

type ResponseMacApplicationsList struct {
	MacApplications []MacApplication `xml:"mac_application"`
}

type ResponseMacOSConfigurationProfileCreationAndUpdate added in v0.0.78

type ResponseMacOSConfigurationProfileCreationAndUpdate struct {
	XMLName xml.Name `xml:"os_x_configuration_profile"`
	ID      int      `xml:"id"`
}

ResponseMacOSConfigurationProfileCreation represents the response structure for a new macOS configuration profile.

type ResponseMacOSConfigurationProfileList added in v0.0.11

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

ResponseMacOSConfigurationProfileList represents the response structure for a list of macOS configuration profiles.

type ResponseMacOSConfigurationProfiles added in v0.0.66

type ResponseMacOSConfigurationProfiles struct {
	General     MacOSConfigurationProfilesDataSubsetGeneral     `xml:"general,omitempty"`
	Scope       MacOSConfigurationProfilesDataSubsetScope       `xml:"scope,omitempty"`
	SelfService MacOSConfigurationProfilesDataSubsetSelfService `xml:"self_service,omitempty"`
}

ResponseMacOSConfigurationProfiles represents the response structure for a macOS configuration profile.

type ResponseMobileDevice added in v0.0.83

type ResponseMobileDevice struct {
	General               MobileDevicesDataSubsetGeneral                `xml:"general"`
	Location              MobileDevicesDataSubsetLocation               `xml:"location"`
	Purchasing            MobileDevicesDataSubsetPurchasing             `xml:"purchasing"`
	Applications          []MobileDevicesDataSubsetApplication          `xml:"applications>application"`
	SecurityObject        MobileDevicesDataSubsetSecurityObject         `xml:"security_object"`
	Network               MobileDevicesDataSubsetNetwork                `xml:"network"`
	Certificates          []MobileDevicesDataSubsetCertificate          `xml:"certificates>certificate"`
	ConfigurationProfiles []MobileDevicesDataSubsetConfigurationProfile `xml:"configuration_profiles>configuration_profile"`
	ProvisioningProfiles  []MobileDevicesDataSubsetProvisioningProfile  `xml:"provisioning_profiles>mobile_device_provisioning_profile"`
	MobileDeviceGroups    []MobileDevicesDataSubsetMobileDeviceGroup    `xml:"mobile_device_groups>mobile_device_group"`
	ExtensionAttributes   []MobileDevicesDataSubsetExtensionAttribute   `xml:"extension_attributes>extension_attribute"`
}

ResponseMobileDevice represents the structure for a of a mobile device.

type ResponseMobileDeviceApplication added in v0.0.69

type ResponseMobileDeviceApplication struct {
	General          MobileDeviceApplicationGeneral       `xml:"general"`
	Scope            MobileDeviceApplicationScope         `xml:"scope"`
	SelfService      MobileDeviceApplicationSelfService   `xml:"self_service"`
	VPP              MobileDeviceApplicationVPP           `xml:"vpp,omitempty"`
	AppConfiguration MobileDeviceApplicationConfiguration `xml:"app_configuration,omitempty"`
}

ResponseMobileDeviceApplication represents the detailed structure of a single mobile device application.

type ResponseMobileDeviceApplicationsList added in v0.0.69

type ResponseMobileDeviceApplicationsList struct {
	MobileDeviceApplications []MobileDeviceApplicationItem `xml:"mobile_device_application"`
}

ResponseMobileDeviceApplicationsList represents the response for a list of mobile device applications.

type ResponseMobileDeviceConfigurationProfile added in v0.0.72

type ResponseMobileDeviceConfigurationProfile struct {
	General     MobileDeviceConfigurationProfileGeneral     `xml:"general"`
	Scope       MobileDeviceConfigurationProfileScope       `xml:"scope"`
	SelfService MobileDeviceConfigurationProfileSelfService `xml:"self_service"`
}

ResponseMobileDeviceConfigurationProfile represents the detailed structure of a single mobile device configuration profile.

type ResponseMobileDeviceConfigurationProfilesList added in v0.0.72

type ResponseMobileDeviceConfigurationProfilesList struct {
	ConfigurationProfiles []MobileDeviceConfigurationProfiles `xml:"configuration_profile"`
}

ResponseMobileDeviceConfigurationProfilesList represents the response for a list of mobile device configuration profiles.

type ResponseMobileDeviceEnrollmentProfile added in v0.0.72

type ResponseMobileDeviceEnrollmentProfile struct {
	General     MobileDeviceEnrollmentProfileGeneral      `xml:"general"`
	Location    MobileDeviceEnrollmentProfileLocation     `xml:"location,omitempty"`
	Purchasing  MobileDeviceEnrollmentProfilePurchasing   `xml:"purchasing,omitempty"`
	Attachments []MobileDeviceEnrollmentProfileAttachment `xml:"attachments,omitempty"`
}

ResponseMobileDeviceEnrollmentProfile represents the response structure for a mobile device enrollment profile.

type ResponseMobileDeviceEnrollmentProfilesList added in v0.0.72

type ResponseMobileDeviceEnrollmentProfilesList struct {
	Size                          int                                 `xml:"size"`
	MobileDeviceEnrollmentProfile []MobileDeviceEnrollmentProfileItem `xml:"mobile_device_enrollment_profile"`
}

ResponseMobileDeviceEnrollmentProfilesList represents the response for a list of mobile device enrollment profiles.

type ResponseMobileDeviceExtensionAttributesList added in v0.0.72

type ResponseMobileDeviceExtensionAttributesList struct {
	Size                           int                                  `xml:"size"`
	MobileDeviceExtensionAttribute []MobileDeviceExtensionAttributeItem `xml:"mobile_device_extension_attribute"`
}

ResponseMobileDeviceExtensionAttributesList represents the response for a list of mobile device extension attributes.

type ResponseMobileDeviceGroup added in v0.0.75

type ResponseMobileDeviceGroup struct {
	ID                    int                             `xml:"id"`
	Name                  string                          `xml:"name"`
	IsSmart               bool                            `xml:"is_smart"`
	Criteria              []MobileDeviceGroupCriteriaItem `xml:"criteria>criterion,omitempty"`
	Site                  MobileDeviceGroupSite           `xml:"site"`
	MobileDevices         []MobileDeviceGroupDeviceItem   `xml:"mobile_devices>mobile_device,omitempty"`
	MobileDeviceAdditions []MobileDeviceGroupDeviceItem   `xml:"mobile_device_additions>mobile_device,omitempty"`
	MobileDeviceDeletions []MobileDeviceGroupDeviceItem   `xml:"mobile_device_deletions>mobile_device,omitempty"`
}

ResponseMobileDeviceGroup represents the response for a single mobile device group.

type ResponseMobileDeviceGroupsList added in v0.0.75

type ResponseMobileDeviceGroupsList struct {
	Size              int                     `xml:"size"`
	MobileDeviceGroup []MobileDeviceGroupItem `xml:"mobile_device_group"`
}

ResponseMobileDeviceGroupsList represents the response for a list of mobile device groups.

type ResponseMobileDeviceProvisioningProfile added in v0.0.76

type ResponseMobileDeviceProvisioningProfile struct {
	General MobileDeviceProvisioningProfileGeneral `xml:"general"`
}

ResponseMobileDeviceProvisioningProfile represents the detailed structure for a mobile device provisioning profile.

type ResponseMobileDeviceProvisioningProfilesList added in v0.0.76

type ResponseMobileDeviceProvisioningProfilesList struct {
	Size                            int                                   `xml:"size"`
	MobileDeviceProvisioningProfile []MobileDeviceProvisioningProfileItem `xml:"mobile_device_provisioning_profile"`
}

ResponseMobileDeviceProvisioningProfilesList represents the response for a list of mobile device provisioning profiles.

type ResponseMobileDevicesList added in v0.0.83

type ResponseMobileDevicesList struct {
	MobileDevices []MobileDevicesListItem `xml:"mobile_device"`
}

ResponseMobileDevicesList represents the structure for a list of mobile devices.

type ResponseMobileExtensionAttributes added in v0.0.72

type ResponseMobileExtensionAttributes struct {
	ID               int                               `xml:"id"`
	Name             string                            `xml:"name"`
	Description      string                            `xml:"description,omitempty"`
	DataType         string                            `xml:"data_type,omitempty"`
	InputType        MobileExtensionAttributeInputType `xml:"input_type,omitempty"`
	InventoryDisplay string                            `xml:"inventory_display,omitempty"`
}

ResponseMobileExtensionAttributes represents the response structure for a mobile extension attribute.

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"`
}

ResponseNetworkSegment represents the response structure for a Network Segment.

type ResponseNetworkSegmentList added in v0.0.78

type ResponseNetworkSegmentList struct {
	Size    int                  `xml:"size"`
	Results []NetworkSegmentItem `xml:"network_segment"`
}

ResponseNetworkSegmentList represents the response for a list of Network Segments.

type ResponsePatchPolicies added in v0.0.84

type ResponsePatchPolicies struct {
	General                      PatchPoliciesDataSubsetGeneral         `xml:"general"`
	Scope                        PatchPoliciesDataSubsetScope           `xml:"scope"`
	UserInteraction              PatchPoliciesDataSubsetUserInteraction `xml:"user_interaction"`
	SoftwareTitleConfigurationID int                                    `xml:"software_title_configuration_id"`
}

ResponsePatchPolicies represents the root element of the patch policy XML.

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 ResponsePrinters added in v0.0.73

type ResponsePrinters struct {
	ID          int    `xml:"id"`
	Name        string `xml:"name"`
	Category    string `xml:"category"`
	URI         string `xml:"uri"`
	CUPSName    string `xml:"CUPS_name"`
	Location    string `xml:"location"`
	Model       string `xml:"model"`
	Info        string `xml:"info"`
	Notes       string `xml:"notes"`
	MakeDefault bool   `xml:"make_default"`
	UseGeneric  bool   `xml:"use_generic"`
	PPD         string `xml:"ppd"`
	PPDPath     string `xml:"ppd_path"`
	PPDContents string `xml:"ppd_contents"`
}

ResponsePrinters represents the detailed structure of a single printer.

type ResponsePrintersList added in v0.0.73

type ResponsePrintersList struct {
	Size    int           `xml:"size"`
	Printer []PrinterItem `xml:"printer"`
}

ResponsePrintersList represents the response for a list of printers.

type ResponseRecoveryLockPassword added in v0.0.84

type ResponseRecoveryLockPassword struct {
	RecoveryLockPassword string `json:"recoveryLockPassword"`
}

type ResponseRemovableMACAddress added in v0.0.86

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

Struct for individual Removable MAC Address

type ResponseRemovableMacAddressesList added in v0.0.86

type ResponseRemovableMacAddressesList struct {
	Size         int                   `xml:"size"`
	RemovableMac []RemovableMacAddress `xml:"removable_mac_address"`
}

Structs for Removable MAC Addresses List

type ResponseRestrictedSoftware added in v0.0.86

type ResponseRestrictedSoftware struct {
	General RestrictedSoftwareDataSubsetGeneral `xml:"general"`
	Scope   RestrictedSoftwareDataSubsetScope   `xml:"scope"`
}

Structs for individual Restricted Software

type ResponseRestrictedSoftwaresList added in v0.0.86

type ResponseRestrictedSoftwaresList struct {
	Size               int                      `xml:"size"`
	RestrictedSoftware []RestrictedSoftwareItem `xml:"restricted_software_title"`
}

Structs for Restricted Software List

type ResponseSMTPServer added in v0.0.88

type ResponseSMTPServer struct {
	Enabled               bool   `xml:"enabled"`
	Host                  string `xml:"host"`
	Port                  int    `xml:"port"`
	Timeout               int    `xml:"timeout"`
	AuthorizationRequired bool   `xml:"authorization_required"`
	Username              string `xml:"username"`
	Password              string `xml:"password"`
	SSL                   bool   `xml:"ssl"`
	TLS                   bool   `xml:"tls"`
	SendFromName          string `xml:"send_from_name"`
	SendFromEmail         string `xml:"send_from_email"`
}

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"`
}

Script Resource structs

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 ResponseSitesList added in v0.0.78

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

type ResponseSoftwareUpdateServer added in v0.0.86

type ResponseSoftwareUpdateServer struct {
	ID            int    `xml:"id"`
	Name          string `xml:"name"`
	IPAddress     string `xml:"ip_address"`
	Port          int    `xml:"port"`
	SetSystemWide bool   `xml:"set_system_wide"`
}

Struct for individual Software Update Server

type ResponseSoftwareUpdateServersList added in v0.0.86

type ResponseSoftwareUpdateServersList struct {
	XMLName xml.Name                       `xml:"software_update_servers"`
	Size    int                            `xml:"size"`
	Servers []SoftwareUpdateServerListItem `xml:"software_update_server"`
}

Structs for Software Update Servers Response

type ResponseUploadAttachment added in v0.0.84

type ResponseUploadAttachment struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

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                               `xml:"id"`
	Name                string                            `xml:"name"`
	FullName            string                            `xml:"full_name"`
	Email               string                            `xml:"email"`
	EmailAddress        string                            `xml:"email_address"`
	PhoneNumber         string                            `xml:"phone_number"`
	Position            string                            `xml:"position"`
	EnableCustomPhoto   bool                              `xml:"enable_custom_photo_url"`
	CustomPhotoURL      string                            `xml:"custom_photo_url"`
	LDAPServer          UserDataSubsetLDAPServer          `xml:"ldap_server"`
	ExtensionAttributes UserDataSubsetExtensionAttributes `xml:"extension_attributes"`
	Sites               []UserDataSubsetSite              `xml:"sites>site"`
	Links               UserDataSubsetUserLinks           `xml:"links"`
}

type ResponseUserExtensionAttribute added in v0.0.83

type ResponseUserExtensionAttribute struct {
	XMLName     xml.Name               `xml:"user_extension_attribute"`
	ID          int                    `xml:"id,omitempty"`
	Name        string                 `xml:"name"`
	Description string                 `xml:"description"`
	DataType    string                 `xml:"data_type"`
	InputType   UserExtensionInputType `xml:"input_type"`
}

ResponseUserExtensionAttributerepresents a single user extension attribute.

type ResponseUserExtensionAttributesList added in v0.0.83

type ResponseUserExtensionAttributesList struct {
	XMLName                 xml.Name                     `xml:"user_extension_attributes"`
	Size                    int                          `xml:"size"`
	UserExtensionAttributes []UserExtensionAttributeItem `xml:"user_extension_attribute"`
}

type ResponseUserGroup added in v0.0.11

type ResponseUserGroup struct {
	ID               int                      `xml:"id"`
	Name             string                   `xml:"name"`
	IsSmart          bool                     `xml:"is_smart"`
	IsNotifyOnChange bool                     `xml:"is_notify_on_change"`
	Site             UserGroupSite            `xml:"site"`
	Criteria         []UserGroupCriterionItem `xml:"criteria>criterion"`
	Users            []UserGroupUserItem      `xml:"users>user"`
	UserAdditions    []UserGroupUserItem      `xml:"user_additions>user"`
	UserDeletions    []UserGroupUserItem      `xml:"user_deletions>user"`
}

ResponseUserGroup represents the detailed information of a user group.

type ResponseUserGroupsList added in v0.0.80

type ResponseUserGroupsList struct {
	Size      int             `xml:"size"`
	UserGroup []UserGroupItem `xml:"user_group"`
}

ResponseUserGroupsList represents the structure for a list of user groups.

type ResponseUsersList added in v0.0.81

type ResponseUsersList struct {
	Size  int        `xml:"size"`
	Users []UserItem `xml:"user"`
}

type ResponseVPPAccount added in v0.0.86

type ResponseVPPAccount struct {
	ID                            int                      `xml:"id"`
	Name                          string                   `xml:"name"`
	Contact                       string                   `xml:"contact"`
	ServiceToken                  string                   `xml:"service_token"`
	AccountName                   string                   `xml:"account_name"`
	ExpirationDate                string                   `xml:"expiration_date"`
	Country                       string                   `xml:"country"`
	AppleID                       string                   `xml:"apple_id"`
	Site                          VPPAccountDataSubsetSite `xml:"site"`
	PopulateCatalogFromVPPContent bool                     `xml:"populate_catalog_from_vpp_content"`
	NotifyDisassociation          bool                     `xml:"notify_disassociation"`
	AutoRegisterManagedUsers      bool                     `xml:"auto_register_managed_users"`
}

Struct for individual VPP Account

type ResponseVPPAccountsList added in v0.0.86

type ResponseVPPAccountsList struct {
	Size     int                  `xml:"size"`
	Accounts []VPPAccountListItem `xml:"vpp_account"`
}

Structs for VPP Accounts Response

type ResponseVPPAssignment added in v0.0.88

type ResponseVPPAssignment struct {
	General VPPAssignmentGeneral `xml:"general"`
	IOSApps []VPPApp             `xml:"ios_apps>ios_app"`
	MacApps []VPPApp             `xml:"mac_apps>mac_app"`
	EBooks  []VPPApp             `xml:"ebooks>ebook"`
	Scope   VPPAssignmentScope   `xml:"scope"`
}

Structs for the detailed VPP assignment response

type ResponseVPPAssignmentsList added in v0.0.88

type ResponseVPPAssignmentsList struct {
	VPPAssignments []VPPAssignment `xml:"vpp_assignment"`
}

Struct for the list of VPP assignments

type ResponseVolumePurchasingContentList added in v0.0.86

type ResponseVolumePurchasingContentList struct {
	TotalCount int                       `json:"totalCount"`
	Results    []VolumePurchasingContent `json:"results"`
}

ResponseVolumePurchasingContentList represents the paginated response for volume purchasing content.

type ResponseVolumePurchasingList added in v0.0.86

type ResponseVolumePurchasingList struct {
	TotalCount int                        `json:"totalCount"`
	Results    []VolumePurchasingLocation `json:"results"`
}

ResponseVolumePurchasingList represents the paginated response for volume purchasing locations.

type ResponseVolumePurchasingLocation added in v0.0.86

type ResponseVolumePurchasingLocation struct {
	VolumePurchasingLocation
	Content []VolumePurchasingContent `json:"content"`
}

ResponseVolumePurchasingLocation represents the response structure for a single volume purchasing location.

type ResponseVolumePurchasingSubscriptionsList added in v0.0.52

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

type ResponseWebhook added in v0.0.86

type ResponseWebhook struct {
	ID                          int                                     `xml:"id"`
	Name                        string                                  `xml:"name"`
	Enabled                     bool                                    `xml:"enabled"`
	URL                         string                                  `xml:"url"`
	ContentType                 string                                  `xml:"content_type"`
	Event                       string                                  `xml:"event"`
	ConnectionTimeout           int                                     `xml:"connection_timeout"`
	ReadTimeout                 int                                     `xml:"read_timeout"`
	AuthenticationType          string                                  `xml:"authentication_type"`
	Username                    string                                  `xml:"username"`
	Password                    string                                  `xml:"password"`
	EnableDisplayFieldsForGroup bool                                    `xml:"enable_display_fields_for_group_object"`
	DisplayFields               []ResponseWebhookDataSubsetDisplayField `xml:"display_fields>display_field"`
	SmartGroupID                int                                     `xml:"smart_group_id"`
}

Struct for individual Webhook

type ResponseWebhookDataSubsetDisplayField added in v0.0.86

type ResponseWebhookDataSubsetDisplayField struct {
	Size         int                                       `xml:"size"`
	DisplayField ResponseWebhookDataSubsetDisplayFieldItem `xml:"display_field"`
}

type ResponseWebhookDataSubsetDisplayFieldItem added in v0.0.86

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

type ResponseWebhooksList added in v0.0.86

type ResponseWebhooksList struct {
	Size     int               `xml:"size"`
	Webhooks []WebhookListItem `xml:"webhook"`
}

Structs for Webhooks Response

type RestrictedSoftwareDataSubsetGeneral added in v0.0.86

type RestrictedSoftwareDataSubsetGeneral struct {
	ID                    int                              `xml:"id"`
	Name                  string                           `xml:"name"`
	ProcessName           string                           `xml:"process_name"`
	MatchExactProcessName bool                             `xml:"match_exact_process_name"`
	SendNotification      bool                             `xml:"send_notification"`
	KillProcess           bool                             `xml:"kill_process"`
	DeleteExecutable      bool                             `xml:"delete_executable"`
	DisplayMessage        string                           `xml:"display_message"`
	Site                  RestrictedSoftwareDataSubsetSite `xml:"site"`
}

type RestrictedSoftwareDataSubsetScope added in v0.0.86

type RestrictedSoftwareDataSubsetScope struct {
	AllComputers   bool                                             `xml:"all_computers"`
	Computers      []RestrictedSoftwareDataSubsetScopeComputer      `xml:"computers>computer"`
	ComputerGroups []RestrictedSoftwareDataSubsetScopeComputerGroup `xml:"computer_groups>computer_group"`
	Buildings      []RestrictedSoftwareDataSubsetScopeBuilding      `xml:"buildings>building"`
	Departments    []RestrictedSoftwareDataSubsetScopeDepartment    `xml:"departments>department"`
	Exclusions     RestrictedSoftwareExclusions                     `xml:"exclusions"`
}

type RestrictedSoftwareDataSubsetScopeBuilding added in v0.0.86

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

type RestrictedSoftwareDataSubsetScopeComputer added in v0.0.86

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

type RestrictedSoftwareDataSubsetScopeComputerGroup added in v0.0.86

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

type RestrictedSoftwareDataSubsetScopeDepartment added in v0.0.86

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

type RestrictedSoftwareDataSubsetScopeUser added in v0.0.86

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

type RestrictedSoftwareDataSubsetSite added in v0.0.86

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

type RestrictedSoftwareExclusions added in v0.0.86

type RestrictedSoftwareExclusions struct {
	Computers      []RestrictedSoftwareDataSubsetScopeComputer      `xml:"computers>computer"`
	ComputerGroups []RestrictedSoftwareDataSubsetScopeComputerGroup `xml:"computer_groups>computer_group"`
	Buildings      []RestrictedSoftwareDataSubsetScopeBuilding      `xml:"buildings>building"`
	Departments    []RestrictedSoftwareDataSubsetScopeDepartment    `xml:"departments>department"`
	Users          []RestrictedSoftwareDataSubsetScopeUser          `xml:"users>user"`
}

type RestrictedSoftwareItem added in v0.0.86

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

type SSOFailoverResponse

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

type ScriptItem added in v0.0.15

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

type Security added in v0.0.61

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

Security contains security-related information of the computer

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 SelfServiceCategoryItem added in v0.0.69

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

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 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 SiteItem added in v0.0.32

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

type Software added in v0.0.61

type Software struct {
	UnixExecutables          []string         `xml:"unix_executables>string" json:"unix_executables"`
	LicensedSoftware         []string         `xml:"licensed_software>string" json:"licensed_software"`
	InstalledByCasper        []string         `xml:"installed_by_casper>package" json:"installed_by_casper"`
	InstalledByInstallerSwu  []string         `xml:"installed_by_installer_swu>package" json:"installed_by_installer_swu"`
	CachedByCasper           []string         `xml:"cached_by_casper>package" json:"cached_by_casper"`
	AvailableSoftwareUpdates []string         `xml:"available_software_updates>name" json:"available_software_updates"`
	AvailableUpdates         []SoftwareUpdate `xml:"available_updates>update" json:"available_updates"`
	RunningServices          []string         `xml:"running_services>name" json:"running_services"`
	Applications             []Application    `xml:"applications>application" json:"applications"`
	Fonts                    []Font           `xml:"fonts>font" json:"fonts"`
	Plugins                  []Plugin         `xml:"plugins>plugin" json:"plugins"`
}

Software holds information about the software installed on the computer

type SoftwareDefinition added in v0.0.68

type SoftwareDefinition struct {
	CompareType string `xml:"compare_type"`
	Name        string `xml:"name"`
	Version     int    `xml:"version"`
}

type SoftwareUpdate added in v0.0.61

type SoftwareUpdate struct {
	Name        string `xml:"name" json:"name"`
	PackageName string `xml:"package_name" json:"package_name"`
	Version     string `xml:"version" json:"version"`
}

SoftwareUpdate represents an available software update

type SoftwareUpdateServerListItem added in v0.0.86

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

type StorageDevice added in v0.0.61

type StorageDevice struct {
	Disk            string      `xml:"disk" json:"disk"`
	Model           string      `xml:"model" json:"model"`
	Revision        string      `xml:"revision" json:"revision"`
	SerialNumber    string      `xml:"serial_number" json:"serial_number"`
	Size            int         `xml:"size" json:"size"`
	DriveCapacityMb int         `xml:"drive_capacity_mb" json:"drive_capacity_mb"`
	ConnectionType  string      `xml:"connection_type" json:"connection_type"`
	SmartStatus     string      `xml:"smart_status" json:"smart_status"`
	Partitions      []Partition `xml:"partition" json:"partitions"`
}

StorageDevice represents a storage device of the computer

type UserDataSubsetComputer added in v0.0.81

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

type UserDataSubsetExtensionAttributeItem added in v0.0.81

type UserDataSubsetExtensionAttributeItem struct {
	ID    int    `xml:"id"`
	Name  string `xml:"name"`
	Type  string `xml:"type"`
	Value string `xml:"value"`
}

type UserDataSubsetExtensionAttributes added in v0.0.81

type UserDataSubsetExtensionAttributes struct {
	Attributes []UserDataSubsetExtensionAttributeItem `xml:"extension_attribute"`
}

type UserDataSubsetLDAPServer added in v0.0.81

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

type UserDataSubsetMobileDevice added in v0.0.81

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

type UserDataSubsetPeripheral added in v0.0.81

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

type UserDataSubsetSite added in v0.0.81

type UserDataSubsetSite struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}
type UserDataSubsetUserLinks struct {
	Computers         []UserDataSubsetComputer      `xml:"computers>computer"`
	Peripherals       []UserDataSubsetPeripheral    `xml:"peripherals>peripheral"`
	MobileDevices     []UserDataSubsetMobileDevice  `xml:"mobile_devices>mobile_device"`
	VPPAssignments    []UserDataSubsetVPPAssignment `xml:"vpp_assignments>vpp_assignment"`
	TotalVPPCodeCount int                           `xml:"total_vpp_code_count"`
}

type UserDataSubsetVPPAssignment added in v0.0.81

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

type UserExtensionAttributeItem added in v0.0.83

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

type UserExtensionInputType added in v0.0.83

type UserExtensionInputType struct {
	Type string `xml:"type"`
}

UserExtensionInputType represents the input type of a user extension attribute.

type UserGroupCriterionItem added in v0.0.80

type UserGroupCriterionItem 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,omitempty"`
	ClosingParen bool   `xml:"closing_paren,omitempty"`
}

UserGroupCriterionItem represents a criterion of a user group.

type UserGroupItem added in v0.0.80

type UserGroupItem struct {
	ID               int    `xml:"id"`
	Name             string `xml:"name"`
	IsSmart          bool   `xml:"is_smart"`
	IsNotifyOnChange bool   `xml:"is_notify_on_change"`
}

UserGroupItem represents a single user group.

type UserGroupSite added in v0.0.80

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

UserGroupSite represents the site details of a user group.

type UserGroupUserItem added in v0.0.80

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

UserGroupUserItem represents a user of a user group.

type UserItem added in v0.0.81

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

type Users

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

type VPPAccountDataSubsetSite added in v0.0.86

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

type VPPAccountListItem added in v0.0.86

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

type VPPApp added in v0.0.88

type VPPApp struct {
	AdamID int    `xml:"adam_id"`
	Name   string `xml:"name"`
}

type VPPAssignment added in v0.0.88

type VPPAssignment struct {
	ID                int    `xml:"id"`
	VPPAdminAccountID int    `xml:"vpp_admin_account_id"`
	Name              string `xml:"name"`
}

Struct for a single VPP assignment

type VPPAssignmentGeneral added in v0.0.88

type VPPAssignmentGeneral struct {
	ID                  int    `xml:"id"`
	Name                string `xml:"name"`
	VPPAdminAccountID   int    `xml:"vpp_admin_account_id"`
	VPPAdminAccountName string `xml:"vpp_admin_account_name"`
}

type VPPAssignmentScope added in v0.0.88

type VPPAssignmentScope struct {
	AllJSSUsers   bool           `xml:"all_jss_users"`
	JSSUsers      []VPPUser      `xml:"jss_users>user"`
	JSSUserGroups []VPPUserGroup `xml:"jss_user_groups>user_group"`
	Limitations   VPPLimitations `xml:"limitations"`
	Exclusions    VPPExclusions  `xml:"exclusions"`
}

Struct for VPP assignment scope

type VPPExclusions added in v0.0.88

type VPPExclusions struct {
	JSSUsers      []VPPUser      `xml:"jss_users>user"`
	UserGroups    []VPPUserGroup `xml:"user_groups>user_group"`
	JSSUserGroups []VPPUserGroup `xml:"jss_user_groups>user_group"`
}

Struct for VPP exclusions

type VPPLimitations added in v0.0.88

type VPPLimitations struct {
	UserGroups []VPPUserGroup `xml:"user_groups>user_group"`
}

Struct for VPP limitations

type VPPUser added in v0.0.88

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

Struct for VPP user

type VPPUserGroup added in v0.0.88

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

Struct for VPP user group

type VolumePurchasingContent added in v0.0.86

type VolumePurchasingContent struct {
	Name                 string   `json:"name"`
	LicenseCountTotal    int      `json:"licenseCountTotal"`
	LicenseCountInUse    int      `json:"licenseCountInUse"`
	LicenseCountReported int      `json:"licenseCountReported"`
	IconURL              string   `json:"iconUrl"`
	DeviceTypes          []string `json:"deviceTypes"`
	ContentType          string   `json:"contentType"`
	PricingParam         string   `json:"pricingParam"`
	AdamId               string   `json:"adamId"`
}

VolumePurchasingContent represents the content associated with a volume purchasing location.

type VolumePurchasingLocation added in v0.0.86

type VolumePurchasingLocation struct {
	ID                                    string `json:"id,omitempty"`
	Name                                  string `json:"name,omitempty"`
	AppleID                               string `json:"appleId,omitempty"`
	OrganizationName                      string `json:"organizationName,omitempty"`
	TokenExpiration                       string `json:"tokenExpiration,omitempty"`
	CountryCode                           string `json:"countryCode,omitempty"`
	LocationName                          string `json:"locationName,omitempty"`
	ClientContextMismatch                 bool   `json:"clientContextMismatch,omitempty"`
	AutomaticallyPopulatePurchasedContent bool   `json:"automaticallyPopulatePurchasedContent,omitempty"`
	SendNotificationWhenNoLongerAssigned  bool   `json:"sendNotificationWhenNoLongerAssigned,omitempty"`
	AutoRegisterManagedUsers              bool   `json:"autoRegisterManagedUsers,omitempty"`
	SiteID                                string `json:"siteId,omitempty"`
	LastSyncTime                          string `json:"lastSyncTime,omitempty"`
	TotalPurchasedLicenses                int    `json:"totalPurchasedLicenses,omitempty"`
	TotalUsedLicenses                     int    `json:"totalUsedLicenses,omitempty"`
	ServiceToken                          string `json:"serviceToken,omitempty"`
}

VolumePurchasingLocation represents an individual volume purchasing location.

type VolumePurchasingLocationCreateResponse added in v0.0.86

type VolumePurchasingLocationCreateResponse struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

VolumePurchasingLocationCreateResponse represents the response for creating a volume purchasing location.

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"`
}

type WebhookListItem added in v0.0.86

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

Source Files

Jump to

Keyboard shortcuts

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