jamfpro

package
v2.0.2-0...-183fe17 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2025 License: MPL-2.0 Imports: 23 Imported by: 0

Documentation

Overview

classicapi_vpp_assignments.go

jamfproapi_computer_prestages.go Jamf Pro Api - Computer Prestages api reference: https://developer.jamf.com/jamf-pro/reference/get_v2-computer-prestages-scope Jamf Pro API requires the structs to support a JSON data structure. Endpoint uses optimistic locking, https://developer.jamf.com/jamf-pro/docs/optimistic-locking

jamfproapi_locales.go Jamf Pro Api - Locales api reference: https://developer.jamf.com/jamf-pro/reference/get_v1-locales Jamf Pro API requires the structs to support a JSON data structure.

jamfproapi_log_flushing.go Jamf Pro Api - Log Flushing api reference: https://developer.jamf.com/jamf-pro/reference/get_v1-log-flushing Jamf Pro API requires the structs to support an JSON data structure.

jamfproapi_smtp_server.go

shared_helpers.go these are used where a bool value is set to a pointer in scenarios where the value needs to send a valid false value and not an empty value.

shared_models.go

shared_progress_reader.go

util_package_uploader.go This utility function uploads a package file to Jamf Pro by creating a new package and uploading the package file. Requires jamf pro v11.5 or later

util_pagination.go Api documentaton: https://developer.jamf.com/developer-guide/docs/api-style-guide#query-parameters

Index

Constants

View Source
const UriClientCheckinSettings = "/api/v3/check-in"
View Source
const UriPolicyProperties = "/api/v1/policy-properties"

Variables

View Source
var ValidFileUploadResources = []string{
	"computers",
	"mobiledevices",
	"enrollmentprofiles",
	"printers",
	"peripherals",
	"policies",
	"ebooks",
	"mobiledeviceapplications",
	"icon",
	"mobiledeviceapplicationsipa",
	"diskencryptionconfigurations",
}

ValidFileUploadResources contains the list of valid resources for file uploads

Functions

func BoolPtr

func BoolPtr(b bool) *bool

BoolPtr returns a pointer to a bool value

func CalculateSHA3_512

func CalculateSHA3_512(filePath string) (string, error)

CalculateSHA3_512 calculates the SHA3-512 hash of the supplied file in the path.

func FalsePtr

func FalsePtr() *bool

FalsePtr returns a pointer to a false bool value

func IncrementStringID

func IncrementStringID(currentID string) string

IncrementStringID increments the given ID string. It returns the incremented ID as a string or panics if the input is not convertible to an integer.

func LogLevelStringtoZap

func LogLevelStringtoZap(stringLevel string) (zap.AtomicLevel, error)

LogLevelStringtoZap takes a string log level and converts it to a zap level

func TruePtr

func TruePtr() *bool

TruePtr returns a pointer to a true bool value

Types

type AccountSubsetPrivileges

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

type AccountsListSubsetGroups

type AccountsListSubsetGroups struct {
	ID         int                     `json:"id,omitempty" xml:"id,omitempty"`
	Name       string                  `json:"name,omitempty" xml:"name,omitempty"`
	Privileges AccountSubsetPrivileges `json:"privileges,omitempty" xml:"privileges,omitempty"`
}

type AccountsListSubsetUsers

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

type ActiveCertificateAuthoritySubsetSignature

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

type AdvancedComputerSearchContainerComputers

type AdvancedComputerSearchContainerComputers struct {
	Size     int
	Computer AdvancedComputerSearchSubsetComputer `xml:"computers"`
}

type AdvancedComputerSearchListItem

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

type AdvancedComputerSearchSubsetComputer

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

type AdvancedUserSearchContainerUsers

type AdvancedUserSearchContainerUsers struct {
	Size int                            `xml:"size,omitempty"`
	User []AdvancedUserSearchSubsetUser `xml:"user,omitempty"`
}

type AdvancedUserSearchListItem

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

type AdvancedUserSearchSubsetUser

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

type Application

type Application struct {
	Path     string `json:"path,omitempty" xml:"path,omitempty"`
	Platform string `json:"platform,omitempty" xml:"platform,omitempty"`
}

type ApplicationAttributes

type ApplicationAttributes struct {
	VpnUuid               string   `json:"vpnUuid"`
	AssociatedDomains     []string `json:"associatedDomains"`
	Removable             bool     `json:"removable"`
	EnableDirectDownloads bool     `json:"enableDirectDownloads"`
	Identifier            string   `json:"identifier"`
}

ApplicationAttributes represents the application attributes structure in the settings command

type ApplicationConfiguration

type ApplicationConfiguration struct {
	Configuration string `json:"configuration"`
	Identifier    string `json:"identifier"`
}

ApplicationConfiguration represents the application configuration structure in the settings command

type ApplicationEntry

type ApplicationEntry struct {
	Application Application `json:"application,omitempty" xml:"application,omitempty"`
}

type BYOProfileListItem

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

type BYOProfileSubsetGeneral

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

type CacheSettingsSubsetMemcachedEndpoints

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

type ClassContainerMeetingTimes

type ClassContainerMeetingTimes struct {
	MeetingTime ClassSubsetMeetingTime `xml:"meeting_time,omitempty"`
}

type ClassListItem

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

ClassItem represents a single class item in the list.

type ClassSubsetAppleTVs

type ClassSubsetAppleTVs 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 ClassSubsetMeetingTime

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

type ClassSubsetMobileDeviceGroup

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

type ClassSubsetMobileDeviceGroupID

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

type ClassSubsetMobileDevices

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

type ClassSubsetStudent

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

type ClassSubsetStudentGroupIDs

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

type ClassSubsetTeacher

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

type ClassSubsetTeacherGroupIDs

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

type ClassSubsetTeacherIDs

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

type Client

type Client struct {
	HTTP *httpclient.Client
}

func BuildClient

func BuildClient(config *ConfigContainer) (*Client, error)

func BuildClientWithConfigFile

func BuildClientWithConfigFile(configFilePath string) (*Client, error)

BuildClientWithConfigFile initializes a new Jamf Pro client using a configuration file for the HTTP client, logger, and integration.

func BuildClientWithEnv

func BuildClientWithEnv() (*Client, error)

BuildClientWithEnv initializes a new Jamf Pro client using environment variables for the HTTP client, logger, and integration.

func (*Client) AcceptJamfAppCatalogAppInstallerTermsAndConditions

func (c *Client) AcceptJamfAppCatalogAppInstallerTermsAndConditions() (*ResponseJamfAppCatalogDeploymentTermsAndConditionsStatus, error)

AcceptJamfAppCatalogAppInstallerTermsAndConditions accepts the terms and conditions for the Jamf App Catalog This is required on an account by account basis.

func (*Client) AcceptPatchManagementDisclaimer

func (c *Client) AcceptPatchManagementDisclaimer() error

AcceptPatchManagementDisclaimer accepts the Patch Management disclaimer

func (*Client) AcceptSLASA

func (c *Client) AcceptSLASA() error

AcceptSLASA accepts the SLASA (Software License Agreement Service Acceptance).

func (*Client) AddPatchPolicyToDashboard

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

AddPatchPolicyToDashboard adds a patch policy to the dashboard

func (*Client) AssignManifestToPackageByID

func (c *Client) AssignManifestToPackageByID(id string, manifestFilePath string) (*ResponsePackageCreatedAndUpdated, error)

AssignManifestToPackageByID assigns a manifest to a package by its ID on the Jamf Pro server. It requires the ID of an existing package and the file paths of the manifest.

func (*Client) ClearFailedAndPendingComputerMDMCommandsByComputerGroupID

func (c *Client) ClearFailedAndPendingComputerMDMCommandsByComputerGroupID(computerGroupId string) error

ClearFailedAndPendingComputerMDMCommandsByComputerGroupID clears all failed & pending MDM commands for a specific smart or static computer group.

func (*Client) ClearFailedAndPendingComputerMDMCommandsByComputerID

func (c *Client) ClearFailedAndPendingComputerMDMCommandsByComputerID(computerId string) error

ClearFailedAndPendingMDMCommandsByComputerID clears all failed & pending MDM commands for a specific computer.

func (*Client) ClearFailedAndPendingMobileDeviceMDMCommandsByMobileDeviceGroupID

func (c *Client) ClearFailedAndPendingMobileDeviceMDMCommandsByMobileDeviceGroupID(mobileDeviceGroupId string) error

ClearFailedAndPendingMobileDeviceMDMCommandsByMobileDeviceGroupID clears all failed MDM commands for a specific mobile device group.

func (*Client) ClearFailedAndPendingMobileDeviceMDMCommandsByMobileDeviceID

func (c *Client) ClearFailedAndPendingMobileDeviceMDMCommandsByMobileDeviceID(mobileDeviceID string) error

ClearFailedAndPendingMobileDeviceMDMCommandsByMobileDeviceID clears all failed & pending MDM commands for a specific mobile device.

func (*Client) ClearFailedComputerMDMCommandsByComputerGroupID

func (c *Client) ClearFailedComputerMDMCommandsByComputerGroupID(computerGroupId string) error

ClearFailedComputerMDMCommandsByComputerGroupID clears all failed MDM commands for a specific smart or static computer group.

func (*Client) ClearFailedComputerMDMCommandsByComputerID

func (c *Client) ClearFailedComputerMDMCommandsByComputerID(computerId string) error

ClearFailedMDMCommandsByComputerID clears all failed MDM commands for a specific computer.

func (*Client) ClearFailedMobileDeviceMDMCommandsByMobileDeviceGroupID

func (c *Client) ClearFailedMobileDeviceMDMCommandsByMobileDeviceGroupID(mobileDeviceGroupId string) error

ClearFailedMobileDeviceMDMCommandsByMobileDeviceGroupID clears all failed MDM commands for a specific mobile device group.

func (*Client) ClearFailedMobileDeviceMDMCommandsByMobileDeviceID

func (c *Client) ClearFailedMobileDeviceMDMCommandsByMobileDeviceID(mobileDeviceID string) error

ClearFailedMobileDeviceMDMCommandsByMobileDeviceID clears all failed MDM commands for a specific mobile device.

func (*Client) ClearPendingComputerMDMCommandsByComputerGroupID

func (c *Client) ClearPendingComputerMDMCommandsByComputerGroupID(computerGroupId string) error

ClearPendingComputerMDMCommandsByComputerGroupID clears all Pending MDM commands for a specific smart or static computer group.

func (*Client) ClearPendingComputerMDMCommandsByComputerID

func (c *Client) ClearPendingComputerMDMCommandsByComputerID(computerId string) error

ClearPendingMDMCommandsByComputerID clears all Pending MDM commands for a specific computer.

func (*Client) ClearPendingMobileDeviceMDMCommandsByMobileDeviceGroupID

func (c *Client) ClearPendingMobileDeviceMDMCommandsByMobileDeviceGroupID(mobileDeviceGroupId string) error

ClearPendingMobileDeviceMDMCommandsByMobileDeviceGroupID clears all Pending MDM commands for a specific mobile device group.

func (*Client) ClearPendingMobileDeviceMDMCommandsByMobileDeviceID

func (c *Client) ClearPendingMobileDeviceMDMCommandsByMobileDeviceID(mobileDeviceID string) error

ClearPendingMobileDeviceMDMCommandsByMobileDeviceID clears all Pending MDM commands for a specific mobile device.

func (*Client) CreateAccount

func (c *Client) CreateAccount(account *ResourceAccount) (*ResponseAccountCreatedAndUpdated, error)

CreateAccountByID creates an Account using its ID

func (*Client) CreateAccountDrivenUserEnrollmentAccessGroup

CreateAccountDrivenUserEnrollmentAccessGroup creates a new ADUE access group

func (*Client) CreateAccountGroup

func (c *Client) CreateAccountGroup(accountGroup *ResourceAccountGroup) (*ResponseAccountGroupCreated, error)

CreateAccountGroupByID creates an Account Group using its ID

func (*Client) CreateAdvancedComputerSearch

Function: CreateAdvancedComputerSearch Method: POST Path: /JSSResource/advancedcomputersearches Description: Creates a new Jamf Pro advanced computer search resource. Parameters:

  • search (*ResourceAdvancedComputerSearch): The advanced computer search resource to create.

Returns: ResponseAdvancedComputerSearchCreatedAndUpdated - The ID of the created advanced computer search resource. Example:

newSearch := &jamfpro.ResourceAdvancedComputerSearch{
    Name: "New Search",
    // Other fields...
}
created, err := client.CreateAdvancedComputerSearch(newSearch)
if err != nil {
    log.Fatal(err)
}
fmt.Println(created)

Errors: Returns an error if the request fails or if the resource cannot be created.

func (*Client) CreateAdvancedMobileDeviceSearch

func (c *Client) CreateAdvancedMobileDeviceSearch(search ResourceAdvancedMobileDeviceSearch) (*ResponseAdvancedMobileDeviceSearchCreate, error)

CreateAdvancedMobileDeviceSearch creates a new Advanced Mobile Device Search

func (*Client) CreateAdvancedUserSearch

Function: CreateAdvancedUserSearch Method: POST Path: /JSSResource/advancedusersearches Description: Creates a new Jamf Pro advanced user search resource. Parameters:

  • search (*ResourceAdvancedUserSearch): The advanced user search resource to create.

Returns: ResponseAdvancedUserSearchCreatedAndUpdated - The ID of the created advanced user search resource. Example:

newSearch := &jamfpro.ResourceAdvancedUserSearch{
    Name: "New Search",
    // Other fields...
}
created, err := client.CreateAdvancedUserSearch(newSearch)
if err != nil {
    log.Fatal(err)
}
fmt.Println(created)

Errors: Returns an error if the request fails or if the resource cannot be created.

func (*Client) CreateAllowedFileExtension

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

CreateAllowedFileExtension creates a new allowed file extension on the Jamf Pro server.

func (*Client) CreateApiIntegration

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

CreateApiIntegration creates a new API integration

func (*Client) CreateBYOProfile

func (c *Client) CreateBYOProfile(profile *ResourceBYOProfile) (*ResponceBYOProfileCreatedAndUpdated, error)

CreateBYOProfile creates a new BYO profile.

func (*Client) CreateBookmark

func (c *Client) CreateBookmark(bookmark *ResourceBookmark) (*ResponseBookmarkCreate, error)

CreateBookmark creates a new bookmark in Jamf Pro

func (*Client) CreateBuilding

func (c *Client) CreateBuilding(building *ResourceBuilding) (*ResponseBuildingCreate, error)

CreateBuilding creates a new building in Jamf Pro

func (*Client) CreateBuildingResourceHistoryByID

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

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

func (*Client) CreateCategory

func (c *Client) CreateCategory(category *ResourceCategory) (*ResponseCategoryCreateAndUpdate, error)

CreateCategory creates a new category

func (*Client) CreateClass

func (c *Client) CreateClass(class *ResourceClass) (*ResourceClass, error)

CreateClassesByID creates a new class with the given details.

func (*Client) CreateCloudIdentityProvider

func (c *Client) CreateCloudIdentityProvider(cloudIdP *ResourceCloudIdp) (*ResponseCloudIdpCreate, error)

CreateCloudIdentityProvider creates a new Cloud Identity Provider.

func (*Client) CreateCloudIdentityProviderLdap

func (c *Client) CreateCloudIdentityProviderLdap(config *ResourceCloudLdap) (*ResponseCloudIdentityProviderDefaultMappings, error)

CreateCloudIdentityProviderLdap creates a new Cloud Identity Provider configuration

func (*Client) CreateComputer

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

CreateComputer creates a new computer.

func (*Client) CreateComputerExtensionAttribute

func (c *Client) CreateComputerExtensionAttribute(attribute *ResourceComputerExtensionAttribute) (*ResponseComputerExtensionAttributeCreated, error)

CreateComputerExtensionAttribute creates a new computer extension attribute

func (*Client) CreateComputerGroup

func (c *Client) CreateComputerGroup(group *ResourceComputerGroup) (*ResponseComputerGroupreatedAndUpdated, error)

CreateComputerGroup creates a new computer group.

func (*Client) CreateComputerInventoryCollectionSettingsCustomPath

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

CreateComputerInventoryCollectionSettingsCustomPath creates a custom path for computer inventory collection settings.

func (*Client) CreateComputerInvitation

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

CreateComputerInvitation creates a new computer invitation.

func (*Client) CreateComputerPrestage

func (c *Client) CreateComputerPrestage(prestage *ResourceComputerPrestage) (*ResponseComputerPrestageCreate, error)

CreateComputerPrestage creates a new computer prestage with the given details.

func (*Client) CreateConfigProfileWithCustomSettingsSchema

func (c *Client) CreateConfigProfileWithCustomSettingsSchema(profile *ResourceConfigProfile) (*ResponseConfigProfileCreate, error)

CreateConfigProfileWithCustomSettingsSchema creates a new macOS configuration profile

func (*Client) CreateDepartment

func (c *Client) CreateDepartment(department *ResourceDepartment) (*ResponseDepartmentCreate, error)

CreateDepartment creates a new department.

func (*Client) CreateDeviceEnrollmentWithMDMServerToken

func (c *Client) CreateDeviceEnrollmentWithMDMServerToken(tokenUpload *ResourceDeviceEnrollmentTokenUpload) (*ResponseDeviceEnrollmentTokenUpload, error)

CreateDeviceEnrollmentWithMDMServerToken creates a new device enrollment instance using The downloaded token base 64 encoded from the MDM server to be used to create a new Device Enrollment Instance.

func (*Client) CreateDirectoryBinding

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

CreateDirectoryBinding creates a new directory binding.

func (*Client) CreateDiskEncryptionConfiguration

CreateDiskEncryptionConfiguration creates a new disk encryption configuration.

func (*Client) CreateDistributionPoint

CreateDistributionPoint creates a new distribution point.

func (*Client) CreateDockItem

func (c *Client) CreateDockItem(dockItem *ResourceDockItem) (*ResourceDockItem, error)

CreateDockItems creates a new dock item.

func (*Client) CreateEbook

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

CreateEbook creates a new ebook.

func (*Client) CreateEnrollmentCustomization

func (c *Client) CreateEnrollmentCustomization(enrollmentCustomization ResourceEnrollmentCustomization) (*ResponseEnrollmentCustomizationCreate, error)

Creates new resource enrollment customization

func (*Client) CreateExternalPatchSource

func (c *Client) CreateExternalPatchSource(patchSource *ResourcePatchExternalSource) (*ResourcePatchExternalSource, error)

CreateExternalPatchSource creates a new external patch source on the Jamf Pro server.

func (*Client) CreateFileAttachment

func (c *Client) CreateFileAttachment(resource string, idType ResourceIDType, identifier string, filePath string, forceIpaUpload bool) error

CreateFileAttachment uploads a file to a specific resource in Jamf Pro

func (*Client) CreateIBeacon

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

CreateIBeacon creates a new iBeacon in Jamf Pro.

func (*Client) CreateJCDS2PackageV2

func (c *Client) CreateJCDS2PackageV2(filePath string) (*ResponseJCDS2File, error)

CreateJCDS2PackageV2 creates a new file in JCDS 2.0 using AWS SDK v2 without creating package metadata in Jamf Pro.

func (*Client) CreateJamfApiRole

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

CreateJamfApiRole creates a new Jamf API role

func (*Client) CreateJamfAppCatalogAppInstallerDeployment

func (c *Client) CreateJamfAppCatalogAppInstallerDeployment(payload *ResourceJamfAppCatalogDeployment) (*ResponseJamfAppCatalogDeploymentCreateAndUpdate, error)

Creates Jamf App Catalog Deployment from ResponseJamfAppCatalogDeploymentCreateAndUpdate struct

func (*Client) CreateJamfProtectAPIConfiguration

func (c *Client) CreateJamfProtectAPIConfiguration(config ResourceJamfProtectRegisterRequest) (*ResourceJamfProtectRegisterResponse, error)

CreateJamfProtectAPIConfiguration registers a Jamf Protect API configuration with Jamf Pro

func (*Client) CreateJamfProtectIntegration

func (c *Client) CreateJamfProtectIntegration(autoInstall bool) (*ResourceJamfProtectIntegrationSettings, error)

CreateJamfProtectIntegration creates a new Jamf Protect integration

func (*Client) CreateLDAPPrestagePane

func (c *Client) CreateLDAPPrestagePane(customizationID string, ldapPane ResourceEnrollmentCustomizationLDAPPane) (*ResponseEnrollmentCustomizationLDAPPane, error)

CreateLDAPPrestagePane creates a LDAP prestage pane for an enrollment customization

func (*Client) CreateLDAPServer

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

CreateLDAPServer creates a new LDAP server in Jamf Pro.

func (*Client) CreateLicensedSoftware

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

CreateLicensedSoftware creates a new licensed software item in Jamf Pro.

func (*Client) CreateMacApplication

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

CreateMacApplication creates a new Mac Application.

func (*Client) CreateMacOSConfigurationProfile

func (c *Client) CreateMacOSConfigurationProfile(profile *ResourceMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfileCreationUpdate, 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) CreateManagedSoftwareUpdatePlanByDeviceID

func (c *Client) CreateManagedSoftwareUpdatePlanByDeviceID(plan *ResourceManagedSoftwareUpdatePlan) (*ResponseManagedSoftwareUpdatePlanCreate, error)

CreateManagedSoftwareUpdatePlanByDeviceID Creates Managed Software Update Plan by Device ID

func (*Client) CreateManagedSoftwareUpdatePlanByGroupID

func (c *Client) CreateManagedSoftwareUpdatePlanByGroupID(plan *ResourceManagedSoftwareUpdatePlan) (*ResponseManagedSoftwareUpdatePlanCreate, error)

CreateManagedSoftwareUpdatePlanByDeviceGroupID creates a managed software update plan by group ID

func (*Client) CreateMobileDevice

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

CreateMobileDevice creates a new mobile device device.

func (*Client) CreateMobileDeviceApplication

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

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

func (*Client) CreateMobileDeviceConfigurationProfile

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

func (*Client) CreateMobileDeviceEnrollmentProfile

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

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

func (*Client) CreateMobileDeviceGroup

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

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

func (*Client) CreateMobileDevicePrestage

func (c *Client) CreateMobileDevicePrestage(newPrestage ResourceMobileDevicePrestage) (*ResponseMobileDevicePrestageCreate, error)

CreateMobileDevicePrestage creates a new mobile prestage and returns the id

func (*Client) CreateMobileDeviceProvisioningProfile

func (c *Client) CreateMobileDeviceProvisioningProfile(id string, profile *ResourceMobileDeviceProvisioningProfile) (*ResourceMobileDeviceProvisioningProfile, error)

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

func (*Client) CreateMobileDeviceProvisioningProfileByName

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

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

func (*Client) CreateMobileDeviceProvisioningProfileByUUID

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

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

func (*Client) CreateMobileExtensionAttribute

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

CreateMobileExtensionAttribute creates a new mobile device extension attribute.

func (*Client) CreateNetworkSegment

func (c *Client) CreateNetworkSegment(segment *ResourceNetworkSegment) (*ResponseNetworkSegmentCreatedAndUpdated, error)

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

func (*Client) CreatePackage

func (c *Client) CreatePackage(packageMetadata ResourcePackage) (*ResponsePackageCreatedAndUpdated, error)

Function: CreatePackage Method: POST Path: /api/v1/packages Description: Creates a new package manifest in Jamf Pro. This is step one in the process of creating a package and creates the package metadata to Jamf Pro. The package file must be uploaded separately using the UploadPackage function. Parameters: packageMetadata - A ResourcePackage struct containing the details of the package to be created. Returns: ResponsePackageCreatedAndUpdated - The response containing the details of the created package. Errors: Returns an error if the request fails. Example:

// Helper function to create a pointer to a bool
func BoolPtr(b bool) *bool {
	return &b
}

pkg := jamfpro.ResourcePackage{
	PackageName:          "Firefox.dmg",
	FileName:             "Firefox.dmg",
	CategoryID:           "-1",
	Priority:             3,
	FillUserTemplate:     BoolPtr(false),
	RebootRequired:       BoolPtr(false),
	OSInstall:            BoolPtr(false),
	SuppressUpdates:      BoolPtr(false),
	SuppressFromDock:     BoolPtr(false),
	SuppressEula:         BoolPtr(false),
	SuppressRegistration: BoolPtr(false),
}

response, err := client.CreatePackage(pkg)
if err != nil {
    log.Fatal(err)
}
fmt.Println(response)

func (*Client) CreatePatchPolicy

func (c *Client) CreatePatchPolicy(softwareTitleConfigID string, policyRequest *ResourcePatchPolicyClassicAPI) error

CreatePatchPolicy creates a new patch policy for a specific software title configuration

func (*Client) CreatePatchSoftwareTitleConfiguration

func (c *Client) CreatePatchSoftwareTitleConfiguration(configuration ResourcePatchSoftwareTitleConfiguration) (*ResponsePatchSoftwareTitleConfigurationCreate, error)

CreatePatchSoftwareTitleConfiguration Creates a new PatchSoftwareTitleConfiguration

func (*Client) CreatePolicy

func (c *Client) CreatePolicy(policy *ResourcePolicy) (*ResponsePolicyCreateAndUpdate, error)

CreatePolicy creates a new policy.

func (*Client) CreatePrinter

func (c *Client) CreatePrinter(printer *ResourcePrinter) (*ResponsePrinterCreateAndUpdate, error)

CreatePrinters creates a new printer on the Jamf Pro server.

func (*Client) CreateRemovableMACAddress

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

CreateRemovableMACAddress creates a new removable MAC address.

func (*Client) CreateRestrictedSoftware

func (c *Client) CreateRestrictedSoftware(restrictedSoftware *ResourceRestrictedSoftware) (*ResponseRestrictedSoftwareCreateAndUpdate, error)

CreateRestrictedSoftware creates a new restricted software entry in Jamf Pro.

func (*Client) CreateReturnToServiceConfiguration

func (c *Client) CreateReturnToServiceConfiguration(config ResourceReturnToServiceConfiguration) (*ResponseReturnToServiceCreate, error)

CreateReturnToServiceConfiguration creates a new Return to Service configuration.

func (*Client) CreateSSOPrestagePane

func (c *Client) CreateSSOPrestagePane(customizationID string, ssoPane ResourceEnrollmentCustomizationSSOPane) (*ResponseEnrollmentCustomizationSSOPane, error)

CreateSSOPrestagePane creates a SSO prestage pane for an enrollment customization

func (*Client) CreateScript

func (c *Client) CreateScript(script *ResourceScript) (*ResponseScriptCreate, error)

Creates script from ResourceScript struct

func (*Client) CreateSelfServiceBrandingMacOS

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

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

func (*Client) CreateSite

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

CreateSite creates a new site.

func (*Client) CreateSmartComputerGroup

func (c *Client) CreateSmartComputerGroup(request ResourceSmartComputerGroup) (*ResponseSmartComputerGroupCreate, error)

CreateSmartComputerGroup creates a new Smart Computer Group

func (*Client) CreateSoftwareUpdateServer

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

CreateSoftwareUpdateServer creates a new software update server.

func (*Client) CreateTextPrestagePane

func (c *Client) CreateTextPrestagePane(customizationResourceID string, textPane ResourceEnrollmentCustomizationTextPane) (*ResponseEnrollmentCustomizationTextPane, error)

CreateTextPrestagePane creates a text prestage pane for an enrollment customization

func (*Client) CreateUser

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

CreateUser creates a new user.

func (*Client) CreateUserExtensionAttribute

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

CreateUserExtensionAttribute creates a new user extension attribute.

func (*Client) CreateUserGroup

func (c *Client) CreateUserGroup(userGroup *ResourceUserGroup) (*ResponseUserGroupCreateAndUpdate, error)

CreateUserGroup creates a new user group.

func (*Client) CreateVPPAccount

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

CreateVPPAccount creates a new VPP account.

func (*Client) CreateVPPAssignment

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

CreateVPPAssignment creates a new VPP assignment

func (*Client) CreateVolumePurchasingLocation

func (c *Client) CreateVolumePurchasingLocation(request *ResourceVolumePurchasingLocation) (*ResponseVolumePurchasingLocationCreate, error)

CreateVolumePurchasingLocation creates a new volume purchasing location.

func (*Client) CreateVolumePurchasingSubscription

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

CreateVolumePurchasingSubscription creates a new volume purchasing subscription

func (*Client) CreateWebhook

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

CreateWebhook creates a new webhook.

func (*Client) DeleteAccountByID

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

DeleteAccountByID deletes an Account using its ID

func (*Client) DeleteAccountByName

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

DeleteAccountByName deletes an Account using its name.

func (*Client) DeleteAccountDrivenUserEnrollmentAccessGroupByID

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

DeleteAccountDrivenUserEnrollmentAccessGroupByID deletes an ADUE access group with given id

func (*Client) DeleteAccountDrivenUserEnrollmentAccessGroupByName

func (c *Client) DeleteAccountDrivenUserEnrollmentAccessGroupByName(targetName string) error

DeleteAccountDrivenUserEnrollmentAccessGroupByName deletes an ADUE access group with given name, leverages GetAccountDrivenUserEnrollmentAccessGroupByName

func (*Client) DeleteAccountGroupByID

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

DeleteAccountGroupByID deletes an Account Group using its ID.

func (*Client) DeleteAccountGroupByName

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

DeleteAccountGroupByName deletes an Account Group using its name.

func (*Client) DeleteAdvancedComputerSearchByID

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

Function: DeleteAdvancedComputerSearchByID Method: DELETE Path: /JSSResource/advancedcomputersearches/id/{id} Description: Deletes an existing Jamf Pro advanced computer search resource by its ID. Parameters:

  • id (int): The ID of the advanced computer search.

Returns: None Example:

err := client.DeleteAdvancedComputerSearchByID(123)
if err != nil {
    log.Fatal(err)
}

Errors: Returns an error if the request fails or if the resource cannot be deleted.

func (*Client) DeleteAdvancedComputerSearchByName

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

Function: DeleteAdvancedComputerSearchByName Method: DELETE Path: /JSSResource/advancedcomputersearches/name/{name} Description: Deletes an existing Jamf Pro advanced computer search resource by its name. Parameters:

  • name (string): The name of the advanced computer search.

Returns: None Example:

err := client.DeleteAdvancedComputerSearchByName("SearchName")
if err != nil {
    log.Fatal(err)
}

Errors: Returns an error if the request fails or if the resource cannot be deleted.

func (*Client) DeleteAdvancedMobileDeviceSearchByID

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

DeleteAdvancedMobileDeviceSearchByID deletes an Advanced Mobile Device Search by ID

func (*Client) DeleteAdvancedUserSearchByID

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

Function: DeleteAdvancedUserSearchByID Method: DELETE Path: /JSSResource/advancedusersearches/id/{id} Description: Deletes an existing Jamf Pro advanced user search resource by its ID. Parameters:

  • id (int): The ID of the advanced user search.

Returns: None Example:

err := client.DeleteAdvancedUserSearchByID(123)
if err != nil {
    log.Fatal(err)
}

Errors: Returns an error if the request fails or if the resource cannot be deleted.

func (*Client) DeleteAdvancedUserSearchByName

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

Function: DeleteAdvancedUserSearchByName Method: DELETE Path: /JSSResource/advancedusersearches/name/{name} Description: Deletes an existing Jamf Pro advanced user search resource by its name. Parameters:

  • name (string): The name of the advanced user search.

Returns: None Example:

err := client.DeleteAdvancedUserSearchByName("SearchName")
if err != nil {
    log.Fatal(err)
}

Errors: Returns an error if the request fails or if the resource cannot be deleted.

func (*Client) DeleteAllowedFileExtensionByID

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

DeleteAllowedFileExtensionByID deletes an existing allowed file extension by ID

func (*Client) DeleteApiIntegrationByID

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

DeleteApiIntegrationByID deletes an API integration by its ID

func (*Client) DeleteApiIntegrationByName

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

DeleteApiIntegrationByName deletes an API integration by its display name

func (*Client) DeleteAttachmentByIDAndComputerID

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

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

DeleteBYOProfileByID deletes a BYO profile by its ID.

func (*Client) DeleteBYOProfileByName

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

DeleteBYOProfileByName deletes a BYO profile by its name.

func (*Client) DeleteBookmarkByID

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

DeleteBookmarkByID deletes a bookmark in Jamf Pro by its ID

func (*Client) DeleteBookmarkByName

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

DeleteBookmarkByName deletes a bookmark in Jamf Pro by its name

func (*Client) DeleteBuildingByID

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

DeleteBuildingByID deletes a building in Jamf Pro by its ID.

func (*Client) DeleteBuildingByName

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

DeleteBuildingByNameByID deletes a building in Jamf Pro by its name.

func (*Client) DeleteCSATokenExchange

func (c *Client) DeleteCSATokenExchange() (*SharedResourcResponseError, error)

DeleteCSATokenExchange deletes the CSA token exchange, disabling Jamf Pro's ability to authenticate with cloud-hosted services.

func (*Client) DeleteCategoryByID

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

DeleteCategoryByID deletes a category by its ID

func (*Client) DeleteCategoryByName

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

DeleteCategoryByNameByID deletes a category by its name after inferring its ID.

func (*Client) DeleteClassByID

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

DeleteClassByID deletes an existing class with the given ID.

func (*Client) DeleteClassByName

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

DeleteClassByName deletes a class by its name.

func (*Client) DeleteCloudIdentityProviderByID

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

DeleteCloudIdentityProviderById deletes a Cloud Identity Provider by its ID.

func (*Client) DeleteComputerByID

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

DeleteComputerByID deletes an existing Computer by its ID

func (*Client) DeleteComputerByName

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

DeleteComputerByName deletes an existing computer by its name

func (*Client) DeleteComputerExtensionAttributeByID

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

DeleteComputerExtensionAttributeByID deletes a computer extension attribute by its ID

func (*Client) DeleteComputerExtensionAttributeByName

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

DeleteComputerExtensionAttributeByName deletes a computer extension attribute by its name

func (*Client) DeleteComputerGroupByID

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

DeleteComputerGroupByID deletes a computer group by its ID.

func (*Client) DeleteComputerGroupByName

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

DeleteComputerGroupByName deletes a computer group by its name.

func (*Client) DeleteComputerInventoryByID

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

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

func (*Client) DeleteComputerInventoryCollectionSettingsCustomPathByID

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

DeleteComputerInventoryCollectionSettingsCustomPathByID deletes a custom path by ID.

func (*Client) DeleteComputerInvitationByID

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

DeleteComputerInvitationByID deletes a computer invitation by its ID.

func (*Client) DeleteComputerPrestageByID

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

DeleteComputerPrestageByID deletes a computer prestage by its ID

func (*Client) DeleteComputerPrestageByName

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

DeleteComputerPrestageByNameByID deletes a computer prestage by its name.

func (*Client) DeleteDepartmentByID

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

DeleteDepartmentByID Deletes department with given id

func (*Client) DeleteDepartmentByName

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

DeleteDepartmentByName deletes a department with given name, leverages GetDepartmentByName

func (*Client) DeleteDeviceEnrollmentByID

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

DeleteDeviceEnrollmentByID deletes a device enrollment instance with the specified ID

func (*Client) DeleteDirectoryBindingByID

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

DeleteDirectoryBindingByID deletes a directory binding by its ID.

func (*Client) DeleteDirectoryBindingByName

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

DeleteDirectoryBindingByName deletes a directory binding by its name.

func (*Client) DeleteDiskEncryptionConfigurationByID

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

DeleteDiskEncryptionConfigurationByID deletes a disk encryption configuration by its ID.

func (*Client) DeleteDiskEncryptionConfigurationByName

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

DeleteDiskEncryptionConfigurationByName deletes a disk encryption configuration by its name.

func (*Client) DeleteDistributionPointByID

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

DeleteDistributionPointByID deletes a distribution point by its ID.

func (*Client) DeleteDistributionPointByName

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

DeleteDistributionPointByName deletes a distribution point by its name.

func (*Client) DeleteDockItemByID

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

DeleteDockItemsByID deletes a dock item by its ID.

func (*Client) DeleteDockItemByName

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

DeleteDockItemsByName deletes a dock item by its name.

func (*Client) DeleteEbookByID

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

DeleteEbookByID deletes a ebook by its ID.

func (*Client) DeleteEbookByName

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

DeleteEbookByName deletes a ebook by its name.

func (*Client) DeleteEnrollmentCustomizationByID

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

Deletes resource enrollment customization by id

func (*Client) DeleteEnrollmentMessageByLanguageID

func (c *Client) DeleteEnrollmentMessageByLanguageID(languageId string) error

DeleteEnrollmentMessageByLanguageID deletes the enrollment messaging for a specific language ID

func (*Client) DeleteExternalPatchSourceByID

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

DeleteExternalPatchSourceByID deletes an external patch source by its ID from the Jamf Pro server.

func (*Client) DeleteIBeaconByID

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

DeleteIBeaconByID deletes an iBeacon by its ID in Jamf Pro.

func (*Client) DeleteIBeaconByName

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

DeleteIBeaconByName deletes an iBeacon by its name in Jamf Pro.

func (*Client) DeleteJCDS2PackageV2

func (c *Client) DeleteJCDS2PackageV2(filePath string) error

DeleteJCDS2PackageV2 deletes an existing file from JCDS 2.0 using AWS SDK v2.

func (*Client) DeleteJamfApiRoleByID

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

DeleteJamfApiRoleByID deletes a Jamf API role by its ID

func (*Client) DeleteJamfApiRoleByName

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

DeleteJamfApiRoleByName deletes a Jamf API role by its display name

func (*Client) DeleteJamfAppCatalogAppInstallerDeploymentByID

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

DeleteJamfAppCatalogDeploymentByID deletes deployment by provided ID & returns ResponseJamfAppCatalogDeploymentCreateAndUpdate

func (*Client) DeleteJamfProtectIntegration

func (c *Client) DeleteJamfProtectIntegration() error

DeleteJamfProtectIntegration deletes the current Jamf Protect integration

func (*Client) DeleteLDAPServerByID

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

DeleteLDAPServerByID deletes an LDAP server identified by its ID.

func (*Client) DeleteLDAPServerByName

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

DeleteLDAPServerByName deletes an LDAP server identified by its name.

func (*Client) DeleteLicensedSoftwareByID

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

DeleteLicensedSoftwareByID deletes a licensed software item by its ID.

func (*Client) DeleteLicensedSoftwareByName

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

DeleteLicensedSoftwareByName deletes a licensed software item by its name.

func (*Client) DeleteLogFlushingTaskByID

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

DeleteLogFlushingTaskByID deletes a specific log flushing task by its ID from Jamf Pro

func (*Client) DeleteMacApplicationByID

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

DeleteMacApplicationByID deletes a MacApplication by its ID.

func (*Client) DeleteMacApplicationByName

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

DeleteMacApplicationByName deletes a MacApplication by its name.

func (*Client) DeleteMacOSConfigurationProfileByID

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

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

func (*Client) DeleteMacOSConfigurationProfileByName

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

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

func (*Client) DeleteMobileDeviceApplicationByBundleID

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

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

func (*Client) DeleteMobileDeviceApplicationByBundleIDAndVersion

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

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

func (*Client) DeleteMobileDeviceApplicationByName

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

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

func (*Client) DeleteMobileDeviceApplicationpByID

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

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

func (*Client) DeleteMobileDeviceByID

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

DeleteMobileDeviceByID deletes a mobile device by its ID.

func (*Client) DeleteMobileDeviceByName

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

DeleteMobileDeviceByName deletes a mobile device by its name.

func (*Client) DeleteMobileDeviceConfigurationProfileByID

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

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

func (*Client) DeleteMobileDeviceConfigurationProfileByName

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

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

DeleteMobileDeviceEnrollmentProfileByID deletes a mobile device enrollment profile by its ID.

func (*Client) DeleteMobileDeviceEnrollmentProfileByInvitation

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

DeleteMobileDeviceEnrollmentProfileByInvitation deletes a mobile device enrollment profile by its invitation.

func (*Client) DeleteMobileDeviceEnrollmentProfileByName

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

DeleteMobileDeviceEnrollmentProfileByName deletes a mobile device enrollment profile by its name.

func (*Client) DeleteMobileDeviceGroupByID

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

DeleteMobileDeviceGroupByID deletes a mobile device group by its ID.

func (*Client) DeleteMobileDeviceGroupByName

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

DeleteMobileDeviceGroupByName deletes a mobile device group by its name.

func (*Client) DeleteMobileDevicePrestageByID

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

DeleteMobileDevicePrestageByID a mobile prestage at the given id

func (*Client) DeleteMobileDeviceProvisioningProfileByID

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

DeleteMobileDeviceProvisioningProfileByID deletes a mobile device provisioning profile by ID

func (*Client) DeleteMobileDeviceProvisioningProfileByName

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

DeleteMobileDeviceProvisioningProfileByName deletes a mobile device provisioning profile by Name

func (*Client) DeleteMobileDeviceProvisioningProfileByUUID

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

DeleteMobileDeviceProvisioningProfileByUUID deletes a mobile device provisioning profile by UUID

func (*Client) DeleteMobileExtensionAttributeByID

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

DeleteMobileExtensionAttributeByID deletes a mobile extension attribute by its ID.

func (*Client) DeleteMobileExtensionAttributeByName

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

DeleteMobileExtensionAttributeByName deletes a mobile extension attribute by its name.

func (*Client) DeleteMultipleBuildingsByID

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

DeleteMultipleBuildingsByID deletes multiple buildings in Jamf Pro by their IDs.

func (*Client) DeleteMultipleCategoriesByID

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

DeleteMultipleCategoriesByID deletes multiple categories by their IDs

func (*Client) DeleteMultipleComputerExtensionAttributeByID

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

DeleteMultipleComputerExtensionAttributeByID deletes multiple computer extension attributes by their IDs

func (*Client) DeleteMultipleEnrollmentMessagesByLanguageIDs

func (c *Client) DeleteMultipleEnrollmentMessagesByLanguageIDs(languageIds []string) error

DeleteMultipleEnrollmentMessagesByLanguageIDs deletes multiple enrollment language messages by their IDs

func (*Client) DeleteMultiplePackagesByID

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

DeleteMultiplePackagesByID deletes multiple packages by their IDs from the Jamf Pro server. The function takes a slice of strings as input representing the IDs of the packages to be deleted.

func (*Client) DeleteNetworkSegmentByID

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

DeleteNetworkSegmentByID deletes a policy by its ID.

func (*Client) DeleteNetworkSegmentByName

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

DeleteNetworkSegmentByName deletes a policy by its name.

func (*Client) DeletePackageByID

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

DeletePackageByID deletes a package by its ID from the Jamf Pro server.

func (*Client) DeletePackageManifestByID

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

DeletePackageManifestByID deletes a package by its ID from the Jamf Pro server.

func (*Client) DeletePatchPolicyByID

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

DeletePatchPolicyByID deletes a patch policy by ID

func (*Client) DeletePatchPolicyFromDashboard

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

DeletePatchPolicyFromDashboard removes a patch policy from the dashboard

func (*Client) DeletePatchSoftwareTitleConfigurationById

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

DeletePatchSoftwareTitleConfigurationById deletes a PatchSoftwareTitleConfiguration with given ID

func (*Client) DeletePolicyByID

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

DeletePolicyByID deletes a policy by its ID.

func (*Client) DeletePolicyByName

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

DeletePolicyByName deletes a policy by its name.

func (*Client) DeletePrestagePane

func (c *Client) DeletePrestagePane(customizationResourceID string, paneID string) error

DeletePrestagePane deletes a text, LDAP or SSO prestage pane from an enrollment customization

func (*Client) DeletePrinterByID

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

DeletePrinterByID deletes a printer by its ID.

func (*Client) DeletePrinterByName

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

DeletePrinterByName deletes a printer by its name.

func (*Client) DeleteRemovableMACAddressByID

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

DeleteRemovableMACAddressByID deletes a removable MAC address by its ID.

func (*Client) DeleteRemovableMACAddressByName

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

DeleteRemovableMACAddressByName deletes a removable MAC address by its name.

func (*Client) DeleteRestrictedSoftwareByID

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

DeleteRestrictedSoftwareByID deletes a restricted software entry by its ID.

func (*Client) DeleteRestrictedSoftwareByName

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

DeleteRestrictedSoftwareByName deletes a restricted software entry by its name.

func (*Client) DeleteReturnToServiceConfigurationByID

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

DeleteReturnToServiceConfigurationByID deletes a Return to Service configuration by ID.

func (*Client) DeleteSSOPrestagePane

func (c *Client) DeleteSSOPrestagePane(customizationResourceID string, paneID string) error

DeleteSSOPrestagePane deletes a SSO prestage pane for an enrollment customization

func (*Client) DeleteScriptByID

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

Deletes script with provided ID

func (*Client) DeleteScriptByName

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

Leverages DeleteScriptByID and GetScripts to delete script by Name

func (*Client) DeleteSelfServiceBrandingMacOSByID

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

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

func (*Client) DeleteSelfServiceBrandingMacOSByName

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

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

func (*Client) DeleteSiteByID

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

DeleteSiteByID deletes a site by its ID.

func (*Client) DeleteSiteByName

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

DeleteSiteByName deletes a site by its name.

func (*Client) DeleteSmartComputerGroupByID

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

DeleteSmartComputerGroupByID deletes a Smart Computer Group by ID

func (*Client) DeleteSoftwareUpdateServerByID

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

DeleteSoftwareUpdateServerByID deletes a software update server by its ID.

func (*Client) DeleteSoftwareUpdateServerByName

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

DeleteSoftwareUpdateServerByName deletes a software update server by its name.

func (*Client) DeleteUserByEmail

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

DeleteUserByEmail deletes a user by their email.

func (*Client) DeleteUserByID

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

DeleteUserByID deletes a user by their ID.

func (*Client) DeleteUserByName

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

DeleteUserByName deletes a user by their name.

func (*Client) DeleteUserExtensionAttributeByID

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

DeleteUserExtensionAttributeByID deletes a user extension attribute by its ID.

func (*Client) DeleteUserExtensionAttributeByName

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

DeleteUserExtensionAttributeByName deletes a user extension attribute by its name.

func (*Client) DeleteUserGroupByID

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

DeleteUserGroupByID deletes a user group by its ID.

func (*Client) DeleteUserGroupByName

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

DeleteUserGroupByName deletes a user group by its name.

func (*Client) DeleteVPPAccountByID

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

DeleteVPPAccountByID deletes a specific VPP account by its ID.

func (*Client) DeleteVPPAssignmentByID

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

DeleteVPPAssignmentByID deletes a VPP assignment by its ID

func (*Client) DeleteVolumePurchasingLocationByID

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

DeleteVolumePurchasingLocationByID deletes a specific volume purchasing location by its ID.

func (*Client) DeleteVolumePurchasingSubscriptionByID

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

DeleteVolumePurchasingSubscriptionByID deletes a volume purchasing subscription by its ID

func (*Client) DeleteVolumePurchasingSubscriptionByName

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

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

func (*Client) DeleteWebhookByID

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

DeleteWebhookByID deletes a specific webhook by its ID.

func (*Client) DeleteWebhookByName

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

DeleteWebhookByName deletes a specific webhook by its name.

func (*Client) DoPackageUpload

func (c *Client) DoPackageUpload(filePath string, packageData *ResourcePackage) (*ResponsePackageCreatedAndUpdated, error)

DoPackageUpload uploads a local package file to Jamf Pro, creates the package record, and verifies the uploaded package’s SHA3_512 hash.

Steps: 1. Calculate the SHA3_512 of the local file before uploading (initialHash). 2. Create package metadata in Jamf Pro (Package name, etc.). 3. Upload the actual file to Jamf Pro. 4. Poll Jamf Pro until the uploaded package’s SHA3_512 hash is present or until max retries are reached. 5. Compare Jamf Pro’s hash with the initially calculated hash to ensure data integrity.

Arguments: - filePath: The path to the local package file to be uploaded. - packageData: The metadata (ResourcePackage) associated with the package to be uploaded.

Returns: - ResponsePackageCreatedAndUpdated: Contains package details after creation and upload. - error: Non-nil if any step fails.

Usage: - Instantiate a Client that can communicate with Jamf Pro. - Prepare a ResourcePackage struct with needed fields (FileName is set automatically here). - Call DoPackageUpload with the path of your package and that resource data.

func (*Client) DoPaginatedGet

func (c *Client) DoPaginatedGet(endpoint_root string, params url.Values) (*ResponsePaginated, error)

DoPaginatedGet retrieves paginated results from a Jamf Pro API endpoint.

It constructs the request with optional sorting and pagination parameters, performs repeated GETs until all pages are fetched (based on reported total size or final page), and accumulates results.

Parameters:

  • endpoint_root: Base URL for the API resource.
  • params: Query parameters including optional "page", "page-size", and "sort".

Returns a combined StandardPaginatedResponse or an error if a request fails.

func (*Client) EraseComputerByID

func (c *Client) EraseComputerByID(id string, devicePin RequestEraseDeviceComputer) error

EraseComputerByID erases a computer by its ID.

func (*Client) ForceDDMSync

func (c *Client) ForceDDMSync(clientManagementId string) error

ForceDDMSync initiates a DDM synchronization for a specific client management ID

func (*Client) ForceStopManagedSoftwareUpdateFeatureToggleProcess

func (c *Client) ForceStopManagedSoftwareUpdateFeatureToggleProcess() (*SharedResourcResponseError, error)

ForceStopManagedSoftwareUpdateFeatureToggleProcess forcefully stops any ongoing or stalled feature-toggle processes. This "Break Glass" endpoint should not be used under nominal conditions.

func (*Client) GenerateKeystoreForOIDCMessages

func (c *Client) GenerateKeystoreForOIDCMessages() error

GenerateKeystoreForOIDCMessages generates a new certificate used for signing OIDC messages.

func (*Client) GetADUESessionTokenSettings

func (c *Client) GetADUESessionTokenSettings() (*ResourceADUETokenSettings, error)

func (*Client) GetAccountByID

func (c *Client) GetAccountByID(id string) (*ResourceAccount, error)

GetAccountByID retrieves the Account by its ID

func (*Client) GetAccountByName

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

GetAccountByName retrieves the Account by its name

func (*Client) GetAccountDrivenUserEnrollmentAccessGroupByID

func (c *Client) GetAccountDrivenUserEnrollmentAccessGroupByID(id string) (*ResourceAccountDrivenUserEnrollmentAccessGroup, error)

GetAccountDrivenUserEnrollmentAccessGroupByID retrieves an Account Driven User Enrollment Access Group by its ID

func (*Client) GetAccountDrivenUserEnrollmentAccessGroupByName

func (c *Client) GetAccountDrivenUserEnrollmentAccessGroupByName(name string) (*ResourceAccountDrivenUserEnrollmentAccessGroup, error)

GetAccountDrivenUserEnrollmentAccessGroupByName retrieves an Account Driven User Enrollment Access Group by its name

func (*Client) GetAccountDrivenUserEnrollmentAccessGroups

func (c *Client) GetAccountDrivenUserEnrollmentAccessGroups(params url.Values) (*ResponseAccountDrivenUserEnrollmentAccessGroupsList, error)

GetAccountDrivenUserEnrollmentAccessGroups fetches all ADUE access groups

func (*Client) GetAccountGroupByID

func (c *Client) GetAccountGroupByID(id string) (*ResourceAccountGroup, error)

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

func (*Client) GetAccountGroupByName

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

GetAccountByName retrieves the Account by its name

func (*Client) GetAccountPreferences

func (c *Client) GetAccountPreferences() (*ResourceAccountPreferences, error)

GetAccountPreferences retrieves the jamf pro account settings.

func (*Client) GetAccounts

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

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

func (*Client) GetActivationCode

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

GetActivationCode retrieves the activation code.

func (*Client) GetActiveCertificateAuthority

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

GetActiveCertificateAuthority retrieves the active certificate authority details.

func (*Client) GetAdvancedComputerSearchByID

func (c *Client) GetAdvancedComputerSearchByID(id string) (*ResourceAdvancedComputerSearch, error)

Function: GetAdvancedComputerSearchByID Method: GET Path: /JSSResource/advancedcomputersearches/id/{id} Description: Gets a Jamf Pro advanced computer search resource by its ID. Parameters:

  • id (int): The ID of the advanced computer search.

Returns: ResourceAdvancedComputerSearch - The advanced computer search resource. Example:

search, err := client.GetAdvancedComputerSearchByID(123)
if err != nil {
    log.Fatal(err)
}
fmt.Println(search)

Errors: Returns an error if the request fails or if the ID is not found.

func (*Client) GetAdvancedComputerSearchByName

func (c *Client) GetAdvancedComputerSearchByName(name string) (*ResourceAdvancedComputerSearch, error)

Function: GetAdvancedComputerSearchByName Method: GET Path: /JSSResource/advancedcomputersearches/name/{name} Description: Gets a Jamf Pro advanced computer search resource by its name. Parameters:

  • name (string): The name of the advanced computer search.

Returns: ResourceAdvancedComputerSearch - The advanced computer search resource. Example:

search, err := client.GetAdvancedComputerSearchByName("SearchName")
if err != nil {
    log.Fatal(err)
}
fmt.Println(search)

Errors: Returns an error if the request fails or if the name is not found.

func (*Client) GetAdvancedComputerSearches

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

Function: GetAdvancedComputerSearches Method: GET Path: /JSSResource/advancedcomputersearches Description: Gets a list of all Jamf Pro Advanced Computer Search resources. Parameters: None Returns: ResponseAdvancedComputerSearchesList - A list of advanced computer searches. Errors: Returns an error if the request fails. Example:

searches, err := client.GetAdvancedComputerSearches()
if err != nil {
    log.Fatal(err)
}
fmt.Println(searches)

func (*Client) GetAdvancedMobileDeviceSearchByID

func (c *Client) GetAdvancedMobileDeviceSearchByID(id string) (*ResourceAdvancedMobileDeviceSearch, error)

GetAdvancedMobileDeviceSearchByID retrieves a specific Advanced Mobile Device Search by ID

func (*Client) GetAdvancedMobileDeviceSearchByName

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

GetAdvancedMobileDeviceSearchByName retrieves a specific Advanced Mobile Device Search by name

func (*Client) GetAdvancedMobileDeviceSearchChoices

func (c *Client) GetAdvancedMobileDeviceSearchChoices(criteria, site, contains string) (*ResponseAdvancedMobileDeviceSearchChoices, error)

GetAdvancedMobileDeviceSearchChoices retrieves criteria choices for Advanced Mobile Device Searches

func (*Client) GetAdvancedMobileDeviceSearches

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

GetAdvancedMobileDeviceSearches retrieves all Advanced Mobile Device Searches

func (*Client) GetAdvancedUserSearchByID

func (c *Client) GetAdvancedUserSearchByID(id string) (*ResourceAdvancedUserSearch, error)

Function: GetAdvancedUserSearchByID Method: GET Path: /JSSResource/advancedusersearches/id/{id} Description: Gets a Jamf Pro advanced user search resource by its ID. Parameters:

  • id (int): The ID of the advanced user search.

Returns: ResourceAdvancedUserSearch - The advanced user search resource. Example:

search, err := client.GetAdvancedUserSearchByID(123)
if err != nil {
    log.Fatal(err)
}
fmt.Println(search)

Errors: Returns an error if the request fails or if the ID is not found.

func (*Client) GetAdvancedUserSearchByName

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

Function: GetAdvancedUserSearchByName Method: GET Path: /JSSResource/advancedusersearches/name/{name} Description: Gets a Jamf Pro advanced user search resource by its name. Parameters:

  • name (string): The name of the advanced user search.

Returns: ResourceAdvancedUserSearch - The advanced user search resource. Example:

search, err := client.GetAdvancedUserSearchByName("SearchName")
if err != nil {
    log.Fatal(err)
}
fmt.Println(search)

Errors: Returns an error if the request fails or if the name is not found.

func (*Client) GetAdvancedUserSearches

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

Function: GetAdvancedUserSearches Method: GET Path: /JSSResource/advancedusersearches Description: Gets a list of all Jamf Pro Advanced User Search resources. Parameters: None Returns: ResponseAdvancedUserSearchesList - A list of advanced user searches. Example:

searches, err := client.GetAdvancedUserSearches()
if err != nil {
    log.Fatal(err)
}
fmt.Println(searches)

Errors: Returns an error if the request fails.

func (*Client) GetAllowedFileExtensionByID

func (c *Client) GetAllowedFileExtensionByID(id string) (*ResourceAllowedFileExtension, error)

GetAllowedFileExtensionByID retrieves the allowed file extension by its ID

func (*Client) GetAllowedFileExtensionByName

func (c *Client) GetAllowedFileExtensionByName(name string) (*ResourceAllowedFileExtension, error)

GetAllowedFileExtensionByName retrieves the allowed file extension by its name

func (*Client) GetAllowedFileExtensions

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

GetAllowedFileExtensions retrieves all allowed file extensions

func (*Client) GetApiIntegrationByID

func (c *Client) GetApiIntegrationByID(id string) (*ResourceApiIntegration, error)

GetApiIntegrationByID fetches an API integration by its ID

func (*Client) GetApiIntegrationByName

func (c *Client) GetApiIntegrationByName(name string) (*ResourceApiIntegration, error)

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

func (*Client) GetApiIntegrations

func (c *Client) GetApiIntegrations(params url.Values) (*ResponseApiIntegrationsList, error)

GetApiIntegrations fetches all API integrations

func (*Client) GetBYOProfileByID

func (c *Client) GetBYOProfileByID(id string) (*ResourceBYOProfile, error)

GetBYOProfileByID retrieves a BYO profile by its ID.

func (*Client) GetBYOProfileByName

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

GetBYOProfileByName retrieves a BYO profile by its name.

func (*Client) GetBYOProfiles

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

GetBYOProfiles gets a list of all BYO profiles.

func (*Client) GetBookmarkByID

func (c *Client) GetBookmarkByID(id string) (*ResourceBookmark, error)

GetBookmarkByID retrieves a single bookmark information by its ID

func (*Client) GetBookmarkByName

func (c *Client) GetBookmarkByName(name string) (*ResourceBookmark, error)

GetBookmarkByName retrieves a single bookmark information by its name

func (*Client) GetBookmarks

func (c *Client) GetBookmarks(params url.Values) (*ResponseBookmarksList, error)

GetBookmarks retrieves all bookmark information with optional sorting

func (*Client) GetBuildingByID

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

GetBuildingByID retrieves a single building information by its ID.

func (*Client) GetBuildingByName

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

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

func (*Client) GetBuildingResourceHistoryByID

func (c *Client) GetBuildingResourceHistoryByID(id string, params url.Values) (*ResponseBuildingResourceHistoryList, error)

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

func (*Client) GetBuildings

func (c *Client) GetBuildings(params url.Values) (*ResponseBuildingsList, error)

GetBuildings retrieves all building information with optional sorting.

func (*Client) GetCSATenantID

func (c *Client) GetCSATenantID() (*ResponseCSATenantID, error)

GetCSATenantID retrieves the CSA tenant ID.

func (*Client) GetCSATokenExchangeDetails

func (c *Client) GetCSATokenExchangeDetails() (*ResponseCSATokenExchangeDetails, error)

GetCSATokenExchangeDetails retrieves details regarding the CSA token exchange.

func (*Client) GetCacheSettings

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

GetCacheSettings gets the current cache settings.

func (*Client) GetCategories

func (c *Client) GetCategories(params url.Values) (*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

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

GetCategoryByID retrieves a category by its ID

func (*Client) GetCategoryByName

func (c *Client) GetCategoryByName(name string) (*ResourceCategory, error)

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

func (*Client) GetClassByID

func (c *Client) GetClassByID(id string) (*ResourceClass, error)

GetClassesByID retrieves a class by its ID.

func (*Client) GetClassByName

func (c *Client) GetClassByName(name string) (*ResourceClass, error)

GetClassesByName retrieves a class by its name.

func (*Client) GetClasses

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

GetClasses gets a list of all classes.

func (*Client) GetClientCheckinSettings

func (c *Client) GetClientCheckinSettings() (*ResourceClientCheckinSettings, error)

func (*Client) GetCloudDistributionPointUploadCapability

func (c *Client) GetCloudDistributionPointUploadCapability() (*ResourceCloudDistributionPointUploadCapability, error)

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

func (*Client) GetCloudIdentityProviderByID

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

GetCloudIdentityProviderByID retrieves Cloud Identity Provider information.

func (*Client) GetCloudIdentityProviderByName

func (c *Client) GetCloudIdentityProviderByName(name string) (*ResourceCloudIdp, error)

GetCloudIdentityProviderByName retrieves Cloud Identity Provider by name

func (*Client) GetCloudIdentityProviderConfigurationByID

func (c *Client) GetCloudIdentityProviderConfigurationByID(id string) (*ResourceCloudIdentityProviderDetails, error)

GetCloudIdentityProviderConfigurationByID retrieves a specific cloud identity provider configuration by its ID

func (*Client) GetCloudIdentityProviderConfigurationByName

func (c *Client) GetCloudIdentityProviderConfigurationByName(name string) (*ResourceCloudIdentityProvider, error)

GetCloudIdentityProviderConfigurationByName retrieves a cloud identity provider by its display name

func (*Client) GetCloudIdentityProviderDefaultServerMappings

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

GetCloudIdentityProviderDefaultServerMappings retrieves the default mappings for the Cloud Identity Provider.

func (*Client) GetCloudIdentityProviders

func (c *Client) GetCloudIdentityProviders(params url.Values) (*ResponseCloudIdentityProvidersList, error)

GetCloudIdentityProviders retrieves all cloud identity provider configurations

func (*Client) GetComputerByID

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

GetComputerByID retrieves the computer details by its ID.

func (*Client) GetComputerByName

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

GetComputerByName retrieves the computer by its name

func (*Client) GetComputerExtensionAttributeByID

func (c *Client) GetComputerExtensionAttributeByID(id string) (*ResourceComputerExtensionAttribute, error)

GetComputerExtensionAttributeByID retrieves a computer extension attribute by its ID

func (*Client) GetComputerExtensionAttributeByName

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

GetComputerExtensionAttributeByName retrieves a computer extension attribute by its name

func (*Client) GetComputerExtensionAttributes

func (c *Client) GetComputerExtensionAttributes(params url.Values) (*ResponseComputerExtensionAttributesList, error)

GetComputerExtensionAttributes retrieves all computer extension attributes with pagination

func (*Client) GetComputerFileVaultInventoryByID

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

GetComputerFileVaultInventoryByID returns file vault details by the computer ID.

func (*Client) GetComputerGroupByID

func (c *Client) GetComputerGroupByID(id string) (*ResourceComputerGroup, error)

GetComputerGroupByID retrieves a computer group by its ID.

func (*Client) GetComputerGroupByName

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

GetComputerGroupByName retrieves a computer group by its name.

func (*Client) GetComputerGroups

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

GetComputerGroups gets a list of all computer groups

func (*Client) GetComputerHistoryByComputerID

func (c *Client) GetComputerHistoryByComputerID(id string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerID retrieves the historical information of a computer given its ID.

func (*Client) GetComputerHistoryByComputerIDAndDataSubset

func (c *Client) GetComputerHistoryByComputerIDAndDataSubset(id string, subset string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerIDAndDataSubset retrieves a subset of the historical information of a computer given its ID and subset name.

func (*Client) GetComputerHistoryByComputerMACAddress

func (c *Client) GetComputerHistoryByComputerMACAddress(MACAddress string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerMACAddress retrieves the historical information of a computer by it's MAC Address

func (*Client) GetComputerHistoryByComputerMACAddressAndDataSubset

func (c *Client) GetComputerHistoryByComputerMACAddressAndDataSubset(MACAddress string, subset string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerMACAddressAndDataSubset retrieves a subset of the historical information of a computer by it's serial number and data subset name.

func (*Client) GetComputerHistoryByComputerName

func (c *Client) GetComputerHistoryByComputerName(name string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerName retrieves the historical information of a computer given its name.

func (*Client) GetComputerHistoryByComputerNameAndDataSubset

func (c *Client) GetComputerHistoryByComputerNameAndDataSubset(name string, subset string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerNameAndDataSubset retrieves a subset of the historical information of a computer given its name and subset name.

func (*Client) GetComputerHistoryByComputerSerialNumber

func (c *Client) GetComputerHistoryByComputerSerialNumber(serial string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerSerialNumber retrieves the historical information of a computer by it's serial number

func (*Client) GetComputerHistoryByComputerSerialNumberAndDataSubset

func (c *Client) GetComputerHistoryByComputerSerialNumberAndDataSubset(udid string, subset string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerSerialNumberAndDataSubset retrieves a subset of the historical information of a computer by it's serial number and data subset name.

func (*Client) GetComputerHistoryByComputerUDID

func (c *Client) GetComputerHistoryByComputerUDID(udid string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerUDID retrieves the historical information of a computer by it's UDID.

func (*Client) GetComputerHistoryByComputerUDIDAndDataSubset

func (c *Client) GetComputerHistoryByComputerUDIDAndDataSubset(udid string, subset string) (*ResourceComputerHistory, error)

GetComputerHistoryByComputerUDIDAndDataSubset retrieves a subset of the historical information of a computer given its udid and subset name.

func (*Client) GetComputerInventoryByID

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

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

func (*Client) GetComputerInventoryByName

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

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

func (*Client) GetComputerInventoryCollectionInformation

func (c *Client) GetComputerInventoryCollectionInformation() (*ResourceComputerInventoryCollection, error)

GetComputerInventoryCollection gets the jamf pro inventory collection settings

func (*Client) GetComputerInventoryCollectionSettings

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

GetComputerInventoryCollectionSettingss retrives a computer inventory collection list.

func (*Client) GetComputerInvitationByID

func (c *Client) GetComputerInvitationByID(id string) (*ResourceComputerInvitation, error)

Duplicate function ??? GetComputerInvitationByID retrieves a computer invitation by its ID.

func (*Client) GetComputerInvitationByInvitationID

func (c *Client) GetComputerInvitationByInvitationID(id string) (*ResourceComputerInvitation, error)

GetComputerInvitationsByName retrieves a computer invitation by its invitation Name.

func (*Client) GetComputerInvitations

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

GetComputerInvitations retrieves a list of all computer invitations.

func (*Client) GetComputerPrestageByID

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

GetComputerPrestageByID retrieves a specific computer prestage by its ID.

func (*Client) GetComputerPrestageByName

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

GetComputerPrestageByName retrieves a specific computer prestage by its name.

func (*Client) GetComputerPrestages

func (c *Client) GetComputerPrestages(params url.Values) (*ResponseComputerPrestagesList, error)

GetComputerPrestagesV3 retrieves all computer prestage information with optional sorting.

func (*Client) GetComputerRecoveryLockPasswordByID

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

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

func (*Client) GetComputers

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

GetComputers retrieves all computers

func (*Client) GetComputersFileVaultInventory

func (c *Client) GetComputersFileVaultInventory(params url.Values) (*FileVaultInventoryList, error)

GetComputersFileVaultInventory retrieves all computer inventory filevault information.

func (*Client) GetComputersInventory

func (c *Client) GetComputersInventory(params url.Values) (*ResponseComputerInventoryList, error)

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

func (*Client) GetConditionalAccessDeviceComplianceFeatureEnablement

func (c *Client) GetConditionalAccessDeviceComplianceFeatureEnablement() (*ResourceConditionalAccessDeviceComplianceStatus, error)

GetConditionalAccessDeviceComplianceFeatureEnablement retrieves the enablement state of the device compliance settinfs for CA.

func (*Client) GetConfigProfileByPayloadUUID

func (c *Client) GetConfigProfileByPayloadUUID(id string) (*ResourceConfigProfile, error)

GetConfigProfileByPayloadUUID retrieves a macOS configuration profile by payload UUID

func (*Client) GetCurrentLocalAdminPasswordForSpecifiedUsernameByClientManagementID

func (c *Client) GetCurrentLocalAdminPasswordForSpecifiedUsernameByClientManagementID(clientManagementID string, username string) (*ResponseLocalAdminCurrentPassword, error)

GetCurrentLocalAdminPasswordForSpecifiedUsernameByClientManagementID retrieves the current LAPS password for a specific username on a target device. Note: Once viewed, the password will be rotated based on rotation time settings.

func (*Client) GetCustomSettingsSchemaList

func (c *Client) GetCustomSettingsSchemaList() (*ResponseCustomSettingsSchemaList, error)

GetCustomSettingsSchemaList retrieves the list of custom settings schemas

func (*Client) GetDDMStatusItem

func (c *Client) GetDDMStatusItem(clientManagementId string, key string) (*StatusItem, error)

GetDDMStatusItem retrieves the latest status report item for a specific device by its client management ID and status item key.

func (*Client) GetDDMStatusItems

func (c *Client) GetDDMStatusItems(clientManagementId string) (*ResponseStatusItems, error)

GetDDMStatusItems retrieves the latest status report items for a specific device by its client management ID.

func (*Client) GetDSSDeclarationByUUID

func (c *Client) GetDSSDeclarationByUUID(uuid string) (*ResponseDSSDeclaration, error)

GetDSSDeclarationByUUID retrieves a DSS declaration by UUID.

func (*Client) GetDeclarationsByManagedSoftwareUpdatePlanUUID

func (c *Client) GetDeclarationsByManagedSoftwareUpdatePlanUUID(UUID string) (*ResponseDeclarationsList, error)

GetDeclarationsByManagedSoftwareUpdatePlanUUID retrieves all Declarations associated with a Managed Software Update Plan by its UUID.

func (*Client) GetDefaultCloudIdentityProvider

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

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

func (*Client) GetDefaultCloudIdentityProviderDefaultMappings

func (c *Client) GetDefaultCloudIdentityProviderDefaultMappings(providerName string) (*ResponseCloudIdentityProviderDefaultMappings, error)

func (*Client) GetDepartmentByID

func (c *Client) GetDepartmentByID(id string) (*ResourceDepartment, error)

GetDepartmentByID retrieves a department by ID.

func (*Client) GetDepartmentByName

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

GetDepartmentByName retrieves a department by Name.

func (*Client) GetDepartments

func (c *Client) GetDepartments(params url.Values) (*ResponseDepartmentsList, error)

GetDepartments retrieves a list of all departments in list

func (*Client) GetDeviceCommunicationSettings

func (c *Client) GetDeviceCommunicationSettings() (*ResourceDeviceCommunicationSettings, error)

Gets device communication settings

func (*Client) GetDeviceEnrollmentByID

func (c *Client) GetDeviceEnrollmentByID(id string) (*ResourceDeviceEnrollment, error)

GetDeviceEnrollmentByID retrieves a device enrollment by ID.

func (*Client) GetDeviceEnrollmentByName

func (c *Client) GetDeviceEnrollmentByName(name string) (*ResourceDeviceEnrollment, error)

GetDeviceEnrollmentByName retrieves a device enrollment by Name.

func (*Client) GetDeviceEnrollmentHistory

func (c *Client) GetDeviceEnrollmentHistory(id string, params url.Values) (*ResponseDeviceEnrollmentHistory, error)

GetDeviceEnrollmentHistory retrieves the history for a specific device enrollment

func (*Client) GetDeviceEnrollmentSyncStates

func (c *Client) GetDeviceEnrollmentSyncStates(id string) ([]ResourceDeviceEnrollmentSync, error)

GetDeviceEnrollmentSyncStates retrieves all sync states for a specific device enrollment instance

func (*Client) GetDeviceEnrollments

func (c *Client) GetDeviceEnrollments(params url.Values) (*ResponseDeviceEnrollmentsList, error)

GetDeviceEnrollments retrieves a paginated list of device enrollments.

func (*Client) GetDeviceScopeForComputerPrestageByID

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

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

func (*Client) GetDirectoryBindingByID

func (c *Client) GetDirectoryBindingByID(id string) (*ResponseDirectoryBinding, error)

GetDirectoryBindingByID retrieves a single directory binding by its ID.

func (*Client) GetDirectoryBindingByName

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

GetDirectoryBindingByName retrieves a single directory binding by its name.

func (*Client) GetDirectoryBindings

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

GetDirectoryBindings retrieves a serialized list of directory bindings.

func (*Client) GetDiskEncryptionConfigurationByID

func (c *Client) GetDiskEncryptionConfigurationByID(id string) (*ResourceDiskEncryptionConfiguration, error)

GetDiskEncryptionConfigurationByID retrieves a single disk encryption configuration by its ID.

func (*Client) GetDiskEncryptionConfigurationByName

func (c *Client) GetDiskEncryptionConfigurationByName(name string) (*ResourceDiskEncryptionConfiguration, error)

GetDiskEncryptionConfigurationByName retrieves a disk encryption configuration by its name.

func (*Client) GetDiskEncryptionConfigurations

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

GetDiskEncryptionConfigurations retrieves a serialized list of disk encryption configurations.

func (*Client) GetDistributionPointByID

func (c *Client) GetDistributionPointByID(id string) (*ResourceFileShareDistributionPoint, error)

GetDistributionPointByID retrieves a single distribution point by its ID.

func (*Client) GetDistributionPointByName

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

GetDistributionPointByName retrieves a single distribution point by its name.

func (*Client) GetDistributionPoints

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

GetDistributionPoints retrieves a serialized list of distribution points.

func (*Client) GetDockItemByID

func (c *Client) GetDockItemByID(id string) (*ResourceDockItem, error)

GetDockItemsByID retrieves a single dock item by its ID.

func (*Client) GetDockItemByName

func (c *Client) GetDockItemByName(name string) (*ResourceDockItem, error)

GetDockItemsByName retrieves a single dock item by its name.

func (*Client) GetDockItems

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

GetDockItems retrieves a serialized list of dock items.

func (*Client) GetEbookByID

func (c *Client) GetEbookByID(id string) (*ResourceEbooks, error)

GetEbooksByID retrieves a single ebook by its ID.

func (*Client) GetEbookByName

func (c *Client) GetEbookByName(name string) (*ResourceEbooks, error)

GetEbooksByName retrieves a single ebook by its name.

func (*Client) GetEbookByNameAndDataSubset

func (c *Client) GetEbookByNameAndDataSubset(name, subset string) (*ResourceEbooks, error)

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

func (*Client) GetEbooks

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

GetEbooks retrieves a serialized list of ebooks.

func (*Client) GetEligibleAppsForOnboarding

func (c *Client) GetEligibleAppsForOnboarding(sort, filter string) (*ResponseEligiblilityForOnboardingList, error)

GetEligibleAppsForOnboarding retrieves a list of applications that are eligible to be used in an onboarding configuration

func (*Client) GetEligibleConfigurationProfilesForOnboarding

func (c *Client) GetEligibleConfigurationProfilesForOnboarding(sort, filter string) (*ResponseEligiblilityForOnboardingList, error)

GetEligibleConfigurationProfilesForOnboarding retrieves a list of configuration profiles that are eligible to be used in an onboarding configuration

func (*Client) GetEligiblePoliciesForOnboarding

func (c *Client) GetEligiblePoliciesForOnboarding(sort, filter string) (*ResponseEligiblilityForOnboardingList, error)

GetEligiblePoliciesForOnboarding retrieves a list of configuration profiles that are eligible to be used in an onboarding configuration

func (*Client) GetEnrollment

func (c *Client) GetEnrollment() (*ResourceEnrollment, error)

GetEnrollment retrieves the current enrollment configuration

func (*Client) GetEnrollmentCustomizationByID

func (c *Client) GetEnrollmentCustomizationByID(id string) (*ResourceEnrollmentCustomization, error)

Returns single ResourceEnrollmentCustomization object matching given id

func (*Client) GetEnrollmentCustomizationByName

func (c *Client) GetEnrollmentCustomizationByName(name string) (*ResourceEnrollmentCustomization, error)

GetEnrollmentCustomizationByName retrieves an enrollment customization by its display name

func (*Client) GetEnrollmentCustomizations

func (c *Client) GetEnrollmentCustomizations(params url.Values) (*ResponseEnrollmentCustomizationList, error)

Returns paginated list of Enrollment Customization

func (*Client) GetEnrollmentHistory

func (c *Client) GetEnrollmentHistory(params url.Values) (*ResponseEnrollmentHistory, error)

GetEnrollmentHistory fetches the enrollment history from the Jamf Pro API

func (*Client) GetEnrollmentLanguageCodes

func (c *Client) GetEnrollmentLanguageCodes() ([]ResourceLanguageCode, error)

GetEnrollmentLanguageCodes retrieves the list of available languages and their ISO 639-1 codes

func (*Client) GetEnrollmentMessageByLanguageID

func (c *Client) GetEnrollmentMessageByLanguageID(languageId string) (*ResourceEnrollmentLanguage, error)

GetEnrollmentMessageByLanguageID retrieves the enrollment language messaging for a specific language ID with validation against available language codes

func (*Client) GetEnrollmentMessages

func (c *Client) GetEnrollmentMessages() ([]ResourceEnrollmentLanguage, error)

GetEnrollmentMessages returns all currently configured enrollment language messages

func (*Client) GetEnrollmentSettings

func (c *Client) GetEnrollmentSettings() (*EnrollmentSubsetCertificateSettings, error)

GetEnrollmentSettings retrieves the enrollment settings from the Jamf Pro server.

func (*Client) GetGSXConnectionHistory

func (c *Client) GetGSXConnectionHistory(params url.Values) (*ResponseGSXConnectionHistoryList, error)

Function: GetGSXConnectionHistory Method: GET Path: /api/v1/gsx-connection/history Description: Retrieves all GSX connection history. Parameters:

  • params (string): A string specifying the sorting criteria.

Returns: ResponseGSXConnectionHistoryList - A list of GSX connection history. Errors: Returns an error if the request fails. Example:

history, err := client.GetGSXConnectionHistory("sort=id:desc")
if err != nil {
    log.Fatal(err)
}
fmt.Println(history)

func (*Client) GetGSXConnectionInformation

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

Function: GetGSXConnectionInformation Method: GET Path: /api/v1/gsx-connection Description: Gets the GSX connection settings. Parameters: None Returns: ResourceGSXConnection - The GSX connection settings. Errors: Returns an error if the request fails. Example:

connection, err := client.GetGSXConnectionInformation()
if err != nil {
    log.Fatal(err)
}
fmt.Println(connection)

func (*Client) GetHealthCheck

func (c *Client) GetHealthCheck() (bool, error)

GetHealthCheck fetches the Jamf Pro API status.

func (*Client) GetIBeaconByID

func (c *Client) GetIBeaconByID(id string) (*ResourceIBeacons, 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

func (c *Client) GetIBeaconByName(name string) (*ResourceIBeacons, 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

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

GetIBeacons retrieves a list of all iBeacons registered in Jamf Pro.

func (*Client) GetIconByID

func (c *Client) GetIconByID(id int) (*ResponseIconUpload, error)

GetIconByID retrieves icon metadata by its ID

func (*Client) GetJCDS2PackageURIByName

func (c *Client) GetJCDS2PackageURIByName(id string) (*ResponseJCDS2File, error)

GetJCDS2PackageURIByName fetches a file URI from Jamf Cloud Distribution Service

func (*Client) GetJCDS2Packages

func (c *Client) GetJCDS2Packages() ([]ResponseJCDS2List, error)

GetJCDS2Packages fetches a file list from Jamf Cloud Distribution Service

func (*Client) GetJCDS2Properties

func (c *Client) GetJCDS2Properties() (*JCDS2Properties, error)

GetJCDS2Properties fetches properties from Jamf Cloud Distribution Service

func (*Client) GetJamfAPIPrivileges

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

GetJamfAPIPrivileges fetches a list of Jamf API role privileges

func (*Client) GetJamfAPIPrivilegesByName

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

GetJamfAPIPrivilegesByName fetches a list of Jamf API role privileges by name

func (*Client) GetJamfAPIRoles

func (c *Client) GetJamfAPIRoles(params url.Values) (*ResponseApiRolesList, error)

GetJamfAPIRoles fetches a list of Jamf API roles

func (*Client) GetJamfApiRoleByID

func (c *Client) GetJamfApiRoleByID(id string) (*ResourceAPIRole, error)

GetJamfApiRolesByID fetches a Jamf API role by its ID.

func (*Client) GetJamfApiRoleByName

func (c *Client) GetJamfApiRoleByName(name string) (*ResourceAPIRole, error)

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

func (*Client) GetJamfAppCatalogAppInstallerByID

func (c *Client) GetJamfAppCatalogAppInstallerByID(id string) (*ResourceJamfAppCatalogDeployment, error)

Retrieves Jamf App Catalog installer deployment by provided ID & returns ResourceJamfAppCatalogDeployment

func (*Client) GetJamfAppCatalogAppInstallerByName

func (c *Client) GetJamfAppCatalogAppInstallerByName(name string) (*ResourceJamfAppCatalogDeployment, error)

GetJamfAppCatalogAppInstallerByName retrieves deployment by name & returns ResourceJamfAppCatalogDeployment

func (*Client) GetJamfAppCatalogAppInstallerByTitleID

func (c *Client) GetJamfAppCatalogAppInstallerByTitleID(id string) (*ResourceJamfAppCatalogAppInstaller, error)

GetJamfAppCatalogAppInstallerByTitleID retrieves by title ID & returns ResourceJamfAppCatalogAppInstaller

func (*Client) GetJamfAppCatalogAppInstallerByTitleName

func (c *Client) GetJamfAppCatalogAppInstallerByTitleName(name string) (*ResourceJamfAppCatalogAppInstaller, error)

GetJamfAppCatalogAppInstallerByTitleName retrieves title by name & returns ResourceJamfAppCatalogAppInstaller

func (*Client) GetJamfAppCatalogAppInstallerGlobalSettings

func (c *Client) GetJamfAppCatalogAppInstallerGlobalSettings() (*JamfAppCatalogDeploymentSubsetNotificationSettings, error)

GetJamfAppCatalogAppInstallerGlobalSettings retrieves the global end-user experience settings for the App Catalog

func (*Client) GetJamfAppCatalogAppInstallerTermsAndConditionsStatus

func (c *Client) GetJamfAppCatalogAppInstallerTermsAndConditionsStatus() (*ResponseJamfAppCatalogDeploymentTermsAndConditionsStatus, error)

GetJamfAppCatalogAppInstallerTermsAndConditionsStatus returns the terms and conditions status for the Jamf App Catalog

func (*Client) GetJamfAppCatalogAppInstallerTitles

func (c *Client) GetJamfAppCatalogAppInstallerTitles(params url.Values) (*ResponseJamfAppCatalogTitleList, error)

Gets full list of Get Jamf App Catalog App Installer Titles & handles pagination

func (*Client) GetJamfConnectConfigProfileByConfigProfileUUID

func (c *Client) GetJamfConnectConfigProfileByConfigProfileUUID(uuid string) (*ResourceJamfConnectConfigProfile, error)

GetJamfConnectConfigProfileByConfigProfileUUID retrieves a specific Jamf Connect config profile by UUID

func (*Client) GetJamfConnectConfigProfileByID

func (c *Client) GetJamfConnectConfigProfileByID(profileID int) (*ResourceJamfConnectConfigProfile, error)

GetJamfConnectConfigProfileByID retrieves a specific Jamf Connect config profile by ID

func (*Client) GetJamfConnectConfigProfileByName

func (c *Client) GetJamfConnectConfigProfileByName(name string) (*ResourceJamfConnectConfigProfile, error)

GetJamfConnectConfigProfileByName retrieves a specific Jamf Connect config profile by name

func (*Client) GetJamfConnectConfigProfiles

func (c *Client) GetJamfConnectConfigProfiles(params url.Values) (*ResponseJamfConnectConfigProfilesList, error)

GetJamfConnectConfigProfiles gets full list of Jamf Connect config profiles & handles pagination

func (*Client) GetJamfConnectSettings

func (c *Client) GetJamfConnectSettings() (*ResourceJamfConnect, error)

GetJamfConnectSettings fetches Jamf Connect settings from Jamf Pro

func (*Client) GetJamfProInformation

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

func (*Client) GetJamfProServerUrlSettings

func (c *Client) GetJamfProServerUrlSettings() (*ResourceJamfProServerURL, error)

Returns ResourceJamfProServerURL

func (*Client) GetJamfProVersion

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

func (*Client) GetJamfProtectHistory

func (c *Client) GetJamfProtectHistory(params url.Values) (*ResponseJamfProtectHistoryList, error)

GetJamfProtectHistory retrieves the history of Jamf Protect actions

func (*Client) GetJamfProtectIntegrationSettings

func (c *Client) GetJamfProtectIntegrationSettings() (*ResourceJamfProtectIntegrationSettings, error)

GetJamfProtectIntegrationSettings retrieves the current Jamf Protect integration settings

func (*Client) GetJamfProtectPlans

func (c *Client) GetJamfProtectPlans(params url.Values) (*ResponseJamfProtectPlansList, error)

GetJamfProtectPlans retrieves all previously synced Jamf Protect Plans with their associated configuration profile information

func (*Client) GetLDAPPrestagePaneByID

func (c *Client) GetLDAPPrestagePaneByID(customizationResourceID string, paneID string) (*ResourceEnrollmentCustomizationLDAPPane, error)

GetLDAPPrestagePaneByID gets an LDAP prestage pane by enrollment customization ID and pane ID

func (*Client) GetLDAPServerByID

func (c *Client) GetLDAPServerByID(id string) (*ResourceLDAPServers, error)

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

func (*Client) GetLDAPServerByIDAndGroupDataSubset

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

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

func (*Client) GetLDAPServerByIDAndUserDataSubset

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

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

func (*Client) GetLDAPServerByIDAndUserMembershipInGroupDataSubset

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

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

func (*Client) GetLDAPServerByName

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

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

func (*Client) GetLDAPServerByNameAndGroupDataSubset

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

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

func (*Client) GetLDAPServerByNameAndUserDataSubset

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

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

func (*Client) GetLDAPServerByNameAndUserMembershipInGroupDataSubset

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

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

func (*Client) GetLDAPServers

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

GetLDAPServers retrieves a serialized list of LDAP servers.

func (*Client) GetLicensedSoftware

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

GetLicensedSoftware retrieves a serialized list of licensed software.

func (*Client) GetLicensedSoftwareByID

func (c *Client) GetLicensedSoftwareByID(id string) (*ResourceLicensedSoftware, error)

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

func (*Client) GetLicensedSoftwareByName

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

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

func (*Client) GetListOfPendingLapsRotations

func (c *Client) GetListOfPendingLapsRotations() (*ResponseLocalAdminPasswordPendingRotations, error)

GetListOfPendingLapsRotations retrieves a list of devices and usernames with pending LAPS rotations

func (*Client) GetLocalAdminPasswordCapableAccountsByClientManagementID

func (c *Client) GetLocalAdminPasswordCapableAccountsByClientManagementID(clientManagementID string) (*ResponseLocalAdminPasswordCapableAccounts, error)

GetLocalAdminPasswordCapableAccounts retrieves a list of all admin accounts that are LAPS capable for a specific device. Capable accounts are returned in the AutoSetupAdminAccounts from QueryResponses.

func (*Client) GetLocalAdminPasswordFullHistoryByClientManagementID

func (c *Client) GetLocalAdminPasswordFullHistoryByClientManagementID(clientManagementID string) (*ResponseLocalAdminPasswordFullHistory, error)

GetLocalAdminPasswordFullHistory retrieves the complete history of all local admin passwords for all accounts on a specific device, including both viewing and rotation history.

func (*Client) GetLocalAdminPasswordSettings

func (c *Client) GetLocalAdminPasswordSettings() (*ResourceLocalAdminPasswordSettings, error)

GetLocalAdminPasswordSettings retrieves current Jamf Pro LAPS settings

func (*Client) GetLocalAdminPasswordViewedHistoryByClientManagementID

func (c *Client) GetLocalAdminPasswordViewedHistoryByClientManagementID(clientManagementID string, username string) (*ResponseLocalAdminPasswordHistory, error)

GetLocalAdminPasswordViewedHistory retrieves the password view history for a specific username on a target device. History will include password, who viewed the password and when it was viewed.

func (*Client) GetLocales

func (c *Client) GetLocales() ([]ResourceLocale, error)

GetLocales retrieves all available locales from Jamf Pro

func (*Client) GetLogFlushingSettings

func (c *Client) GetLogFlushingSettings() (*ResponseLogFlushingSettings, error)

GetLogFlushingSettings retrieves the current log flushing settings from Jamf Pro

func (*Client) GetLogFlushingTaskByID

func (c *Client) GetLogFlushingTaskByID(id string) (*LogFlushingTask, error)

GetLogFlushingTaskByID retrieves a specific log flushing task by its ID from Jamf Pro

func (*Client) GetLogFlushingTasks

func (c *Client) GetLogFlushingTasks() ([]LogFlushingTask, error)

GetLogFlushingTasks retrieves the list of log flushing tasks from Jamf Pro

func (*Client) GetLoginCustomization

func (c *Client) GetLoginCustomization() (*ResourceLoginCustomization, error)

Function: GetLoginCustomization Method: GET Path: /api/v1/login-customization Description: Gets the login customization settings. Parameters: None Returns: ResourceLoginCustomization - The login customization settings. Example:

customization, err := client.GetLoginCustomization()
if err != nil {
    log.Fatal(err)
}
fmt.Println(customization)

Errors: Returns an error if the request fails.

func (*Client) GetMacApplicationByID

func (c *Client) GetMacApplicationByID(id string) (*ResourceMacApplications, error)

GetMacApplicationByID retrieves a single Mac application by its ID.

func (*Client) GetMacApplicationByIDAndDataSubset

func (c *Client) GetMacApplicationByIDAndDataSubset(id string, subset string) (*ResourceMacApplications, 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

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

GetMacApplicationByName retrieves a single Mac application by its name.

func (*Client) GetMacApplicationByNameAndDataSubset

func (c *Client) GetMacApplicationByNameAndDataSubset(name, subset string) (*ResourceMacApplications, 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

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

GetDockItems retrieves a serialized list of vpp mac applications.

func (*Client) GetMacOSConfigurationProfileByID

func (c *Client) GetMacOSConfigurationProfileByID(id string) (*ResourceMacOSConfigurationProfile, error)

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

func (*Client) GetMacOSConfigurationProfileByName

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

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

func (*Client) GetMacOSConfigurationProfileByNameByID

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

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

func (*Client) GetMacOSConfigurationProfiles

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

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

func (*Client) GetManagedSoftwareUpdateFeatureToggle

func (c *Client) GetManagedSoftwareUpdateFeatureToggle() (*ResourceManagedSoftwareUpdateFeatureToggle, error)

GetManagedSoftwareUpdateFeatureToggle retrieves the current managed software update feature toggle settings

func (*Client) GetManagedSoftwareUpdatePlanByUUID

func (c *Client) GetManagedSoftwareUpdatePlanByUUID(UUID string) (*ResponseManagedSoftwareUpdatePlan, error)

GetManagedSoftwareUpdatePlanByUUID retrieves a Managed Software Update Plan by its UUID.

func (*Client) GetManagedSoftwareUpdatePlans

func (c *Client) GetManagedSoftwareUpdatePlans(params url.Values) (*ResponseManagedSoftwareUpdatePlanList, error)

GetManagedSoftwareUpdatePlans retrieves a list of all available managed software updates

func (*Client) GetManagedSoftwareUpdatePlansByGroupID

func (c *Client) GetManagedSoftwareUpdatePlansByGroupID(groupId string, groupType string) (*ResponseManagedSoftwareUpdatePlanList, error)

GetManagedSoftwareUpdatePlansByGroupID retrieves managed software update plans for a specific group ID.

func (*Client) GetManagedSoftwareUpdatePlansFeatureToggleStatus

func (c *Client) GetManagedSoftwareUpdatePlansFeatureToggleStatus() (*ResponseManagedSoftwareUpdatePlansFeatureToggleStatus, error)

GetManagedSoftwareUpdatePlansFeatureToggleStatus retrieves the background status of the Feature Toggle.

func (*Client) GetManagedSoftwareUpdates

func (c *Client) GetManagedSoftwareUpdates() (*ResponseManagedSoftwareUpdateList, error)

GetManagedSoftwareUpdates retrieves a list of all available managed software updates

func (*Client) GetMobileDeviceApplicationByAppBundleID

func (c *Client) GetMobileDeviceApplicationByAppBundleID(id string) (*ResourceMobileDeviceApplication, error)

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

func (*Client) GetMobileDeviceApplicationByAppBundleIDAndVersion

func (c *Client) GetMobileDeviceApplicationByAppBundleIDAndVersion(id string, version string) (*ResourceMobileDeviceApplication, error)

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

func (*Client) GetMobileDeviceApplicationByID

func (c *Client) GetMobileDeviceApplicationByID(id string) (*ResourceMobileDeviceApplication, error)

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

func (*Client) GetMobileDeviceApplicationByIDAndDataSubset

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

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

func (*Client) GetMobileDeviceApplicationByName

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

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

func (*Client) GetMobileDeviceApplicationByNameAndDataSubset

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

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

func (*Client) GetMobileDeviceApplications

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

GetMobileDeviceApplications retrieves a serialized list of mobile device applications.

func (*Client) GetMobileDeviceByID

func (c *Client) GetMobileDeviceByID(id string) (*ResourceMobileDevice, error)

GetMobileDeviceByID retrieves a specific mobile device by its ID.

func (*Client) GetMobileDeviceByIDAndDataSubset

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

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

func (*Client) GetMobileDeviceByName

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

GetMobileDeviceByName retrieves a specific mobile device by its name.

func (*Client) GetMobileDeviceByNameAndDataSubset

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

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

func (*Client) GetMobileDeviceConfigurationProfileByID

func (c *Client) GetMobileDeviceConfigurationProfileByID(id string) (*ResourceMobileDeviceConfigurationProfile, error)

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

func (*Client) GetMobileDeviceConfigurationProfileByIDWithSubset

func (c *Client) GetMobileDeviceConfigurationProfileByIDWithSubset(id string, subset string) (*ResourceMobileDeviceConfigurationProfile, error)

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

func (*Client) GetMobileDeviceConfigurationProfileByName

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

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

func (*Client) GetMobileDeviceConfigurationProfileByNameWithSubset

func (c *Client) GetMobileDeviceConfigurationProfileByNameWithSubset(name string, subset string) (*ResourceMobileDeviceConfigurationProfile, error)

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

func (*Client) GetMobileDeviceConfigurationProfiles

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

GetMobileDeviceConfigurationProfiles retrieves a serialized list of mobile device configuration profiles.

func (*Client) GetMobileDeviceEnrollmentProfileByID

func (c *Client) GetMobileDeviceEnrollmentProfileByID(id string) (*ResourceMobileDeviceEnrollmentProfile, error)

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

func (*Client) GetMobileDeviceEnrollmentProfileByIDWithSubset

func (c *Client) GetMobileDeviceEnrollmentProfileByIDWithSubset(id string, subset string) (*ResourceMobileDeviceEnrollmentProfile, error)

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

func (*Client) GetMobileDeviceEnrollmentProfileByName

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

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

func (*Client) GetMobileDeviceEnrollmentProfileByNameWithSubset

func (c *Client) GetMobileDeviceEnrollmentProfileByNameWithSubset(name string, subset string) (*ResourceMobileDeviceEnrollmentProfile, error)

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

func (*Client) GetMobileDeviceEnrollmentProfiles

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

GetMobileDeviceEnrollmentProfiles retrieves a serialized list of mobile device enrollment profiles.

func (*Client) GetMobileDeviceGroupByID

func (c *Client) GetMobileDeviceGroupByID(id string) (*ResourceMobileDeviceGroup, error)

GetMobileDeviceGroupsByID retrieves a single mobile device group by its ID.

func (*Client) GetMobileDeviceGroupByName

func (c *Client) GetMobileDeviceGroupByName(name string) (*ResourceMobileDeviceGroup, error)

GetMobileDeviceGroupsByName retrieves a single mobile device group by its name.

func (*Client) GetMobileDeviceGroups

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

GetMobileDeviceGroups retrieves a serialized list of mobile device groups.

func (*Client) GetMobileDevicePrestageByID

func (c *Client) GetMobileDevicePrestageByID(id string) (*ResourceMobileDevicePrestage, error)

GetMobileDevicePrestageByID retrieves a single mobile prestage from the supplied ID

func (*Client) GetMobileDevicePrestages

func (c *Client) GetMobileDevicePrestages(params url.Values) (*ResponseMobileDevicePrestagesList, error)

GetMobileDevicePrestages retrieves a list of all mobile prestages

func (*Client) GetMobileDeviceProvisioningProfileByID

func (c *Client) GetMobileDeviceProvisioningProfileByID(id string) (*ResourceMobileDeviceProvisioningProfile, error)

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

func (*Client) GetMobileDeviceProvisioningProfileByName

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

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

func (*Client) GetMobileDeviceProvisioningProfileByUUID

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

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

func (*Client) GetMobileDeviceProvisioningProfiles

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

GetMobileDeviceProvisioningProfiles retrieves a serialized list of mobile device provisioning profiles.

func (*Client) GetMobileDevices

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

GetMobileDevices retrieves a list of all mobile devices.

func (*Client) GetMobileExtensionAttributeByID

func (c *Client) GetMobileExtensionAttributeByID(id string) (*ResourceMobileExtensionAttribute, error)

GetMobileExtensionAttributeByID fetches a specific mobile extension attribute by its ID.

func (*Client) GetMobileExtensionAttributeByName

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

GetMobileExtensionAttributeByName fetches a specific mobile extension attribute by its name.

func (*Client) GetMobileExtensionAttributes

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

GetMobileExtensionAttributes retrieves a serialized list of mobile device extension attributes.

func (*Client) GetNetworkSegmentByID

func (c *Client) GetNetworkSegmentByID(id string) (*ResourceNetworkSegment, error)

GetNetworkSegmentByID retrieves a specific network segment by its ID.

func (*Client) GetNetworkSegmentByName

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

GetNetworkSegmentByName retrieves a specific network segment by its name.

func (*Client) GetNetworkSegments

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

GetNetworkSegments retrieves a list of network segments.

func (*Client) GetNotificationsForUserAndSite

func (c *Client) GetNotificationsForUserAndSite() (*ResponseNotifications, error)

GetNotificationsForUserAndSite retrieves all notifications from the Jamf Pro API

func (*Client) GetOnboardingSettings

func (c *Client) GetOnboardingSettings() (*ResponseOnboardingSettings, error)

GetOnboardingSettings retrieves the current onboarding settings configuration

func (*Client) GetPackageByID

func (c *Client) GetPackageByID(id string) (*ResourcePackage, error)

GetPackageByID retrieves details of a specific package by its ID.

func (*Client) GetPackageByName

func (c *Client) GetPackageByName(name string) (*ResourcePackage, error)

GetPackageByName retrieves a package by name, returns ResourcePackage

func (*Client) GetPackageHistoryByPackageID

func (c *Client) GetPackageHistoryByPackageID(id string, sort, filter string) (*ResponsePackageHistoryList, error)

GetPackageHistoryByPackageID retrieves the history of a specific package by its ID with pagination, sorting, and filtering.

func (*Client) GetPackages

func (c *Client) GetPackages(sort, filter string) (*ResponsePackagesList, error)

GetPackages retrieves a list of packages with pagination, sorting, and filtering.

func (*Client) GetPatchExternalSourceByID

func (c *Client) GetPatchExternalSourceByID(id string) (*ResourcePatchExternalSource, error)

GetPatchExternalSourceByID retrieves a specific patch external source by its ID.

func (*Client) GetPatchExternalSourceByName

func (c *Client) GetPatchExternalSourceByName(name string) (*ResourcePatchExternalSource, error)

GetPatchExternalSourceByName retrieves a specific patch external source by its name.

func (*Client) GetPatchExternalSources

func (c *Client) GetPatchExternalSources() (*ResponsePatchExternalSourcesList, error)

GetPatchExternalSources retrieves all patch external sources.

func (*Client) GetPatchPolicies

func (c *Client) GetPatchPolicies(params url.Values) (*ResponsePatchPoliciesList, error)

GetPatchPolicies gets the full list of patch policies & handles pagination

func (*Client) GetPatchPolicyByID

func (c *Client) GetPatchPolicyByID(id string) (*ResourcePatchPolicyJamfProAPI, error)

GetPatchPolicyByID retrieves a specific patch policy by ID

func (*Client) GetPatchPolicyByName

func (c *Client) GetPatchPolicyByName(name string) (*ResourcePatchPolicyJamfProAPI, error)

GetPatchPolicyByName retrieves a specific patch policy by name

func (*Client) GetPatchPolicyDashboardStatus

func (c *Client) GetPatchPolicyDashboardStatus(id string) (*ResponsePatchPolicyDashboardStatus, error)

GetPatchPolicyDashboardStatus checks if a patch policy is on the dashboard

func (*Client) GetPatchSoftwareTitleConfigurationById

func (c *Client) GetPatchSoftwareTitleConfigurationById(id string) (*ResourcePatchSoftwareTitleConfiguration, error)

GetPatchSoftwareTitleConfigurationById retrieves a singular PatchSoftwareTitleConfiguration from a given ID

func (*Client) GetPatchSoftwareTitleConfigurationByName

func (c *Client) GetPatchSoftwareTitleConfigurationByName(name string) (*ResourcePatchSoftwareTitleConfiguration, error)

GetPatchSoftwareTitleConfigurationByName retrieves a patch software title configuration by Name.

func (*Client) GetPatchSoftwareTitleConfigurations

func (c *Client) GetPatchSoftwareTitleConfigurations() (*ResponsePatchSoftwareTitleConfigurationList, error)

GetPatchSoftwareTitleConfigurations retrieves list of PatchSoftwareTitleConfigurations

func (*Client) GetPatchSoftwareTitleDefinitions

func (c *Client) GetPatchSoftwareTitleDefinitions(id string, params url.Values) (*ResponsePatchSoftwareTitleDefinitionsList, error)

GetPatchSoftwareTitleDefinitions retrieves patch software title definitions with the supplied id

func (*Client) GetPatchSoftwareTitleDependencies

func (c *Client) GetPatchSoftwareTitleDependencies(id string) (*ResponsePatchSoftwareTitleDependenciesList, error)

GetPatchSoftwareTitleDependencies retrieves list of dependencies for a patch software title configuration

func (*Client) GetPatchSoftwareTitleExtensionAttributes

func (c *Client) GetPatchSoftwareTitleExtensionAttributes(id string) (*ResponsePatchSoftwareTitleExtensionAttributesList, error)

GetPatchSoftwareTitleExtensionAttributes retrieves extension attributes for a patch software title configuration

func (*Client) GetPolicies

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

GetPolicies retrieves a list of all policies.

func (*Client) GetPoliciesByType

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

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

GetPolicyByCategory retrieves policies by their category.

func (*Client) GetPolicyByID

func (c *Client) GetPolicyByID(id string) (*ResourcePolicy, error)

GetPolicyByID retrieves the details of a policy by its ID.

func (*Client) GetPolicyByName

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

GetPolicyByName retrieves a policy by its name.

func (*Client) GetPolicyProperties

func (c *Client) GetPolicyProperties() (*ResourcePolicyProperties, error)

func (*Client) GetPrestagePanes

func (c *Client) GetPrestagePanes(customizationResourceID string) (*ResponsePrestagePanesList, error)

GetPrestagePanes retrieves all prestage panes for a specific enrollment customization

func (*Client) GetPrinterByID

func (c *Client) GetPrinterByID(id string) (*ResourcePrinter, error)

GetPrinterByID fetches a specific printer by its ID.

func (*Client) GetPrinterByName

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

GetPrinterByName fetches a specific printer by its name.

func (*Client) GetPrinters

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

GetPrinters retrieves a serialized list of printers.

func (*Client) GetProfileByInvitation

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

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

func (*Client) GetPublicKeyOfOIDCKeystore

func (c *Client) GetPublicKeyOfOIDCKeystore() (*ResponseOIDCPublicKey, error)

GetPublicKeyOfOIDCKeystore retrieves the public key of the keystore used for signing OIDC messages as a JWT.

func (*Client) GetRemovableMACAddressByID

func (c *Client) GetRemovableMACAddressByID(id string) (*ResourceRemovableMacAddress, error)

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

func (*Client) GetRemovableMACAddressByName

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

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

func (*Client) GetRemovableMACAddresses

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

GetRemovableMACAddresses retrieves a list of all removable MAC addresses.

func (*Client) GetRestrictedSoftwareByID

func (c *Client) GetRestrictedSoftwareByID(id string) (*ResourceRestrictedSoftware, error)

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

func (*Client) GetRestrictedSoftwareByName

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

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

func (*Client) GetRestrictedSoftwares

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

GetRestrictedSoftwares retrieves a list of all restricted software.

func (*Client) GetReturnToServiceConfigurationByID

func (c *Client) GetReturnToServiceConfigurationByID(id string) (*ResponseReturnToServiceConfiguration, error)

GetReturnToServiceConfigurationByID fetches a specific Return to Service configuration by ID.

func (*Client) GetReturnToServiceConfigurations

func (c *Client) GetReturnToServiceConfigurations() ([]ResponseReturnToServiceList, error)

GetReturnToServiceConfigurations fetches a list of devices that are in the Return to Service state.

func (*Client) GetSLASAStatus

func (c *Client) GetSLASAStatus() (*ResponseSLASAStatus, error)

GetSLASAStatus retrieves the status of SLASA (whether it has been accepted or not).

func (*Client) GetSMTPServerInformation

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

GetSMTPServerInformation gets the SMTP server settings

func (*Client) GetSSOFailoverSettings

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

GetSSOFailoverSettings fetches SSO failover settings from Jamf Pro

func (*Client) GetSSOPrestagePaneByID

func (c *Client) GetSSOPrestagePaneByID(customizationResourceID string, paneID string) (*ResourceEnrollmentCustomizationSSOPane, error)

GetSSOPrestagePaneByID gets a SSO prestage pane by enrollment customization ID and pane ID

func (*Client) GetScriptByID

func (c *Client) GetScriptByID(id string) (*ResourceScript, error)

Retrieves script from provided ID & returns ResourceScript

func (*Client) GetScriptByName

func (c *Client) GetScriptByName(name string) (*ResourceScript, error)

Retrieves script by Name by leveraging GetScripts(), returns ResourceScript

func (*Client) GetScripts

func (c *Client) GetScripts(params url.Values) (*ResponseScriptsList, error)

Gets full list of scripts & handles pagination

func (*Client) GetSelfServiceBrandingMacOS

func (c *Client) GetSelfServiceBrandingMacOS(params url.Values) (*ResponseSelfServiceBrandingList, error)

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

func (*Client) GetSelfServiceBrandingMacOSByID

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

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

func (*Client) GetSelfServiceBrandingMacOSByName

func (c *Client) GetSelfServiceBrandingMacOSByName(name string) (*ResourceSelfServiceBrandingDetail, error)

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

func (*Client) GetSelfServiceSettings

func (c *Client) GetSelfServiceSettings() (*ResourceSelfServiceSettings, error)

GetSelfServiceSettings retrives a self service list.

func (*Client) GetSiteByID

func (c *Client) GetSiteByID(id string) (*SharedResourceSite, error)

GetSiteByID retrieves a site by its ID.

func (*Client) GetSiteByName

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

GetSiteByName retrieves a site by its name.

func (*Client) GetSites

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

GetSites gets a list of all sites

func (*Client) GetSmartComputerGroupByID

func (c *Client) GetSmartComputerGroupByID(id string) (*ResourceSmartComputerGroup, error)

GetSmartComputerGroupByID retrieves a specific Smart Computer Group by ID

func (*Client) GetSmartComputerGroupByName

func (c *Client) GetSmartComputerGroupByName(name string) (*ResourceComputerGroup, error)

GetSmartComputerGroupByName retrieves a Smart Computer Group by name

func (*Client) GetSmartComputerGroupMembershipByID

func (c *Client) GetSmartComputerGroupMembershipByID(id string) (*ResponseSmartComputerGroupMembership, error)

GetSmartComputerGroupMembershipByID retrieves the membership of a Smart Computer Group by ID

func (*Client) GetSmartComputerGroups

func (c *Client) GetSmartComputerGroups() (*ResponseSmartComputerGroupsList, error)

GetSmartComputerGroups retrieves a list of all Smart Computer Groups

func (*Client) GetSmartComputerGroupsV2

func (c *Client) GetSmartComputerGroupsV2(params url.Values) (*ResponseSmartComputerGroupsListV2, error)

GetSmartComputerGroupsV2 retrieves a paginated list of all Smart Computer Groups using V2 API

func (*Client) GetSoftwareUpdateServerByID

func (c *Client) GetSoftwareUpdateServerByID(id string) (*ResourceSoftwareUpdateServer, error)

GetSoftwareUpdateServersByID retrieves a specific software update server by its ID.

func (*Client) GetSoftwareUpdateServerByName

func (c *Client) GetSoftwareUpdateServerByName(name string) (*ResourceSoftwareUpdateServer, error)

GetSoftwareUpdateServersByName retrieves a specific software update server by its name.

func (*Client) GetSoftwareUpdateServers

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

GetSoftwareUpdateServers retrieves a list of all software update servers.

func (*Client) GetSsoEnrollmentCustomizationDependencies

func (c *Client) GetSsoEnrollmentCustomizationDependencies() (*ResponseSsoSubsetEnrollmentCustomizationDependencyList, error)

GetSsoEnrollmentCustomizationDependencies shows which enrollment customizations are dependent on which sso settings // NOTE I think?

func (*Client) GetSsoSettings

func (c *Client) GetSsoSettings() (*ResourceSsoSettings, error)

GetSsoSettings retrieves current Jamf Sso settings

func (*Client) GetStartupStatus

func (c *Client) GetStartupStatus() (*ResourceStartupStatus, error)

GetStartupStatus retrieves the status of the Jamf Pro server using API.

func (*Client) GetTextPrestagePaneByID

func (c *Client) GetTextPrestagePaneByID(customizationResourceID string, paneID string) (*ResourceEnrollmentCustomizationTextPane, error)

GetTextPrestagePaneByID gets a text prestage pane by enrollment customization ID and pane ID

func (*Client) GetTimeZones

func (c *Client) GetTimeZones() ([]ResourceTimeZone, error)

GetTimeZones retrieves the list of available time zones from Jamf Pro.

func (*Client) GetUserByEmail

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

GetUserByEmail retrieves the details of a user by their email.

func (*Client) GetUserByID

func (c *Client) GetUserByID(id string) (*ResourceUser, error)

GetUserByID retrieves the details of a user by their ID.

func (*Client) GetUserByName

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

GetUserByName retrieves the details of a user by their name.

func (*Client) GetUserExtensionAttributeByID

func (c *Client) GetUserExtensionAttributeByID(id string) (*ResourceUserExtensionAttribute, error)

GetUserExtensionAttributeByID retrieves a user extension attribute by its ID.

func (*Client) GetUserExtensionAttributeByName

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

GetUserExtensionAttributeByName retrieves a user extension attribute by its name.

func (*Client) GetUserExtensionAttributes

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

GetUserExtensionAttributes retrieves a list of all user extension attributes.

func (*Client) GetUserGroupByID

func (c *Client) GetUserGroupByID(id string) (*ResourceUserGroup, error)

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

func (*Client) GetUserGroupByName

func (c *Client) GetUserGroupByName(name string) (*ResourceUserGroup, error)

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

func (*Client) GetUserGroups

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

GetUserGroups retrieves a list of all user groups.

func (*Client) GetUsers

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

GetUsers retrieves a list of all users.

func (*Client) GetVPPAccountByID

func (c *Client) GetVPPAccountByID(id string) (*ResourceVPPAccount, error)

GetVPPAccountByID retrieves a specific VPP account by its ID.

func (*Client) GetVPPAccounts

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

GetVPPAccounts retrieves a list of all VPP accounts.

func (*Client) GetVPPAssignmentByID

func (c *Client) GetVPPAssignmentByID(id string) (*ResourceVPPAssignment, error)

GetVPPAssignmentByID fetches a VPP assignment by its ID

func (*Client) GetVPPAssignments

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

GetVPPAssignments fetches a list of VPP assignments

func (*Client) GetVolumePurchaseLocations

func (c *Client) GetVolumePurchaseLocations(params url.Values) (*ResponseVolumePurchasingList, error)

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

func (*Client) GetVolumePurchasingContentForLocationByID

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

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

GetVolumePurchasingLocationByID retrieves a specific volume purchasing location by its ID.

func (*Client) GetVolumePurchasingSubscriptionByID

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

GetVolumePurchasingSubscriptionByID retrieves a single volume purchasing subscription by its ID

func (*Client) GetVolumePurchasingSubscriptionByName

func (c *Client) GetVolumePurchasingSubscriptionByName(name string) (*ResourceVolumePurchasingSubscription, error)

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

func (*Client) GetVolumePurchasingSubscriptions

func (c *Client) GetVolumePurchasingSubscriptions(params url.Values) (*ResponseVolumePurchasingSubscriptionsList, error)

GetVolumePurchasingSubscriptions retrieves all volume purchasing subscriptions

func (*Client) GetWebhookByID

func (c *Client) GetWebhookByID(id string) (*ResourceWebhook, error)

GetWebhookByID retrieves a specific webhook by its ID.

func (*Client) GetWebhookByName

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

GetWebhookByName retrieves a specific webhook by its name.

func (*Client) GetWebhooks

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

GetWebhooks retrieves a list of all webhooks.

func (*Client) InitializeDatabaseConnection

func (c *Client) InitializeDatabaseConnection(password string) error

InitializeDatabaseConnection sets up the database password during startup

func (*Client) InitializeJamfProServer

func (c *Client) InitializeJamfProServer(systemConfig *ResourceSystemInitialize) error

InitializeJamfProServer initializes a fresh Jamf Pro Server installation

func (*Client) QueueLogFlushingTask

func (c *Client) QueueLogFlushingTask(task *ResourceLogFlushingTask) (*ResponseLogFlushingTaskCreated, error)

QueueLogFlushingTaskcreates a new log flushing task in Jamf Pro

func (*Client) RefreshClientCredentialsByApiRoleID

func (c *Client) RefreshClientCredentialsByApiRoleID(id string) (*ResourceClientCredentials, error)

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

func (*Client) RefreshJCDS2Inventory

func (c *Client) RefreshJCDS2Inventory() error

RefreshJCDS2Inventory refreshes the inventory and status of uploads in Jamf Pro.

func (*Client) RemoveComputerMDMProfile

func (c *Client) RemoveComputerMDMProfile(id string) (*ResponseRemoveMDMProfile, error)

RemoveComputerMDMProfile removes the MDM profile from a computer by its ID.

func (*Client) RenewJCDS2Credentials

func (c *Client) RenewJCDS2Credentials() (*ResponseJCDS2UploadCredentials, error)

RenewJCDS2Credentials renews credentials for JCDS 2.0

func (*Client) RetryJamfConnectDeploymentTasksByConfigProfileUUID

func (c *Client) RetryJamfConnectDeploymentTasksByConfigProfileUUID(configProfileUUID string, computerIDs []string) error

RetryJamfConnectDeploymentTasksByConfigProfileUUID requests a retry of Connect install tasks for a specified computers asscoiated with a specific jamf connect configuration profile.

func (*Client) RetryJamfProtectInstallTasks

func (c *Client) RetryJamfProtectInstallTasks(deploymentID string, taskIDs []string) error

New function to request a retry of Protect install tasks

func (*Client) SendMDMCommandForCreationAndQueuing

func (c *Client) SendMDMCommandForCreationAndQueuing(MDMCommand *ResourceMDMCommandRequest) (*ResponseMDMCommand, error)

SendMDMCommandForCreationAndQueuing sends an MDM command for creation and queuing

func (*Client) SendMDMCommandForMDMProfileRenewal

func (c *Client) SendMDMCommandForMDMProfileRenewal(renewProfileRequest *ResourceMDMProfileRenewal) (*ResponseMDMProfileRenewal, error)

SendMDMCommandForMDMProfileRenewal renews MDM profiles for specified UDIDs

func (*Client) SendMDMCommandForPackageDeployment

func (c *Client) SendMDMCommandForPackageDeployment(deployPackageRequest *ResourceDeployPackage) (*ResponseDeployPackage, error)

SendMDMCommandForPackageDeployment deploys a package using an MDM command

func (*Client) SetLocalAdminPasswordByClientManagementID

func (c *Client) SetLocalAdminPasswordByClientManagementID(clientManagementID string, passwordList *ResourceLapsPasswordList) (*ResponseLapsPasswordSet, error)

SetLocalAdminPasswordByClientManagementID sets LAPS passwords for all capable accounts on a device The passwords are provided as a list of username/password pairs

func (*Client) SetRedirectURLForOIDCLogon

func (c *Client) SetRedirectURLForOIDCLogon(request *ResourceOIDCRedirectURL) (*ResponseOIDCRedirectURL, error)

SetRedirectURLForOIDCLogon provides the URL to redirect for OIDC login based on the original URL and email address.

func (*Client) SyncJamfProtectPlans

func (c *Client) SyncJamfProtectPlans() error

SyncJamfProtectPlans syncs plans with Jamf Protect

func (*Client) UpdateADUESessionTokenSettings

func (c *Client) UpdateADUESessionTokenSettings(updatedSettings ResourceADUETokenSettings) (*ResourceADUETokenSettings, error)

func (*Client) UpdateAccountByID

func (c *Client) UpdateAccountByID(id string, account *ResourceAccount) (*ResponseAccountCreatedAndUpdated, error)

UpdateAccountByID updates an Account using its ID

func (*Client) UpdateAccountByName

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

UpdateAccountByName updates an Account using its name.

func (*Client) UpdateAccountDrivenUserEnrollmentAccessGroupByID

func (c *Client) UpdateAccountDrivenUserEnrollmentAccessGroupByID(id string, groupUpdate *ResourceAccountDrivenUserEnrollmentAccessGroup) (*ResourceAccountDrivenUserEnrollmentAccessGroup, error)

UpdateAccountDrivenUserEnrollmentAccessGroupByID updates an ADUE access group by resource ID

func (*Client) UpdateAccountDrivenUserEnrollmentAccessGroupByName

func (c *Client) UpdateAccountDrivenUserEnrollmentAccessGroupByName(targetName string, groupUpdate *ResourceAccountDrivenUserEnrollmentAccessGroup) (*ResourceAccountDrivenUserEnrollmentAccessGroup, error)

UpdateAccountDrivenUserEnrollmentAccessGroupByName updates an ADUE access group by resource name

func (*Client) UpdateAccountGroupByID

func (c *Client) UpdateAccountGroupByID(id string, accountGroup *ResourceAccountGroup) (*ResourceAccountGroup, error)

UpdateAccountGroupByID updates an Account Group using its ID

func (*Client) UpdateAccountGroupByName

func (c *Client) UpdateAccountGroupByName(name string, accountGroup *ResourceAccountGroup) (*ResourceAccountGroup, error)

UpdateAccountGroupByName updates an Account Group using its name.

func (*Client) UpdateAccountPreferences

func (c *Client) UpdateAccountPreferences(updatedSettings ResourceAccountPreferences) (*ResourceAccountPreferences, error)

UpdateAccountPreferences updates the jamf pro account settings.

func (*Client) UpdateActivationCode

func (c *Client) UpdateActivationCode(activationCode *ResourceActivationCode) error

UpdateActivationCode updates the activation code.

func (*Client) UpdateAdvancedComputerSearchByID

func (c *Client) UpdateAdvancedComputerSearchByID(id string, search *ResourceAdvancedComputerSearch) (*ResponseAdvancedComputerSearchCreatedAndUpdated, error)

Function: UpdateAdvancedComputerSearchByID Method: PUT Path: /JSSResource/advancedcomputersearches/id/{id} Description: Updates an existing Jamf Pro advanced computer search resource by its ID. Parameters:

  • id (int): The ID of the advanced computer search.
  • search (*ResourceAdvancedComputerSearch): The updated advanced computer search resource.

Returns: ResponseAdvancedComputerSearchCreatedAndUpdated - The ID of the updated advanced computer search resource. Example:

updatedSearch := &jamfpro.ResourceAdvancedComputerSearch{
    Name: "Updated Search",
    // Other fields...
}
updated, err := client.UpdateAdvancedComputerSearchByID(123, updatedSearch)
if err != nil {
    log.Fatal(err)
}
fmt.Println(updated)

Errors: Returns an error if the request fails or if the resource cannot be updated.

func (*Client) UpdateAdvancedComputerSearchByName

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

Function: UpdateAdvancedComputerSearchByName Method: PUT Path: /JSSResource/advancedcomputersearches/name/{name} Description: Updates an existing Jamf Pro advanced computer search resource by its name. Parameters:

  • name (string): The name of the advanced computer search.
  • search (*ResourceAdvancedComputerSearch): The updated advanced computer search resource.

Returns: ResponseAdvancedComputerSearchCreatedAndUpdated - The ID of the updated advanced computer search resource. Example:

updatedSearch := &jamfpro.ResourceAdvancedComputerSearch{
    Name: "Updated Search",
    // Other fields...
}
updated, err := client.UpdateAdvancedComputerSearchByName("SearchName", updatedSearch)
if err != nil {
    log.Fatal(err)
}
fmt.Println(updated)

Errors: Returns an error if the request fails or if the resource cannot be updated.

func (*Client) UpdateAdvancedMobileDeviceSearchByID

func (c *Client) UpdateAdvancedMobileDeviceSearchByID(id string, search ResourceAdvancedMobileDeviceSearch) (*ResourceAdvancedMobileDeviceSearch, error)

UpdateAdvancedMobileDeviceSearchByID updates an existing Advanced Mobile Device Search by ID

func (*Client) UpdateAdvancedUserSearchByID

func (c *Client) UpdateAdvancedUserSearchByID(id string, search *ResourceAdvancedUserSearch) (*ResponseAdvancedUserSearchCreatedAndUpdated, error)

Function: UpdateAdvancedUserSearchByID Method: PUT Path: /JSSResource/advancedusersearches/id/{id} Description: Updates an existing Jamf Pro advanced user search resource by its ID. Parameters:

  • id (int): The ID of the advanced user search.
  • search (*ResourceAdvancedUserSearch): The updated advanced user search resource.

Returns: ResponseAdvancedUserSearchCreatedAndUpdated - The ID of the updated advanced user search resource. Example:

updatedSearch := &jamfpro.ResourceAdvancedUserSearch{
    Name: "Updated Search",
    // Other fields...
}
updated, err := client.UpdateAdvancedUserSearchByID(123, updatedSearch)
if err != nil {
    log.Fatal(err)
}
fmt.Println(updated)

Errors: Returns an error if the request fails or if the resource cannot be updated.

func (*Client) UpdateAdvancedUserSearchByName

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

Function: UpdateAdvancedUserSearchByName Method: PUT Path: /JSSResource/advancedusersearches/name/{name} Description: Updates an existing Jamf Pro advanced user search resource by its name. Parameters:

  • name (string): The name of the advanced user search.
  • search (*ResourceAdvancedUserSearch): The updated advanced user search resource.

Returns: ResponseAdvancedUserSearchCreatedAndUpdated - The ID of the updated advanced user search resource. Example:

updatedSearch := &jamfpro.ResourceAdvancedUserSearch{
    Name: "Updated Search",
    // Other fields...
}
updated, err := client.UpdateAdvancedUserSearchByName("SearchName", updatedSearch)
if err != nil {
    log.Fatal(err)
}
fmt.Println(updated)

Errors: Returns an error if the request fails or if the resource cannot be updated.

func (*Client) UpdateApiIntegrationByID

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

UpdateApiIntegrationByID updates an API integration by its ID

func (*Client) UpdateApiIntegrationByName

func (c *Client) UpdateApiIntegrationByName(name string, integrationUpdate *ResourceApiIntegration) (*ResourceApiIntegration, error)

UpdateApiIntegrationByName updates an API integration based on its display name

func (*Client) UpdateBYOProfileByID

func (c *Client) UpdateBYOProfileByID(id string, profile *ResourceBYOProfile) (*ResponceBYOProfileCreatedAndUpdated, error)

UpdateBYOProfileByID updates an existing BYO profile by its ID.

func (*Client) UpdateBYOProfileByName

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

UpdateBYOProfileByName updates a BYO profile by its name.

func (*Client) UpdateBookmarkByID

func (c *Client) UpdateBookmarkByID(id string, bookmarkUpdate *ResourceBookmark) (*ResourceBookmark, error)

UpdateBookmarkByID updates a bookmark's information in Jamf Pro by its ID

func (*Client) UpdateBookmarkByName

func (c *Client) UpdateBookmarkByName(name string, bookmarkUpdate *ResourceBookmark) (*ResourceBookmark, error)

UpdateBookmarkByName updates a bookmark's information in Jamf Pro by its name

func (*Client) UpdateBuildingByID

func (c *Client) UpdateBuildingByID(id string, buildingUpdate *ResourceBuilding) (*ResourceBuilding, error)

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

func (*Client) UpdateBuildingByName

func (c *Client) UpdateBuildingByName(name string, buildingUpdate *ResourceBuilding) (*ResourceBuilding, error)

UpdateBuildingByNameByID updates a building's information in Jamf Pro by its name.

func (*Client) UpdateCacheSettings

func (c *Client) UpdateCacheSettings(cacheSettingsUpdate *ResourceCacheSettings) (*ResourceCacheSettings, error)

UpdateCacheSettings updates the cache settings.

func (*Client) UpdateCategoryByID

func (c *Client) UpdateCategoryByID(id string, categoryUpdate *ResourceCategory) (*ResponseCategoryCreateAndUpdate, error)

UpdateCategoryByID updates an existing category by its ID

func (*Client) UpdateCategoryByName

func (c *Client) UpdateCategoryByName(name string, categoryUpdate *ResourceCategory) (*ResponseCategoryCreateAndUpdate, error)

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

func (*Client) UpdateClassByID

func (c *Client) UpdateClassByID(id string, class *ResourceClass) error

UpdateClassByID updates an existing class with the given ID.

func (*Client) UpdateClassByName

func (c *Client) UpdateClassByName(name string, class *ResourceClass) error

UpdateClassByName updates an existing class with the given name.

func (*Client) UpdateClientCheckinSettings

func (c *Client) UpdateClientCheckinSettings(settingsUpdate ResourceClientCheckinSettings) (*ResourceClientCheckinSettings, error)

func (*Client) UpdateCloudIdentityProviderByID

func (c *Client) UpdateCloudIdentityProviderByID(id string, cloudIdPUpdate *ResourceCloudIdp) (*ResourceCloudIdp, error)

UpdateCloudIdentityProviderById updates an existing Cloud Identity Provider by its ID.

func (*Client) UpdateComputerByID

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

UpdateComputerByID updates the details of a computer by its ID.

func (*Client) UpdateComputerByName

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

UpdateComputerByName updates the details of a computer by its name.

func (*Client) UpdateComputerExtensionAttributeByID

func (c *Client) UpdateComputerExtensionAttributeByID(id string, attribute *ResourceComputerExtensionAttribute) (*ResourceComputerExtensionAttribute, error)

UpdateComputerExtensionAttributeByID updates a computer extension attribute by its ID

func (*Client) UpdateComputerExtensionAttributeByName

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

UpdateComputerExtensionAttributeByName updates a computer extension attribute by its name

func (*Client) UpdateComputerGroupByID

func (c *Client) UpdateComputerGroupByID(id string, group *ResourceComputerGroup) (*ResponseComputerGroupreatedAndUpdated, error)

UpdateComputerGroupByID updates an existing computer group by its ID.

func (*Client) UpdateComputerGroupByName

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

UpdateComputerGroupByName updates a computer group by its name.

func (*Client) UpdateComputerInventoryByID

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

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

func (*Client) UpdateComputerInventoryCollectionInformation

func (c *Client) UpdateComputerInventoryCollectionInformation(settings *ResourceComputerInventoryCollection) error

UpdateComputerInventoryCollectionInformation updates the jamf pro computer check-in settings

func (*Client) UpdateComputerInventoryCollectionSettings

func (c *Client) UpdateComputerInventoryCollectionSettings(settingsUpdate *ResourceComputerInventoryCollectionSettings) (*ResourceComputerInventoryCollectionSettings, error)

UpdateComputerInventoryCollectionSettings updates the computer inventory collection settings.

func (*Client) UpdateComputerPrestageByID

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

UpdateComputerPrestageByID updates a computer prestage by its ID.

func (*Client) UpdateComputerPrestageByName

func (c *Client) UpdateComputerPrestageByName(name string, prestageUpdate *ResourceComputerPrestage) (*ResourceComputerPrestage, error)

UpdateComputerPrestageByNameByID updates a computer prestage based on its display name.

func (*Client) UpdateDepartmentByID

func (c *Client) UpdateDepartmentByID(id string, departmentUpdate *ResourceDepartment) (*ResourceDepartment, error)

UpdateDepartmentByID Updates department by resource ID

func (*Client) UpdateDepartmentByName

func (c *Client) UpdateDepartmentByName(targetName string, departmentUpdate *ResourceDepartment) (*ResourceDepartment, error)

UpdateDepartmentByName Updates department by resource name

func (*Client) UpdateDeviceCommunicationSettings

func (c *Client) UpdateDeviceCommunicationSettings(updatedSettings ResourceDeviceCommunicationSettings) (*ResourceDeviceCommunicationSettings, error)

Updates device communication settings

func (*Client) UpdateDeviceEnrollmentMDMServerToken

func (c *Client) UpdateDeviceEnrollmentMDMServerToken(id string, tokenUpload *ResourceDeviceEnrollmentTokenUpload) (*ResponseDeviceEnrollmentTokenUpload, error)

UpdateDeviceEnrollmentMDMServerToken updates an existing device enrollment instance with a new token

func (*Client) UpdateDeviceEnrollmentMetadataByID

func (c *Client) UpdateDeviceEnrollmentMetadataByID(id string, deviceEnrollment *ResourceDeviceEnrollmentUpdate) (*ResourceDeviceEnrollment, error)

UpdateDeviceEnrollmentMetadataByID updates a device enrollment instance with the specified ID

func (*Client) UpdateDirectoryBindingByID

func (c *Client) UpdateDirectoryBindingByID(id string, binding *ResponseDirectoryBinding) (*ResponseDirectoryBinding, error)

UpdateDirectoryBindingByID updates a directory binding by its ID.

func (*Client) UpdateDirectoryBindingByName

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

UpdateDirectoryBindingByName updates a directory binding by its name.

func (*Client) UpdateDiskEncryptionConfigurationByID

func (c *Client) UpdateDiskEncryptionConfigurationByID(id string, config *ResourceDiskEncryptionConfiguration) (*ResponseDiskEncryptionConfigurationCreatedAndUpdated, error)

UpdateDiskEncryptionConfigurationByID updates a disk encryption configuration by its ID.

func (*Client) UpdateDiskEncryptionConfigurationByName

func (c *Client) UpdateDiskEncryptionConfigurationByName(name string, config *ResourceDiskEncryptionConfiguration) (*ResourceDiskEncryptionConfiguration, error)

UpdateDiskEncryptionConfigurationByName updates a disk encryption configuration by its name.

func (*Client) UpdateDistributionPointByID

UpdateDistributionPointByID updates a distribution point by its ID.

func (*Client) UpdateDistributionPointByName

UpdateDistributionPointByName updates a distribution point by its name.

func (*Client) UpdateDockItemByID

func (c *Client) UpdateDockItemByID(id string, dockItem *ResourceDockItem) (*ResourceDockItem, error)

UpdateDockItemByID updates a dock item by its ID.

func (*Client) UpdateDockItemByName

func (c *Client) UpdateDockItemByName(name string, dockItem *ResourceDockItem) (*ResourceDockItem, error)

UpdateDockItemByName updates a dock item by its name.

func (*Client) UpdateEbookByID

func (c *Client) UpdateEbookByID(id string, ebook ResourceEbooks) (*ResourceEbooks, error)

UpdateEbookByID updates an existing ebook by its ID.

func (*Client) UpdateEbookByName

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

UpdateEbookByName updates an existing ebook by its name.

func (*Client) UpdateEnrollment

func (c *Client) UpdateEnrollment(enrollmentUpdate *ResourceEnrollment) (*ResourceEnrollment, error)

UpdateEnrollment updates the enrollment configuration

func (*Client) UpdateEnrollmentCustomizationByID

func (c *Client) UpdateEnrollmentCustomizationByID(id string, updatedCustomization ResourceEnrollmentCustomization) (*ResourceEnrollmentCustomization, error)

Updates resource enrollment customization by id

func (*Client) UpdateEnrollmentMessageByLanguageID

func (c *Client) UpdateEnrollmentMessageByLanguageID(languageId string, enrollmentMessage *ResourceEnrollmentLanguage) (*ResourceEnrollmentLanguage, error)

UpdateEnrollmentMessageByLanguageID updates the enrollment messaging for a specific language ID

func (*Client) UpdateExternalPatchSourceByID

func (c *Client) UpdateExternalPatchSourceByID(id string, patchSource *ResourcePatchExternalSource) (*ResourcePatchExternalSource, error)

UpdateExternalPatchSourceByID updates an existing external patch source by its ID on the Jamf Pro server.

func (*Client) UpdateExternalPatchSourceByName

func (c *Client) UpdateExternalPatchSourceByName(name string, patchSource *ResourcePatchExternalSource) (*ResourcePatchExternalSource, error)

UpdateExternalPatchSourceByName updates an existing external patch source by its name on the Jamf Pro server.

func (*Client) UpdateFailoverUrl

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

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

func (*Client) UpdateGSXConnectionInformation

func (c *Client) UpdateGSXConnectionInformation(gsxConnectionSettingsUpdate *ResourceGSXConnection) (*ResourceGSXConnection, error)

Function: UpdateGSXConnectionInformation Method: PATCH Path: /api/v1/gsx-connection Description: Updates the GSX connection settings. Parameters:

  • gsxConnectionSettingsUpdate (*ResourceGSXConnection): The updated GSX connection settings.

Returns: ResourceGSXConnection - The updated GSX connection settings. Errors: Returns an error if the request fails or if the resource cannot be updated. Example:

updatedSettings := &jamfpro.ResourceGSXConnection{
    Enabled: false,
    Username: "",
    ServiceAccountNo: "0",
    ShipToNo: "0",
    GsxKeystore: jamfpro.GsxKeystore{
        Name: "certificate.p12",
        ExpirationEpoch: 169195490000,
        ErrorMessage: "Certificate error",
    },
}
updated, err := client.UpdateGSXConnectionInformation(updatedSettings)
if err != nil {
    log.Fatal(err)
}
fmt.Println(updated)

func (*Client) UpdateIBeaconByID

func (c *Client) UpdateIBeaconByID(id string, beacon *ResourceIBeacons) (*ResourceIBeacons, error)

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

func (*Client) UpdateIBeaconByName

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

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

func (*Client) UpdateJamfApiRoleByID

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

UpdateJamfApiRoleByID updates a Jamf API role by its ID

func (*Client) UpdateJamfApiRoleByName

func (c *Client) UpdateJamfApiRoleByName(name string, roleUpdate *ResourceAPIRole) (*ResourceAPIRole, error)

UpdateJamfApiRoleByName updates a Jamf API role based on its display name

func (*Client) UpdateJamfAppCatalogAppInstallerDeploymentByID

func (c *Client) UpdateJamfAppCatalogAppInstallerDeploymentByID(id string, payload *ResourceJamfAppCatalogDeployment) (*ResourceJamfAppCatalogDeployment, error)

UpdateJamfAppCatalogDeploymentByID updates Jamf App Catalog Deployment by provided ID & returns ResourceJamfAppCatalogDeployment

func (*Client) UpdateJamfAppCatalogAppInstallerGlobalSettings

func (c *Client) UpdateJamfAppCatalogAppInstallerGlobalSettings(payload *ResponseJamfAppCatalogGlobalSettings) (*ResponseJamfAppCatalogGlobalSettings, error)

UpdateJamfAppCatalogAppInstallerGlobalSettings updates the global end-user experience settings for the Jamf App Catalog

func (*Client) UpdateJamfConnectConfigProfileByConfigProfileUUID

func (c *Client) UpdateJamfConnectConfigProfileByConfigProfileUUID(configProfileUUID string, profileUpdate *ResourceJamfConnectConfigProfileUpdate) (*ResourceJamfConnectConfigProfile, error)

UpdateJamfConnectConfigProfileByConfigProfileUUID updates the way the Jamf Connect app gets updated on computers within scope of the associated configuration profile. The profile is identified by its UUID.

func (*Client) UpdateJamfConnectConfigProfileByID

func (c *Client) UpdateJamfConnectConfigProfileByID(profileID int, profileUpdate *ResourceJamfConnectConfigProfileUpdate) (*ResourceJamfConnectConfigProfile, error)

UpdateJamfConnectConfigProfileByID updates the Jamf Connect app update settings for a profile specified by ID

func (*Client) UpdateJamfProServerUrlSettings

func (c *Client) UpdateJamfProServerUrlSettings(updatedSettings ResourceJamfProServerURL) (*ResourceJamfProServerURL, error)

Updates Jamf Pro Server URL settings

func (*Client) UpdateJamfProtectIntegrationSettings

func (c *Client) UpdateJamfProtectIntegrationSettings(updatedSettings ResourceJamfProtectIntegrationSettings) (*ResourceJamfProtectIntegrationSettings, error)

UpdateJamfProtectIntegrationSettings updates the Jamf Protect integration settings

func (*Client) UpdateLDAPPrestagePaneByID

func (c *Client) UpdateLDAPPrestagePaneByID(customizationResourceID string, panelID string, ldapPane ResourceEnrollmentCustomizationLDAPPane) (*ResourceEnrollmentCustomizationLDAPPane, error)

UpdateLDAPPrestagePaneByID updates an LDAP prestage pane for an enrollment customization

func (*Client) UpdateLDAPServerByID

func (c *Client) UpdateLDAPServerByID(id string, ldapServer *ResourceLDAPServers) (*ResourceLDAPServers, error)

UpdateLDAPServerByID updates an existing LDAP server identified by its ID.

func (*Client) UpdateLDAPServerByName

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

UpdateLDAPServerByName updates an existing LDAP server identified by its name.

func (*Client) UpdateLicensedSoftwareByID

func (c *Client) UpdateLicensedSoftwareByID(id string, licensedSoftware *ResourceLicensedSoftware) (*ResourceLicensedSoftware, error)

UpdateLicensedSoftwareByID updates an existing licensed software item by its ID.

func (*Client) UpdateLicensedSoftwareByName

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

UpdateLicensedSoftwareByName updates an existing licensed software item by its name.

func (*Client) UpdateLocalAdminPasswordSettings

func (c *Client) UpdateLocalAdminPasswordSettings(settings *ResourceLocalAdminPasswordSettings) error

UpdateLocalAdminPasswordSettings updates the current Jamf Pro LAPS settings

func (*Client) UpdateLoginCustomization

func (c *Client) UpdateLoginCustomization(loginCustomizationUpdate *ResourceLoginCustomization) (*ResourceLoginCustomization, error)

Function: UpdateLoginCustomization Method: PUT Path: /api/v1/login-customization Description: Updates the login customization settings. Parameters:

  • loginCustomizationUpdate (*ResourceLoginCustomization): The updated login customization settings.

Returns: ResourceLoginCustomization - The updated login customization settings. Example:

updatedSettings := &jamfpro.ResourceLoginCustomization{
    RampInstance: false,
    IncludeCustomDisclaimer: true,
    DisclaimerHeading: "Updated Disclaimer Header",
    DisclaimerMainText: "Updated disclaimer main text",
    ActionText: "Accept",
}
updated, err := client.UpdateLoginCustomization(updatedSettings)
if err != nil {
    log.Fatal(err)
}
fmt.Println(updated)

Errors: Returns an error if the request fails or if the resource cannot be updated.

func (*Client) UpdateMacApplicationByID

func (c *Client) UpdateMacApplicationByID(id string, macApp ResourceMacApplications) (*ResourceMacApplications, error)

UpdateMacApplicationByID updates an existing Mac Application by its ID.

func (*Client) UpdateMacApplicationByName

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

UpdateMacApplicationByName updates an existing Mac Application by its name.

func (*Client) UpdateMacOSConfigurationProfileByID

func (c *Client) UpdateMacOSConfigurationProfileByID(id string, profile *ResourceMacOSConfigurationProfile) (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

func (c *Client) UpdateMacOSConfigurationProfileByName(name string, profile *ResourceMacOSConfigurationProfile) (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) UpdateManagedSoftwareUpdateFeatureToggle

func (c *Client) UpdateManagedSoftwareUpdateFeatureToggle(payload *ResourceManagedSoftwareUpdateFeatureToggle) (*ResponseManagedSoftwareUpdateFeatureToggle, error)

UpdateManagedSoftwareUpdateFeatureToggle updates the feature toggle for managed software updates.

func (*Client) UpdateMobileDeviceApplicationByApplicationBundleID

func (c *Client) UpdateMobileDeviceApplicationByApplicationBundleID(id string, app *ResourceMobileDeviceApplication) (*ResourceMobileDeviceApplication, error)

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

func (*Client) UpdateMobileDeviceApplicationByID

func (c *Client) UpdateMobileDeviceApplicationByID(id string, app *ResourceMobileDeviceApplication) (*ResourceMobileDeviceApplication, error)

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

func (*Client) UpdateMobileDeviceApplicationByIDAndAppVersion

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

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

func (*Client) UpdateMobileDeviceApplicationByName

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

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

func (*Client) UpdateMobileDeviceByID

func (c *Client) UpdateMobileDeviceByID(id string, attribute *ResourceMobileDevice) (*ResourceMobileDevice, error)

UpdateMobileDeviceByID updates a mobile device by its ID.

func (*Client) UpdateMobileDeviceByName

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

UpdateMobileDeviceByName updates a mobile device by its name.

func (*Client) UpdateMobileDeviceConfigurationProfileByID

func (c *Client) UpdateMobileDeviceConfigurationProfileByID(id string, profile *ResourceMobileDeviceConfigurationProfile) (*ResponseMobileDeviceConfigurationProfileCreateAndUpdate, error)

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

func (*Client) UpdateMobileDeviceConfigurationProfileByName

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

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

func (*Client) UpdateMobileDeviceEnrollmentProfileByID

func (c *Client) UpdateMobileDeviceEnrollmentProfileByID(id string, profile *ResourceMobileDeviceEnrollmentProfile) (*ResourceMobileDeviceEnrollmentProfile, error)

UpdateMobileDeviceEnrollmentProfileByID updates a mobile device enrollment profile by its ID.

func (*Client) UpdateMobileDeviceEnrollmentProfileByInvitation

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

UpdateMobileDeviceEnrollmentProfileByInvitation updates a mobile device enrollment profile by its invitation.

func (*Client) UpdateMobileDeviceEnrollmentProfileByName

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

UpdateMobileDeviceEnrollmentProfileByName updates a mobile device enrollment profile by its name.

func (*Client) UpdateMobileDeviceGroupByID

func (c *Client) UpdateMobileDeviceGroupByID(id string, group *ResourceMobileDeviceGroup) (*ResourceMobileDeviceGroup, error)

UpdateMobileDeviceGroupByID updates a mobile device group by its ID.

func (*Client) UpdateMobileDeviceGroupByName

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

UpdateMobileDeviceGroupByName updates a mobile device group by its name.

func (*Client) UpdateMobileDeviceProvisioningProfileByID

func (c *Client) UpdateMobileDeviceProvisioningProfileByID(id string, profile *ResourceMobileDeviceProvisioningProfile) (*ResourceMobileDeviceProvisioningProfile, error)

UpdateMobileDeviceProvisioningProfileByID updates a mobile device provisioning profile by its ID.

func (*Client) UpdateMobileDeviceProvisioningProfileByName

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

UpdateMobileDeviceProvisioningProfileByName updates a mobile device provisioning profile by its name.

func (*Client) UpdateMobileDeviceProvisioningProfileByUUID

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

UpdateMobileDeviceProvisioningProfileByUUID updates a mobile device provisioning profile by its UUID.

func (*Client) UpdateMobileExtensionAttributeByID

func (c *Client) UpdateMobileExtensionAttributeByID(id string, attribute *ResourceMobileExtensionAttribute) (*ResourceMobileExtensionAttribute, error)

UpdateMobileExtensionAttributeByID updates a mobile extension attribute by its ID.

func (*Client) UpdateMobileExtensionAttributeByName

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

UpdateMobileExtensionAttributeByName updates a mobile extension attribute by its name.

func (*Client) UpdateNetworkSegmentByID

func (c *Client) UpdateNetworkSegmentByID(id string, segment *ResourceNetworkSegment) (*ResponseNetworkSegmentCreatedAndUpdated, error)

UpdateNetworkSegmentByID updates a specific network segment by its ID.

func (*Client) UpdateNetworkSegmentByName

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

UpdateNetworkSegmentByName updates a specific network segment by its name.

func (*Client) UpdateOnboardingSettings

func (c *Client) UpdateOnboardingSettings(request ResourceUpdateOnboardingSettings) (*ResponseUpdateOnboardingSettings, error)

UpdateOnboardingSettings updates the onboarding configuration

func (*Client) UpdatePackageByID

func (c *Client) UpdatePackageByID(id string, packageMetadata ResourcePackage) (*ResourcePackage, error)

UpdatePackageByID updates a package manifest by its ID on the Jamf Pro server.

func (*Client) UpdatePatchPolicyByID

func (c *Client) UpdatePatchPolicyByID(softwareTitleConfigID string, policyRequest *ResourcePatchPolicyClassicAPI) error

UpdatePatchPolicyByID updates an existing patch policy

func (*Client) UpdatePatchSoftwareTitleConfigurationById

func (c *Client) UpdatePatchSoftwareTitleConfigurationById(id string, updatedConfiguration ResourcePatchSoftwareTitleConfiguration) (*ResourcePatchSoftwareTitleConfiguration, error)

UpdatePatchSoftwareTitleConfigurationById updates a single PatchSoftwareTitleConfiguration with the given ID

func (*Client) UpdatePolicyByID

func (c *Client) UpdatePolicyByID(id string, policy *ResourcePolicy) (*ResponsePolicyCreateAndUpdate, error)

UpdatePolicyByID updates an existing policy by its ID.

func (*Client) UpdatePolicyByName

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

UpdatePolicyByName updates an existing policy by its name.

func (*Client) UpdatePolicyProperties

func (c *Client) UpdatePolicyProperties(settingsUpdate ResourcePolicyProperties) (*ResourcePolicyProperties, error)

func (*Client) UpdatePrinterByID

func (c *Client) UpdatePrinterByID(id string, printer *ResourcePrinter) (*ResponsePrinterCreateAndUpdate, error)

UpdatePrinterByID updates a printer by its ID.

func (*Client) UpdatePrinterByName

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

UpdatePrinterByName updates a printer by its name.

func (*Client) UpdateRemovableMACAddressByID

func (c *Client) UpdateRemovableMACAddressByID(id string, macAddress *ResourceRemovableMacAddress) (*ResourceRemovableMacAddress, error)

UpdateRemovableMACAddressByID updates an existing removable MAC address by its ID.

func (*Client) UpdateRemovableMACAddressByName

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

UpdateRemovableMACAddressByName updates an existing removable MAC address by its name.

func (*Client) UpdateRestrictedSoftwareByID

func (c *Client) UpdateRestrictedSoftwareByID(id string, restrictedSoftware *ResourceRestrictedSoftware) (*ResponseRestrictedSoftwareCreateAndUpdate, error)

UpdateRestrictedSoftwareByID updates an existing restricted software entry by its ID.

func (*Client) UpdateRestrictedSoftwareByName

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

UpdateRestrictedSoftwareByName updates an existing restricted software entry by its name.

func (*Client) UpdateReturnToServiceConfigurationByID

func (c *Client) UpdateReturnToServiceConfigurationByID(id string, config ResourceReturnToServiceConfiguration) (*ResponseReturnToServiceConfiguration, error)

UpdateReturnToServiceConfigurationByID updates an existing Return to Service configuration by ID.

func (*Client) UpdateSMTPServerInformation

func (c *Client) UpdateSMTPServerInformation(settings *ResourceSMTPServer) (*ResourceSMTPServer, error)

UpdateSMTPServerInformation updates the SMTP server settings

func (*Client) UpdateSSOPrestagePaneByID

func (c *Client) UpdateSSOPrestagePaneByID(customizationResourceID string, panelID string, ssoPane ResourceEnrollmentCustomizationSSOPane) (*ResourceEnrollmentCustomizationSSOPane, error)

UpdateSSOPrestagePaneByID updates an SSO prestage pane for an enrollment customization

func (*Client) UpdateScriptByID

func (c *Client) UpdateScriptByID(id string, scriptUpdate *ResourceScript) (*ResourceScript, error)

Updates script from provided ResourceScript - only updates provided keys

func (*Client) UpdateScriptByName

func (c *Client) UpdateScriptByName(name string, scriptUpdate *ResourceScript) (*ResourceScript, error)

Leverages UpdateScriptByID and GetScripts to update script from provided ResourceScript

func (*Client) UpdateSelfServiceBrandingMacOSByID

func (c *Client) UpdateSelfServiceBrandingMacOSByID(id string, brandingUpdate *ResourceSelfServiceBrandingDetail) (*ResourceSelfServiceBrandingDetail, error)

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

func (*Client) UpdateSelfServiceBrandingMacOSByName

func (c *Client) UpdateSelfServiceBrandingMacOSByName(name string, brandingUpdate *ResourceSelfServiceBrandingDetail) (*ResourceSelfServiceBrandingDetail, error)

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

func (*Client) UpdateSelfServiceSettings

func (c *Client) UpdateSelfServiceSettings(settingsUpdate *ResourceSelfServiceSettings) (*ResourceSelfServiceSettings, error)

UpdateSelfServiceSettings updates the self service settings.

func (*Client) UpdateSiteByID

func (c *Client) UpdateSiteByID(id string, site *SharedResourceSite) (*SharedResourceSite, error)

UpdateSiteByID updates an existing site by its ID.

func (*Client) UpdateSiteByName

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

UpdateSiteByName updates an existing site by its name.

func (*Client) UpdateSmartComputerGroupByID

func (c *Client) UpdateSmartComputerGroupByID(id string, request ResourceSmartComputerGroup) (*ResourceSmartComputerGroup, error)

UpdateSmartComputerGroupByID updates an existing Smart Computer Group by ID

func (*Client) UpdateSoftwareUpdateServerByID

func (c *Client) UpdateSoftwareUpdateServerByID(id string, server *ResourceSoftwareUpdateServer) (*ResourceSoftwareUpdateServer, error)

UpdateSoftwareUpdateServerByID updates a software update server by its ID.

func (*Client) UpdateSoftwareUpdateServerByName

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

UpdateSoftwareUpdateServerByName updates a software update server by its name.

func (*Client) UpdateSsoSettings

func (c *Client) UpdateSsoSettings(updatedSettings ResourceSsoSettings) (*ResourceSsoSettings, error)

UpdateSsoSettings Updates SSO Settings with ResourceSsoSettings struct data

func (*Client) UpdateTextPrestagePaneByID

func (c *Client) UpdateTextPrestagePaneByID(customizationResourceID string, panelID string, textPane ResourceEnrollmentCustomizationTextPane) (*ResourceEnrollmentCustomizationTextPane, error)

UpdateTextPrestagePaneByID updates a text prestage pane for an enrollment customization

func (*Client) UpdateUserByEmail

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

UpdateUserByEmail updates a user's details by their email.

func (*Client) UpdateUserByID

func (c *Client) UpdateUserByID(id string, updatedUser *ResourceUser) (*ResourceUser, error)

UpdateUserByID updates a user's details by their ID.

func (*Client) UpdateUserByName

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

UpdateUserByName updates a user's details by their name.

func (*Client) UpdateUserExtensionAttributeByID

func (c *Client) UpdateUserExtensionAttributeByID(id string, attribute *ResourceUserExtensionAttribute) (*ResourceUserExtensionAttribute, error)

UpdateUserExtensionAttributeByID updates a user extension attribute by its ID.

func (*Client) UpdateUserExtensionAttributeByName

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

UpdateUserExtensionAttributeByName updates a user extension attribute by its name.

func (*Client) UpdateUserGroupByID

func (c *Client) UpdateUserGroupByID(id string, userGroup *ResourceUserGroup) (*ResponseUserGroupCreateAndUpdate, error)

UpdateUserGroupByID updates an existing user group by its ID.

func (*Client) UpdateUserGroupByName

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

UpdateUserGroupByName updates an existing user group by its name.

func (*Client) UpdateVPPAccountByID

func (c *Client) UpdateVPPAccountByID(id string, account *ResourceVPPAccount) (*ResourceVPPAccount, error)

UpdateVPPAccount updates an existing VPP account.

func (*Client) UpdateVPPAssignmentByID

func (c *Client) UpdateVPPAssignmentByID(id string, assignment *ResourceVPPAssignment) error

UpdateVPPAssignmentByID updates a VPP assignment by its ID

func (*Client) UpdateVolumePurchasingLocationByID

func (c *Client) UpdateVolumePurchasingLocationByID(id string) (*ResourceVolumePurchasingLocation, error)

UpdateVolumePurchasingLocationByID updates a specific volume purchasing location by its ID.

func (*Client) UpdateVolumePurchasingSubscriptionByID

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

UpdateVolumePurchasingSubscriptionByID updates a volume purchasing subscription by its ID

func (*Client) UpdateVolumePurchasingSubscriptionByName

func (c *Client) UpdateVolumePurchasingSubscriptionByName(name string, updateData *ResourceVolumePurchasingSubscription) (*ResourceVolumePurchasingSubscription, error)

UpdateVolumePurchasingSubscriptionByNameByID updates a volume purchasing subscription by its display name

func (*Client) UpdateWebhookByID

func (c *Client) UpdateWebhookByID(id string, webhook *ResourceWebhook) (*ResourceWebhook, error)

UpdateWebhookByID updates a specific webhook by its ID.

func (*Client) UpdateWebhookByName

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

UpdateWebhookByName updates a specific webhook by its name.

func (*Client) UploadAttachmentAndAssignToComputerByID

func (c *Client) UploadAttachmentAndAssignToComputerByID(id string, filePaths []string) (*ResponseUploadAttachment, error)

UploadAttachmentAndAssignToComputerByID uploads a file attachment to a computer by computer ID. Api supports single file upload only.

func (*Client) UploadEnrollmentCustomizationsImage

func (c *Client) UploadEnrollmentCustomizationsImage(filePath string) (*ResponseEnrollmentCustomizationUpload, error)

UploadEnrollmentCustomizationsImage uploads an enrollment image file using the custom multipart format

func (*Client) UploadIcon

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

UploadIcon uploads an icon image file using the custom multipart format

func (*Client) UploadPackage

func (c *Client) UploadPackage(id string, filePaths []string) (*ResponsePackageCreatedAndUpdated, error)

UploadPackage uploads a package to the Jamf Pro server. It requires the ID of an existing package manifest within JamfPro and the file paths.

func (*Client) UploadSelfServiceBrandingImage

func (c *Client) UploadSelfServiceBrandingImage(filePath string) (*ResponseSelfServiceBranding, error)

UploadSelfServiceBrandingImage uploads an branding image file using the custom multipart format

func (*Client) ValidateCloudLdapKeystore

func (c *Client) ValidateCloudLdapKeystore(payload PayloadCloudLdapVerifyKeystore) (*ResponseCloudLdapVerifyKeystore, error)

type ClientData

type ClientData struct {
	ManagementID string `json:"managementId"`
}

ClientData represents the client data structure in the request

type CloudIdPCommon

type CloudIdPCommon struct {
	ProviderName string `json:"providerName"` // GOOGLE or AZURE
	DisplayName  string `json:"displayName"`
}

type CloudIdentityProviderDefaultMappingsSubsetGroupMappings

type CloudIdentityProviderDefaultMappingsSubsetGroupMappings struct {
	ObjectClassLimitation string `json:"objectClassLimitation"`
	ObjectClasses         string `json:"objectClasses"`
	SearchBase            string `json:"searchBase"`
	SearchScope           string `json:"searchScope"`
	GroupID               string `json:"groupID"`
	GroupName             string `json:"groupName"`
	GroupUuid             string `json:"groupUuid"`
}

type CloudIdentityProviderDefaultMappingsSubsetMembershipMappings

type CloudIdentityProviderDefaultMappingsSubsetMembershipMappings struct {
	GroupMembershipMapping string `json:"memberOf"`
}

type CloudIdentityProviderDefaultMappingsSubsetUserMappings

type CloudIdentityProviderDefaultMappingsSubsetUserMappings struct {
	ObjectClassLimitation string `json:"objectClassLimitation"`
	ObjectClasses         string `json:"objectClasses"`
	SearchBase            string `json:"searchBase"`
	SearchScope           string `json:"searchScope"`
	AdditionalSearchBase  string `json:"additionalSearchBase"`
	UserID                string `json:"userID"`
	Username              string `json:"username"`
	RealName              string `json:"realName"`
	EmailAddress          string `json:"emailAddress"`
	Department            string `json:"department"`
	Building              string `json:"building"`
	Room                  string `json:"room"`
	Phone                 string `json:"phone"`
	Position              string `json:"position"`
	UserUuid              string `json:"userUuid"`
}

type CloudIdpListItem

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

type CloudIdpServerSubsetCloudIdpServerMappings

type CloudIdpServerSubsetCloudIdpServerMappings 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 CloudLdapKeystore

type CloudLdapKeystore struct {
	Password  string `json:"password"`
	FileBytes string `json:"fileBytes"`
	FileName  string `json:"fileName"`
}

type CloudLdapMappings

type CloudLdapMappings struct {
	UserMappings       CloudIdentityProviderDefaultMappingsSubsetUserMappings       `json:"userMappings"`
	GroupMappings      CloudIdentityProviderDefaultMappingsSubsetGroupMappings      `json:"groupMappings"`
	MembershipMappings CloudIdentityProviderDefaultMappingsSubsetMembershipMappings `json:"membershipMappings"`
}

type CloudLdapServer

type CloudLdapServer struct {
	Enabled                                  bool               `json:"enabled"`
	Keystore                                 *CloudLdapKeystore `json:"keystore"`
	UseWildcards                             bool               `json:"useWildcards"`
	ConnectionType                           string             `json:"connectionType"` // LDAPS or START_TLS
	ServerUrl                                string             `json:"serverUrl"`
	DomainName                               string             `json:"domainName"`
	Port                                     int                `json:"port"`
	ConnectionTimeout                        int                `json:"connectionTimeout"`
	SearchTimeout                            int                `json:"searchTimeout"`
	MembershipCalculationOptimizationEnabled bool               `json:"membershipCalculationOptimizationEnabled,omitempty"`
}

type CommandData

type CommandData struct {
	CommandType string `json:"commandType"`
	// Delete_User
	UserName       string `json:"userName,omitempty"`
	ForceDeletion  bool   `json:"forceDeletion,omitempty"`
	DeleteAllUsers bool   `json:"deleteAllUsers,omitempty"`
	// Enable_Lost_Mode
	LostModeMessage  string `json:"lostModeMessage,omitempty"`
	LostModePhone    string `json:"lostModePhone,omitempty"`
	LostModeFootnote string `json:"lostModeFootnote,omitempty"`
	// Erase_Device
	ReturnToService        *ReturnToService `json:"returnToService,omitempty"`
	PreserveDataPlan       bool             `json:"preserveDataPlan,omitempty"`
	DisallowProximitySetup bool             `json:"disallowProximitySetup,omitempty"`
	PIN                    string           `json:"pin,omitempty"`
	ObliterationBehavior   string           `json:"obliterationBehavior,omitempty"`
	// Restart_Device
	RebuildKernelCache bool     `json:"rebuildKernelCache,omitempty"`
	KextPaths          []string `json:"kextPaths,omitempty"`
	NotifyUser         bool     `json:"notifyUser,omitempty"`
	// Settings
	ApplicationAttributes     *ApplicationAttributes     `json:"applicationAttributes,omitempty"`
	SharedDeviceConfiguration *SharedDeviceConfiguration `json:"sharedDeviceConfiguration,omitempty"`
	ApplicationConfiguration  *ApplicationConfiguration  `json:"applicationConfiguration,omitempty"`
	SoftwareUpdateSettings    *SoftwareUpdateSettings    `json:"softwareUpdateSettings,omitempty"`
	BootstrapTokenAllowed     bool                       `json:"bootstrapTokenAllowed,omitempty"`
	Bluetooth                 bool                       `json:"bluetooth,omitempty"`
	AppAnalytics              string                     `json:"appAnalytics,omitempty"`
	DiagnosticSubmission      string                     `json:"diagnosticSubmission,omitempty"`
	DataRoaming               string                     `json:"dataRoaming,omitempty"`
	VoiceRoaming              string                     `json:"voiceRoaming,omitempty"`
	PersonalHotspot           string                     `json:"personalHotspot,omitempty"`
	MaximumResidentUsers      int                        `json:"maximumResidentUsers,omitempty"`
	DeviceName                string                     `json:"deviceName,omitempty"`
	TimeZone                  string                     `json:"timeZone,omitempty"`
	PasscodeLockGracePeriod   int                        `json:"passcodeLockGracePeriod,omitempty"`
	// Set_Auto_Admin_Password
	GUID     string `json:"guid,omitempty"`
	Password string `json:"password,omitempty"`
}

CommandData represents the command data structure in the request

type ComputerContainerPeripherals

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

type ComputerGroupListItem

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

type ComputerGroupSubsetComputer

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

Computers

type ComputerGroupSubsetContainerCriteria

type ComputerGroupSubsetContainerCriteria struct {
	Size      int                     `xml:"size,omitempty"`
	Criterion *[]SharedSubsetCriteria `xml:"criterion,omitempty"`
}

type ComputerHistorySubsetApp

type ComputerHistorySubsetApp struct {
	Name            string `json:"name,omitempty" xml:"name,omitempty"`
	Version         string `json:"version,omitempty" xml:"version,omitempty"`
	SizeMB          int    `json:"size_mb,omitempty" xml:"size_mb,omitempty"`
	Status          string `json:"status,omitempty" xml:"status,omitempty"`
	Deployed        string `json:"deployed,omitempty" xml:"deployed,omitempty"`
	DeployedEpoch   int64  `json:"deployed_epoch,omitempty" xml:"deployed_epoch,omitempty"`
	DeployedUTC     string `json:"deployed_utc,omitempty" xml:"deployed_utc,omitempty"`
	LastUpdate      string `json:"last_update,omitempty" xml:"last_update,omitempty"`
	LastUpdateEpoch int64  `json:"last_update_epoch,omitempty" xml:"last_update_epoch,omitempty"`
	LastUpdateUTC   string `json:"last_update_utc,omitempty" xml:"last_update_utc,omitempty"`
}

ComputerHistorySubsetApp defines the structure for application details in the Mac App Store context.

type ComputerHistorySubsetAppStoreApps

type ComputerHistorySubsetAppStoreApps struct {
	Installed []ComputerHistorySubsetApp `json:"installed,omitempty" xml:"installed,omitempty"`
	Pending   []ComputerHistorySubsetApp `json:"pending,omitempty" xml:"pending,omitempty"`
	Failed    []ComputerHistorySubsetApp `json:"failed,omitempty" xml:"failed,omitempty"`
}

ComputerHistorySubsetAppStoreApps groups installed, pending, and failed applications from the Mac App Store.

type ComputerHistorySubsetAudit

type ComputerHistorySubsetAudit struct {
	Audit ComputerHistorySubsetEventDetails `json:"audit,omitempty" xml:"audit,omitempty"`
}

ComputerHistorySubsetAudit stores audit logs.

type ComputerHistorySubsetCasperImaging

type ComputerHistorySubsetCasperImaging struct {
	CasperImagingLog ComputerHistorySubsetEventStatus `json:"casper_imaging_log,omitempty" xml:"casper_imaging_log,omitempty"`
}

ComputerHistorySubsetCasperImaging stores logs for Casper imaging actions.

type ComputerHistorySubsetCasperRemote

type ComputerHistorySubsetCasperRemote struct {
	CasperRemoteLog ComputerHistorySubsetEventStatus `json:"casper_remote_log" xml:"casper_remote_log"`
}

ComputerHistorySubsetCasperRemote stores logs for Casper remote actions.

type ComputerHistorySubsetCommand

type ComputerHistorySubsetCommand struct {
	Name           string `json:"name,omitempty" xml:"name,omitempty"`
	Status         string `json:"status,omitempty" xml:"status,omitempty"`
	Issued         string `json:"issued,omitempty" xml:"issued,omitempty"`
	IssuedEpoch    int64  `json:"issued_epoch,omitempty" xml:"issued_epoch,omitempty"`
	IssuedUTC      string `json:"issued_utc,omitempty" xml:"issued_utc,omitempty"`
	LastPush       string `json:"last_push,omitempty" xml:"last_push,omitempty"`
	LastPushEpoch  int64  `json:"last_push_epoch,omitempty" xml:"last_push_epoch,omitempty"`
	LastPushUTC    string `json:"last_push_utc,omitempty" xml:"last_push_utc,omitempty"`
	Username       string `json:"username,omitempty" xml:"username,omitempty"`
	Completed      string `json:"completed,omitempty" xml:"completed,omitempty"`
	CompletedEpoch int64  `json:"completed_epoch,omitempty" xml:"completed_epoch,omitempty"`
	CompletedUTC   string `json:"completed_utc,omitempty" xml:"completed_utc,omitempty"`
	Failed         string `json:"failed,omitempty" xml:"failed,omitempty"`
	FailedEpoch    int64  `json:"failed_epoch,omitempty" xml:"failed_epoch,omitempty"`
	FailedUTC      string `json:"failed_utc,omitempty" xml:"failed_utc,omitempty"`
}

ComputerHistorySubsetCommand details a command with its issue and completion status.

type ComputerHistorySubsetCommands

type ComputerHistorySubsetCommands struct {
	Completed []ComputerHistorySubsetCommand `json:"completed,omitempty" xml:"completed,omitempty"`
	Pending   []ComputerHistorySubsetCommand `json:"pending,omitempty" xml:"pending,omitempty"`
	Failed    []ComputerHistorySubsetCommand `json:"failed,omitempty" xml:"failed,omitempty"`
}

ComputerHistorySubsetCommands groups completed, pending, and failed commands.

type ComputerHistorySubsetEventDetails

type ComputerHistorySubsetEventDetails struct {
	Event         string `json:"event,omitempty" xml:"event,omitempty"`
	Username      string `json:"username,omitempty" xml:"username,omitempty"`
	DateTime      string `json:"date_time,omitempty" xml:"date_time,omitempty"`
	DateTimeEpoch int64  `json:"date_time_epoch,omitempty" xml:"date_time_epoch,omitempty"`
	DateTimeUTC   string `json:"date_time_utc,omitempty" xml:"date_time_utc,omitempty"`
}

ComputerHistorySubsetEventDetails defines the structure for logging events with timestamps and user information.

type ComputerHistorySubsetEventStatus

type ComputerHistorySubsetEventStatus struct {
	DateTime      string `json:"date_time,omitempty" xml:"date_time,omitempty"`
	DateTimeEpoch int64  `json:"date_time_epoch,omitempty" xml:"date_time_epoch,omitempty"`
	DateTimeUTC   string `json:"date_time_utc,omitempty" xml:"date_time_utc,omitempty"`
	Status        string `json:"status,omitempty" xml:"status,omitempty"`
}

ComputerHistorySubsetEventStatus defines a simple structure for logs with status and timestamps.

type ComputerHistorySubsetGeneralInfo

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

ComputerHistorySubsetGeneralInfo stores general information about the computer.

type ComputerHistorySubsetLocation

type ComputerHistorySubsetLocation struct {
	Location ComputerHistorySubsetUserLocation `json:"location,omitempty" xml:"location,omitempty"`
}

ComputerHistorySubsetLocation stores location data related to a user.

type ComputerHistorySubsetPolicyDetails

type ComputerHistorySubsetPolicyDetails struct {
	PolicyID      int    `json:"policy_id,omitempty" xml:"policy_id,omitempty"`
	PolicyName    string `json:"policy_name,omitempty" xml:"policy_name,omitempty"`
	Username      string `json:"username,omitempty" xml:"username,omitempty"`
	DateTime      string `json:"date_time,omitempty" xml:"date_time,omitempty"`
	DateTimeEpoch int64  `json:"date_time_epoch,omitempty" xml:"date_time_epoch,omitempty"`
	DateTimeUTC   string `json:"date_time_utc,omitempty" xml:"date_time_utc,omitempty"`
	Status        string `json:"status,omitempty" xml:"status,omitempty"`
}

ComputerHistorySubsetPolicyDetails defines the details for policy logs.

type ComputerHistorySubsetPolicyLog

type ComputerHistorySubsetPolicyLog struct {
	PolicyLog ComputerHistorySubsetPolicyDetails `json:"policy_log,omitempty" xml:"policy_log,omitempty"`
}

ComputerHistorySubsetPolicyLog stores logs related to policies.

type ComputerHistorySubsetScreenSharing

type ComputerHistorySubsetScreenSharing struct {
	ScreenSharingLog ComputerHistorySubsetScreenSharingDetails `json:"screen_sharing_log,omitempty" xml:"screen_sharing_log,omitempty"`
}

ComputerHistorySubsetScreenSharing stores logs related to screen sharing.

type ComputerHistorySubsetScreenSharingDetails

type ComputerHistorySubsetScreenSharingDetails struct {
	ComputerHistorySubsetEventStatus
	Details string `json:"details,omitempty" xml:"details,omitempty"`
}

ComputerHistorySubsetScreenSharingDetails extends event status with details specific to screen sharing.

type ComputerHistorySubsetUsageLog

type ComputerHistorySubsetUsageLog struct {
	UsageLog ComputerHistorySubsetEventDetails `json:"usage_log,omitempty" xml:"usage_log,omitempty"`
}

ComputerHistorySubsetUsageLog stores logs related to computer usage.

type ComputerHistorySubsetUserLocation

type ComputerHistorySubsetUserLocation struct {
	DateTime      string `json:"date_time,omitempty" xml:"date_time,omitempty"`
	DateTimeEpoch int64  `json:"date_time_epoch,omitempty" xml:"date_time_epoch,omitempty"`
	DateTimeUTC   string `json:"date_time_utc,omitempty" xml:"date_time_utc,omitempty"`
	Username      string `json:"username,omitempty" xml:"username,omitempty"`
	FullName      string `json:"full_name,omitempty" xml:"full_name,omitempty"`
	EmailAddress  string `json:"email_address,omitempty" xml:"email_address,omitempty"`
	PhoneNumber   string `json:"phone_number,omitempty" xml:"phone_number,omitempty"`
	Department    string `json:"department,omitempty" xml:"department,omitempty"`
	Building      string `json:"building,omitempty" xml:"building,omitempty"`
	Room          int    `json:"room,omitempty" xml:"room,omitempty"`
	Position      string `json:"position,omitempty" xml:"position,omitempty"`
}

ComputerHistorySubsetUserLocation defines the detailed information about a user's location.

type ComputerInventoryCollectionSettingsSubsetPathItem

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

type ComputerInventoryCollectionSettingsSubsetPreferences

type ComputerInventoryCollectionSettingsSubsetPreferences 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 ComputerInventorySubsetApplication

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

type ComputerInventorySubsetAttachment

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

type ComputerInventorySubsetBootPartitionEncryptionDetails

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

BootPartitionEncryptionDetails represents the details of disk encryption.

type ComputerInventorySubsetCertificate

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

type ComputerInventorySubsetConfigurationProfile

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

type ComputerInventorySubsetContentCaching

type ComputerInventorySubsetContentCaching struct {
	ComputerContentCachingInformationId string                                                  `json:"computerContentCachingInformationId"`
	Parents                             []ComputerInventorySubsetContentCachingParent           `json:"parents"`
	Alerts                              []ComputerInventorySubsetContentCachingAlert            `json:"alerts"` // Corrected to slice
	Activated                           bool                                                    `json:"activated"`
	Active                              bool                                                    `json:"active"`
	ActualCacheBytesUsed                int                                                     `json:"actualCacheBytesUsed"`
	CacheDetails                        []ComputerInventorySubsetContentCachingCacheDetail      `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                  ComputerInventorySubsetContentCachingDataMigrationError `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"`
}

type ComputerInventorySubsetContentCachingAlert

type ComputerInventorySubsetContentCachingAlert 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 ComputerInventorySubsetContentCachingCacheDetail

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

type ComputerInventorySubsetContentCachingDataMigrationError

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

type ComputerInventorySubsetContentCachingDataMigrationErrorUserInfo

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

type ComputerInventorySubsetContentCachingParent

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

type ComputerInventorySubsetContentCachingParentDetails

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

type ComputerInventorySubsetContentCachingParentDetailsCapabilities

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

type ComputerInventorySubsetContentCachingParentDetailsLocalNetwork

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

type ComputerInventorySubsetDiskEncryption

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

type ComputerInventorySubsetExtensionAttribute

type ComputerInventorySubsetExtensionAttribute 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 ComputerInventorySubsetFont

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

type ComputerInventorySubsetGeneral

type ComputerInventorySubsetGeneral 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                     ComputerInventorySubsetGeneralRemoteManagement `json:"remoteManagement"`
	Supervised                           bool                                           `json:"supervised"`
	MdmCapable                           ComputerInventorySubsetGeneralMdmCapable       `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                     ComputerInventorySubsetGeneralEnrollmentMethod `json:"enrollmentMethod"`
	Site                                 SharedResourceSiteProAPI                       `json:"site"`
	ItunesStoreAccountActive             bool                                           `json:"itunesStoreAccountActive"`
	EnrolledViaAutomatedDeviceEnrollment bool                                           `json:"enrolledViaAutomatedDeviceEnrollment"`
	UserApprovedMdm                      bool                                           `json:"userApprovedMdm"`
	DeclarativeDeviceManagementEnabled   bool                                           `json:"declarativeDeviceManagementEnabled"`
	ExtensionAttributes                  []ComputerInventorySubsetExtensionAttribute    `json:"extensionAttributes"`
	ManagementId                         string                                         `json:"managementId"`
}

type ComputerInventorySubsetGeneralEnrollmentMethod

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

type ComputerInventorySubsetGeneralMdmCapable

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

type ComputerInventorySubsetGeneralRemoteManagement

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

type ComputerInventorySubsetGroupMembership

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

type ComputerInventorySubsetHardware

type ComputerInventorySubsetHardware 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    []ComputerInventorySubsetExtensionAttribute `json:"extensionAttributes"`
}

type ComputerInventorySubsetIBeacon

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

type ComputerInventorySubsetLicensedSoftware

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

type ComputerInventorySubsetLocalUserAccount

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

type ComputerInventorySubsetOperatingSystem

type ComputerInventorySubsetOperatingSystem 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      []ComputerInventorySubsetExtensionAttribute `json:"extensionAttributes"`
}

type ComputerInventorySubsetPackageReceipts

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

type ComputerInventorySubsetPlugin

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

type ComputerInventorySubsetPrinter

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

type ComputerInventorySubsetPurchasing

type ComputerInventorySubsetPurchasing 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 []ComputerInventorySubsetExtensionAttribute `json:"extensionAttributes"`
}

type ComputerInventorySubsetSecurity

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

type ComputerInventorySubsetService

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

type ComputerInventorySubsetSoftwareUpdate

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

type ComputerInventorySubsetStorage

type ComputerInventorySubsetStorage struct {
	BootDriveAvailableSpaceMegabytes int                                  `json:"bootDriveAvailableSpaceMegabytes"`
	Disks                            []ComputerInventorySubsetStorageDisk `json:"disks"`
}

type ComputerInventorySubsetStorageDisk

type ComputerInventorySubsetStorageDisk 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    []ComputerInventorySubsetStorageDiskPartition `json:"partitions"`
}

type ComputerInventorySubsetStorageDiskPartition

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

type ComputerInventorySubsetUserAndLocation

type ComputerInventorySubsetUserAndLocation 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 []ComputerInventorySubsetExtensionAttribute `json:"extensionAttributes"`
}

type ComputerInvitationListItem

type ComputerInvitationListItem 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 ComputerInvitationSubsetEnrollIntoState

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

type ComputerPrestageSubsetAccountSettings

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

type ComputerPrestageSubsetLocationInformation

type ComputerPrestageSubsetLocationInformation struct {
	ID           string `json:"id"`
	VersionLock  int    `json:"versionLock"`
	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"`
}

type ComputerPrestageSubsetPurchasingInformation

type ComputerPrestageSubsetPurchasingInformation struct {
	ID                string `json:"id"`
	VersionLock       int    `json:"versionLock"`
	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"`
}

type ComputerPrestageSubsetSkipSetupItems

type ComputerPrestageSubsetSkipSetupItems struct {
	Biometric          *bool `json:"Biometric"`
	TermsOfAddress     *bool `json:"TermsOfAddress"`
	FileVault          *bool `json:"FileVault"`
	ICloudDiagnostics  *bool `json:"iCloudDiagnostics"`
	Diagnostics        *bool `json:"Diagnostics"`
	Accessibility      *bool `json:"Accessibility"`
	AppleID            *bool `json:"AppleID"`
	ScreenTime         *bool `json:"ScreenTime"`
	Siri               *bool `json:"Siri"`
	DisplayTone        *bool `json:"DisplayTone"`
	Restore            *bool `json:"Restore"`
	Appearance         *bool `json:"Appearance"`
	Privacy            *bool `json:"Privacy"`
	Payment            *bool `json:"Payment"`
	Registration       *bool `json:"Registration"`
	TOS                *bool `json:"TOS"`
	ICloudStorage      *bool `json:"iCloudStorage"`
	Location           *bool `json:"Location"`
	Intelligence       *bool `json:"Intelligence"`
	EnableLockdownMode *bool `json:"EnableLockdownMode"`
	Welcome            *bool `json:"Welcome"`
	Wallpaper          *bool `json:"Wallpaper"`
}

type ComputerSubsetCertificates

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

type ComputerSubsetConfigurationProfiles

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

type ComputerSubsetExtensionAttributes

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

type ComputerSubsetGeneral

type ComputerSubsetGeneral 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           ComputerSubsetGeneralRemoteManagement `xml:"remote_management" json:"remote_management"`
	MdmCapable                 bool                                  `xml:"mdm_capable" json:"mdm_capable"`
	MdmCapableUsers            ComputerSubsetGeneralMdmCapableUsers  `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           ComputerSubsetGeneralManagementStatus `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                       SharedResourceSite                    `xml:"site" json:"site"`
	ItunesStoreAccountIsActive bool                                  `xml:"itunes_store_account_is_active" json:"itunes_store_account_is_active"`
}

type ComputerSubsetGeneralManagementStatus

type ComputerSubsetGeneralManagementStatus 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 ComputerSubsetGeneralMdmCapableUsers

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

type ComputerSubsetGeneralRemoteManagement

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

type ComputerSubsetGroupsAccounts

type ComputerSubsetGroupsAccounts struct {
	ComputerGroupMemberships []ComputerSubsetGroupsAccountsComputerGroupMemberships `xml:"computer_group_memberships>group" json:"computer_group_memberships"`
	LocalAccounts            []ComputerSubsetGroupsAccountsLocalAccounts            `xml:"local_accounts>user" json:"local_accounts"`
}

type ComputerSubsetGroupsAccountsComputerGroupMemberships

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

type ComputerSubsetGroupsAccountsLocalAccounts

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

type ComputerSubsetHardware

type ComputerSubsetHardware 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             []ComputerSubsetHardwareFileVault2Users `xml:"filevault2_users>user" json:"filevault_2_users"`
	Storage                     []ComputerSubsetHardwareStorage         `xml:"storage>device" json:"storage"`
	MappedPrinters              []ComputerSubsetHardwareMappedPrinters  `xml:"mapped_printers>printer" json:"mapped_printers"`
}

type ComputerSubsetHardwareFileVault2Users

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

type ComputerSubsetHardwareMappedPrinters

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

type ComputerSubsetHardwareStorage

type ComputerSubsetHardwareStorage 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      []ComputerSubsetHardwareStoragePartitions `xml:"partition" json:"partitions"`
}

type ComputerSubsetHardwareStoragePartitions

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

type ComputerSubsetLocation

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

type ComputerSubsetPeripherals

type ComputerSubsetPeripherals 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      ComputerSubsetPeripheralsContainerFields `xml:"fields" json:"fields"`
	Purchasing  ComputerSubsetPeripheralsPurchasing      `xml:"purchasing" json:"purchasing"`
	Attachments []ComputerSubsetPeripheralsAttachments   `xml:"attachments>attachment" json:"attachments"`
}

type ComputerSubsetPeripheralsAttachments

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

type ComputerSubsetPeripheralsContainerFields

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

type ComputerSubsetPeripheralsField

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

type ComputerSubsetPeripheralsPurchasing

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

type ComputerSubsetPurchasing

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

type ComputerSubsetSecurity

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

type ComputerSubsetSoftware

type ComputerSubsetSoftware 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         []ComputerSubsetSoftwareAvailableUpdates `xml:"available_updates>update" json:"available_updates"`
	RunningServices          []string                                 `xml:"running_services>name" json:"running_services"`
	Applications             []ComputerSubsetSoftwareApplications     `xml:"applications>application" json:"applications"`
	Fonts                    []ComputerSubsetSoftwareFonts            `xml:"fonts>font" json:"fonts"`
	Plugins                  []ComputerSubsetSoftwarePlugins          `xml:"plugins>plugin" json:"plugins"`
}

type ComputerSubsetSoftwareApplications

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

type ComputerSubsetSoftwareAvailableUpdates

type ComputerSubsetSoftwareAvailableUpdates struct {
	Name        string `xml:"name" json:"name"`
	PackageName string `xml:"package_name" json:"package_name"`
	Version     string `xml:"version" json:"version"`
}

type ComputerSubsetSoftwareFonts

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

type ComputerSubsetSoftwarePlugins

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

type ComputersListItem

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

type ConfigContainer

type ConfigContainer struct {
	LogLevel          string `json:"log_level"`
	LogExportPath     string `json:"log_export_path"`
	HideSensitiveData bool   `json:"hide_sensitive_data"`

	InstanceDomain       string `json:"instance_domain"`
	AuthMethod           string `json:"auth_method"`
	ClientID             string `json:"client_id"`
	ClientSecret         string `json:"client_secret"`
	Username             string `json:"basic_auth_username"`
	Password             string `json:"basic_auth_password"`
	JamfLoadBalancerLock bool   `json:"jamf_load_balancer_lock"`

	CustomCookies               []CustomCookie `json:"custom_cookies"`
	MaxRetryAttempts            int            `json:"max_retry_attempts"`
	MaxConcurrentRequests       int            `json:"max_concurrent_requests"`
	EnableDynamicRateLimiting   bool           `json:"enable_dynamic_rate_limiting"`
	CustomTimeout               int            `json:"custom_timeout_seconds"`
	TokenRefreshBufferPeriod    int            `json:"token_refresh_buffer_period_seconds"`
	TotalRetryDuration          int            `json:"total_retry_duration_seconds"`
	FollowRedirects             bool           `json:"follow_redirects"`
	MaxRedirects                int            `json:"max_redirects"`
	EnableConcurrencyManagement bool           `json:"enable_concurrency_management"`
	MandatoryRequestDelay       int            `json:"mandatory_request_delay_milliseconds"`
	RetryEligiableRequests      bool           `json:"retry_eligiable_requests"`
}

type ConfigurationSettings

type ConfigurationSettings struct {
	NotificationsEnabled  bool   `json:"notificationsEnabled"`
	AlertUserApprovedMdm  bool   `json:"alertUserApprovedMdm"`
	DefaultLandingPage    string `json:"defaultLandingPage"`
	DefaultHomeCategoryId int    `json:"defaultHomeCategoryId"`
	BookmarksName         string `json:"bookmarksName"`
}

type CustomCookie

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

type DeviceScopeSubsetAssignmentItem

type DeviceScopeSubsetAssignmentItem 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 DirectoryBindingsListItem

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

type DiskEncryptionConfigurationInstitutionalRecoveryKey

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

type DiskEncryptionConfigurationsListItem

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

type DisplayField

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

Advanced Search DisplayField

type DistributionPointListItem

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

type DockItemListItem

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

type EBookListItem

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

type EbookSubsetGeneral

type EbookSubsetGeneral 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        *SharedResourceCategory       `xml:"category"`
	SelfServiceIcon SharedResourceSelfServiceIcon `xml:"self_service_icon"`
	Site            SharedResourceSite            `xml:"site"`
}

type EbookSubsetScope

type EbookSubsetScope struct {
	AllComputers       bool                                `xml:"all_computers"`
	AllMobileDevices   bool                                `xml:"all_mobile_devices"`
	AllJSSUsers        bool                                `xml:"all_jss_users"`
	Computers          []EbookSubsetScopeComputer          `xml:"computers>computer"`
	ComputerGroups     []EbookSubsetScopeComputerGroup     `xml:"computer_groups>computer_group"`
	MobileDevices      []EbookSubsetScopeMobileDevice      `xml:"mobile_devices>mobile_device"`
	MobileDeviceGroups []EbookSubsetScopeMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group"`
	Buildings          []EbookSubsetScopeBuilding          `xml:"buildings>building"`
	Departments        []EbookSubsetScopeDepartment        `xml:"departments>department"`
	JSSUsers           []EbookSubsetScopeUser              `xml:"jss_users>user"`
	JSSUserGroups      []EbookSubsetScopeUserGroup         `xml:"jss_user_groups>user_group"`
	Classes            []EbooksSubsetScopeClass            `xml:"classes>class"`
	Limitations        EbookSubsetScopeLimitations         `xml:"limitations"`
	Exclusions         EbookSubsetScopeExclusions          `xml:"exclusions"`
}

type EbookSubsetScopeBuilding

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

Building represents a building within the scope.

type EbookSubsetScopeComputer

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

Computer represents a single computer within the scope.

type EbookSubsetScopeComputerGroup

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

ComputerGroup represents a group of computers within the scope.

type EbookSubsetScopeDepartment

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

Department represents a department within the scope.

type EbookSubsetScopeExclusions

type EbookSubsetScopeExclusions struct {
	Computers          []EbookSubsetScopeComputer          `xml:"computers>computer"`
	ComputerGroups     []EbookSubsetScopeComputerGroup     `xml:"computer_groups>computer_group"`
	MobileDevices      []EbookSubsetScopeMobileDevice      `xml:"mobile_devices>mobile_device"`
	MobileDeviceGroups []EbookSubsetScopeMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group"`
	Buildings          []EbookSubsetScopeBuilding          `xml:"buildings>building"`
	Departments        []EbookSubsetScopeDepartment        `xml:"departments>department"`
	JSSUsers           []EbookSubsetScopeUser              `xml:"jss_users>user"`
	JSSUserGroups      []EbookSubsetScopeUserGroup         `xml:"jss_user_groups>user_group"`
}

Exclusions represent any exclusions within the scope.

type EbookSubsetScopeLimitations

type EbookSubsetScopeLimitations struct {
	NetworkSegments []struct {
		ID   int    `xml:"id"`
		UID  string `xml:"uid,omitempty"`
		Name string `xml:"name"`
	} `xml:"network_segments>network_segment"`
	Users      []EbookSubsetScopeUser      `xml:"users>user"`
	UserGroups []EbookSubsetScopeUserGroup `xml:"user_groups>user_group"`
}

EbooksSubsetLimitations represents any limitations within the scope.

type EbookSubsetScopeMobileDevice

type EbookSubsetScopeMobileDevice 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 EbookSubsetScopeMobileDeviceGroup

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

EbooksSubsetMobileDeviceGroup represents a group of mobile devices within the scope.

type EbookSubsetScopeUser

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

User represents a user within the scope.

type EbookSubsetScopeUserGroup

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

UserGroup represents a group of users within the scope.

type EbookSubsetSelfService

type EbookSubsetSelfService 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             SharedResourceSelfServiceIcon    `xml:"self_service_icon"`
	FeatureOnMainPage           bool                             `xml:"feature_on_main_page"`
	SelfServiceCategories       EbookSubsetSelfServiceCategories `xml:"self_service_categories"`
	Notification                bool                             `xml:"notification"`
	NotificationSubject         string                           `xml:"notification_subject"`
	NotificationMessage         string                           `xml:"notification_message"`
}

type EbookSubsetSelfServiceCategories

type EbookSubsetSelfServiceCategories struct {
	Category []struct {
		ID   int    `xml:"id"`
		Name string `xml:"name"`
	} `xml:"category"`
}

SelfServiceCategories represent the categories within SelfService.

type EbooksSubsetScopeClass

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

Class represents a class within the scope.

type EnrollmentCustomizationLDAPGroupAccess

type EnrollmentCustomizationLDAPGroupAccess struct {
	GroupName    string `json:"groupName"`
	LDAPServerID int    `json:"ldapServerId"`
}

LDAPGroupAccess represents a single LDAP group access configuration

type EnrollmentCustomizationSubsetBrandingSettings

type EnrollmentCustomizationSubsetBrandingSettings struct {
	TextColor       string `json:"textColor"`
	ButtonColor     string `json:"buttonColor"`
	ButtonTextColor string `json:"buttonTextColor"`
	BackgroundColor string `json:"backgroundColor"`
	IconUrl         string `json:"iconUrl"`
}

type EnrollmentSubsetCertificate

type EnrollmentSubsetCertificate struct {
	Filename string `json:"filename"`
	Md5Sum   string `json:"md5Sum"`
}

type EnrollmentSubsetCertificateDetails

type EnrollmentSubsetCertificateDetails struct {
	Subject      string `json:"subject"`
	SerialNumber string `json:"serialNumber"`
}

type EnrollmentSubsetCertificateSettings

type EnrollmentSubsetCertificateSettings struct {
	InstallSingleProfile                bool                               `json:"installSingleProfile"`
	SigningMdmProfileEnabled            bool                               `json:"signingMdmProfileEnabled"`
	MdmSigningCertificate               *EnrollmentSubsetCertificate       `json:"mdmSigningCertificate"`
	MdmSigningCertificateDetails        EnrollmentSubsetCertificateDetails `json:"mdmSigningCertificateDetails"`
	RestrictReenrollment                bool                               `json:"restrictReenrollment"`
	FlushLocationInformation            bool                               `json:"flushLocationInformation"`
	FlushLocationHistoryInformation     bool                               `json:"flushLocationHistoryInformation"`
	FlushPolicyHistory                  bool                               `json:"flushPolicyHistory"`
	FlushExtensionAttributes            bool                               `json:"flushExtensionAttributes"`
	FlushSoftwareUpdatePlans            bool                               `json:"flushSoftwareUpdatePlans"`
	FlushMdmCommandsOnReenroll          string                             `json:"flushMdmCommandsOnReenroll"`
	MacOsEnterpriseEnrollmentEnabled    bool                               `json:"macOsEnterpriseEnrollmentEnabled"`
	ManagementUsername                  string                             `json:"managementUsername"`
	ManagementPasswordSet               bool                               `json:"managementPasswordSet"`
	PasswordType                        *string                            `json:"passwordType"`
	RandomPasswordLength                int                                `json:"randomPasswordLength"`
	CreateManagementAccount             bool                               `json:"createManagementAccount"`
	HideManagementAccount               bool                               `json:"hideManagementAccount"`
	AllowSshOnlyManagementAccount       bool                               `json:"allowSshOnlyManagementAccount"`
	EnsureSshRunning                    bool                               `json:"ensureSshRunning"`
	LaunchSelfService                   bool                               `json:"launchSelfService"`
	SignQuickAdd                        bool                               `json:"signQuickAdd"`
	DeveloperCertificateIdentity        *EnrollmentSubsetCertificate       `json:"developerCertificateIdentity"`
	DeveloperCertificateIdentityDetails EnrollmentSubsetCertificateDetails `json:"developerCertificateIdentityDetails"`
	IosEnterpriseEnrollmentEnabled      bool                               `json:"iosEnterpriseEnrollmentEnabled"`
	IosPersonalEnrollmentEnabled        bool                               `json:"iosPersonalEnrollmentEnabled"`
	PersonalDeviceEnrollmentType        string                             `json:"personalDeviceEnrollmentType"`
	AccountDrivenUserEnrollmentEnabled  bool                               `json:"accountDrivenUserEnrollmentEnabled"`
}

type ErrorInstance

type ErrorInstance struct {
	Code        string `json:"code"`
	Field       string `json:"field"`
	Description string `json:"description"`
	ID          string `json:"id"`
}

ErrorInstance represents a single error in the error response

type FeatureEnablementToggleStatus

type FeatureEnablementToggleStatus struct {
	StartTime                string  `json:"startTime"`
	EndTime                  string  `json:"endTime"`
	ElapsedTime              int     `json:"elapsedTime"`
	State                    string  `json:"state"`
	TotalRecords             int64   `json:"totalRecords"`
	ProcessedRecords         int64   `json:"processedRecords"`
	PercentComplete          float64 `json:"percentComplete"`
	FormattedPercentComplete string  `json:"formattedPercentComplete"`
	ExitState                string  `json:"exitState"`
	ExitMessage              string  `json:"exitMessage"`
}

FeatureToggleStatusDetail represents the detailed status of the feature toggle (on/off).

type FileVaultInventory

type FileVaultInventory struct {
	ComputerId                          string                                                `json:"computerId"`
	Name                                string                                                `json:"name"`
	PersonalRecoveryKey                 string                                                `json:"personalRecoveryKey"`
	BootPartitionEncryptionDetails      ComputerInventorySubsetBootPartitionEncryptionDetails `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

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

FileVaultInventoryList represents the paginated FileVault inventory response.

type Font

type Font struct {
	Path     string `json:"path,omitempty" xml:"path,omitempty"`
	Platform string `json:"platform,omitempty" xml:"platform,omitempty"`
}

type FontEntry

type FontEntry struct {
	Font Font `json:"font,omitempty" xml:"font,omitempty"`
}

type ForcedSettings

type ForcedSettings struct {
	Plist         string `json:"plist,omitempty"`
	JsonSchema    string `json:"jsonSchema,omitempty"`
	SchemaSource  string `json:"schemaSource,omitempty"`
	SchemaDomain  string `json:"schemaDomain,omitempty"`
	SchemaVersion string `json:"schemaVersion,omitempty"`
	SchemaVariant string `json:"schemaVariant,omitempty"`
}

ForcedSettings represents forced settings in a payload

type GsxKeystore

type GsxKeystore struct {
	Name            string `json:"name"`
	ExpirationEpoch int64  `json:"expirationEpoch"`
	ErrorMessage    string `json:"errorMessage"`
}

type InstallSettings

type InstallSettings struct {
	InstallAutomatically bool   `json:"installAutomatically"`
	InstallLocation      string `json:"installLocation"`
}

type JCDS2Properties

type JCDS2Properties struct {
	JCDS2Enabled              bool `json:"jcds2Enabled"`
	FileStreamEndpointEnabled bool `json:"fileStreamEndpointEnabled"`
	MaxChunkSize              int  `json:"maxChunkSize"`
}

type JamfAppCatalogAppInstallerSubsetMediaSource

type JamfAppCatalogAppInstallerSubsetMediaSource struct {
	HashType string `json:"hashType,omitempty"`
	Hash     string `json:"hash,omitempty"`
	Url      string `json:"url,omitempty"`
}

MediaSource struct for the media sources within the JSON response

type JamfAppCatalogDeploymentSubsetCategory

type JamfAppCatalogDeploymentSubsetCategory struct {
	ID       string `json:"id,omitempty"`
	Featured *bool  `json:"featured,omitempty"`
}

Category struct represents the categories within SelfServiceSettings

type JamfAppCatalogDeploymentSubsetNotificationSettings

type JamfAppCatalogDeploymentSubsetNotificationSettings struct {
	NotificationMessage  string `json:"notificationMessage,omitempty"`
	NotificationInterval int    `json:"notificationInterval,omitempty"`
	DeadlineMessage      string `json:"deadlineMessage,omitempty"`
	Deadline             int    `json:"deadline,omitempty"`
	QuitDelay            int    `json:"quitDelay,omitempty"`
	CompleteMessage      string `json:"completeMessage,omitempty"`
	Relaunch             *bool  `json:"relaunch"`
	Suppress             *bool  `json:"suppress,omitempty"`
}

JamfAppCatalogDeploymentSubsetNotificationSettings struct represents the notification settings within ResourceJamfAppCatalogAppInstaller

type JamfAppCatalogDeploymentSubsetSelfServiceSettings

type JamfAppCatalogDeploymentSubsetSelfServiceSettings struct {
	IncludeInFeaturedCategory   *bool                                    `json:"includeInFeaturedCategory"`
	IncludeInComplianceCategory *bool                                    `json:"includeInComplianceCategory"`
	ForceViewDescription        *bool                                    `json:"forceViewDescription"`
	Description                 string                                   `json:"description,omitempty"`
	Categories                  []JamfAppCatalogDeploymentSubsetCategory `json:"categories,omitempty"`
}

JamfAppCatalogDeploymentSubsetSelfServiceSettings struct represents the self-service settings within ResourceJamfAppCatalogAppInstaller

type JamfConnectError

type JamfConnectError struct {
	Code        string `json:"code"`
	Field       string `json:"field"`
	Description string `json:"description"`
	ID          string `json:"id"`
}

type LDAPServerContainerMapping

type LDAPServerContainerMapping struct {
	UserMappings                LDAPServerSubsetMappingUsers                `xml:"user_mappings"`
	UserGroupMappings           LDAPServerSubsetMappingUserGroups           `xml:"user_group_mappings"`
	UserGroupMembershipMappings LDAPServerSubsetMappingUserGroupMemberships `xml:"user_group_membership_mappings"`
}

type LDAPServerSubsetConnection

type LDAPServerSubsetConnection 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            LDAPServerSubsetConnectionAccount `xml:"account"`
	OpenCloseTimeout   int                               `xml:"open_close_timeout"`
	SearchTimeout      int                               `xml:"search_timeout"`
	ReferralResponse   string                            `xml:"referral_response"`
	UseWildcards       bool                              `xml:"use_wildcards"`
}

type LDAPServerSubsetConnectionAccount

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

type LDAPServerSubsetMappingUserGroupMemberships

type LDAPServerSubsetMappingUserGroupMemberships 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 LDAPServerSubsetMappingUserGroups

type LDAPServerSubsetMappingUserGroups 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 LDAPServerSubsetMappingUsers

type LDAPServerSubsetMappingUsers 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 LDAPServersListItem

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

type LapsUserPassword

type LapsUserPassword struct {
	Username string `json:"username,omitempty"`
	Password string `json:"password,omitempty"`
}

type LapsUserPasswordResponse

type LapsUserPasswordResponse struct {
	Username string `json:"username"`
}

type LicensedSoftwareListItem

type LicensedSoftwareListItem struct {
}

type LicensedSoftwareSubsetFontDefinitions

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

type LicensedSoftwareSubsetGeneral

type LicensedSoftwareSubsetGeneral 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                               SharedResourceSite `xml:"site"`
}

type LicensedSoftwareSubsetLicense

type LicensedSoftwareSubsetLicense 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       LicensedSoftwareSubsetLicensePurchasing    `xml:"purchasing"`
	Attachments      []LicensedSoftwareSubsetLicenseAttachments `xml:"attachments>attachment"`
}

type LicensedSoftwareSubsetLicenseAttachments

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

type LicensedSoftwareSubsetLicensePurchasing

type LicensedSoftwareSubsetLicensePurchasing 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 LicensedSoftwareSubsetLicenses

type LicensedSoftwareSubsetLicenses struct {
	Size    int                           `xml:"size"`
	License LicensedSoftwareSubsetLicense `xml:"license"`
}

type LicensedSoftwareSubsetPluginDefinitions

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

type LicensedSoftwareSubsetSoftwareDefinitions

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

type LocalAdminPasswordAccount

type LocalAdminPasswordAccount struct {
	ClientManagementID string `json:"clientManagementId"`
	GUID               string `json:"guid"`
	Username           string `json:"username"`
	UserSource         string `json:"userSource"`
}

type LocalAdminPasswordAudit

type LocalAdminPasswordAudit struct {
	ViewedBy string `json:"viewedBy"`
	DateSeen string `json:"dateSeen"`
}

type LocalAdminPasswordFullEvent

type LocalAdminPasswordFullEvent struct {
	Username   string `json:"username"`
	EventType  string `json:"eventType"`
	EventTime  string `json:"eventTime"`
	ViewedBy   string `json:"viewedBy"`
	UserSource string `json:"userSource"`
}

type LocalAdminPasswordHistoryItem

type LocalAdminPasswordHistoryItem struct {
	Password       string                    `json:"password"`
	DateLastSeen   string                    `json:"dateLastSeen"`
	ExpirationTime string                    `json:"expirationTime"`
	Audits         []LocalAdminPasswordAudit `json:"audits"`
}

type LocalAdminPasswordPendingRotation

type LocalAdminPasswordPendingRotation struct {
	LapsUser    LocalAdminPasswordUser `json:"lapsUser"`
	CreatedDate string                 `json:"createdDate"`
}

type LocalAdminPasswordUser

type LocalAdminPasswordUser struct {
	ClientManagementID string `json:"clientManagementId"`
	GUID               string `json:"guid"`
	Username           string `json:"username"`
	UserSource         string `json:"userSource"`
}

type LogFlushingTask

type LogFlushingTask struct {
	ID                  string `json:"id"`
	Qualifier           string `json:"qualifier"`
	RetentionPeriod     int    `json:"retentionPeriod"`
	RetentionPeriodUnit string `json:"retentionPeriodUnit"`
	State               string `json:"state"`
}

Response struct for log flushing tasks

type LogRetentionPolicy

type LogRetentionPolicy struct {
	DisplayName         string `json:"displayName"`
	Qualifier           string `json:"qualifier"`
	RetentionPeriod     int    `json:"retentionPeriod"`
	RetentionPeriodUnit string `json:"retentionPeriodUnit"`
}

type LoginSettings

type LoginSettings struct {
	UserLoginLevel  string `json:"userLoginLevel"`
	AllowRememberMe bool   `json:"allowRememberMe"`
	UseFido2        bool   `json:"useFido2"`
	AuthType        string `json:"authType"`
}

type MacAppScopeExclusions

type MacAppScopeExclusions struct {
	Buildings       []MacAppSubsetScopeBuilding       `xml:"buildings>building"`
	Departments     []MacAppSubsetScopeDepartment     `xml:"departments>department"`
	Users           []MacAppSubsetScopeUser           `xml:"users>user"`
	UserGroups      []MacAppSubsetScopeUserGroup      `xml:"user_groups>user_group"`
	NetworkSegments []MacAppSubsetScopeNetworkSegment `xml:"network_segments>network_segment"`
	Computers       []MacAppSubsetScopeComputer       `xml:"computers>computer"`
	ComputerGroups  []MacAppSubsetScopeComputerGroup  `xml:"computer_groups>computer_group"`
	JSSUsers        []MacAppSubsetScopeUser           `xml:"jss_users>user"`
	JSSUserGroups   []MacAppSubsetScopeUserGroup      `xml:"jss_user_groups>user_group"`
}

type MacAppScopeLimitations

type MacAppScopeLimitations struct {
	Users           []MacAppSubsetScopeUser           `xml:"users>user"`
	UserGroups      []MacAppSubsetScopeUserGroup      `xml:"user_groups>user_group"`
	NetworkSegments []MacAppSubsetScopeNetworkSegment `xml:"network_segments>network_segment"`
}

type MacAppSubsetScopeBuilding

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

type MacAppSubsetScopeComputer

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

type MacAppSubsetScopeComputerGroup

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

type MacAppSubsetScopeDepartment

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

type MacAppSubsetScopeNetworkSegment

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

type MacAppSubsetScopeUser

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

type MacAppSubsetScopeUserGroup

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

type MacAppSubsetSelfService

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

type MacAppSubsetSelfServiceCategories

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

type MacAppSubsetSelfServiceVPP

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

type MacApplicationsListItem

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

type MacApplicationsSubsetGeneral

type MacApplicationsSubsetGeneral 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 *SharedResourceCategory `xml:"category"`
	Site     *SharedResourceSite     `xml:"site"`
}

type MacApplicationsSubsetScope

type MacApplicationsSubsetScope struct {
	AllComputers   bool                             `xml:"all_computers"`
	AllJSSUsers    bool                             `xml:"all_jss_users"`
	Buildings      []MacAppSubsetScopeBuilding      `xml:"buildings>building"`
	Departments    []MacAppSubsetScopeDepartment    `xml:"departments>department"`
	Computers      []MacAppSubsetScopeComputer      `xml:"computers>computer"`
	ComputerGroups []MacAppSubsetScopeComputerGroup `xml:"computer_groups>computer_group"`
	JSSUsers       []MacAppSubsetScopeUser          `xml:"jss_users>user"`
	JSSUserGroups  []MacAppSubsetScopeUserGroup     `xml:"jss_user_groups>user_group"`
	Limitations    MacAppScopeLimitations           `xml:"limitations"`
	Exclusions     MacAppScopeExclusions            `xml:"exclusions"`
}

type MacOSConfigurationProfileListItem

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

type MacOSConfigurationProfileSubsetComputer

type MacOSConfigurationProfileSubsetComputer struct {
	MacOSConfigurationProfileSubsetScopeEntity
	UDID string `xml:"udid,omitempty"`
}

MacOSConfigurationProfileSubsetComputer represents the computer subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetExclusions

type MacOSConfigurationProfileSubsetExclusions struct {
	Computers       []MacOSConfigurationProfileSubsetComputer       `xml:"computers>computer,omitempty"`
	ComputerGroups  []MacOSConfigurationProfileSubsetScopeEntity    `xml:"computer_groups>computer_group,omitempty"`
	Users           []MacOSConfigurationProfileSubsetScopeEntity    `xml:"users>user,omitempty"`
	UserGroups      []MacOSConfigurationProfileSubsetScopeEntity    `xml:"user_groups>user_group,omitempty"`
	Buildings       []MacOSConfigurationProfileSubsetScopeEntity    `xml:"buildings>building,omitempty"`
	Departments     []MacOSConfigurationProfileSubsetScopeEntity    `xml:"departments>department,omitempty"`
	NetworkSegments []MacOSConfigurationProfileSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	JSSUsers        []MacOSConfigurationProfileSubsetScopeEntity    `xml:"jss_users>user,omitempty"`             // Elements break naming pattern, omitting "jss_"
	JSSUserGroups   []MacOSConfigurationProfileSubsetScopeEntity    `xml:"jss_user_groups>user_group,omitempty"` // Elements break naming pattern, omitting "jss_"
	IBeacons        []MacOSConfigurationProfileSubsetScopeEntity    `xml:"ibeacons>ibeacon,omitempty"`
}

MacOSConfigurationProfileSubsetExclusions represents the exclusions subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetGeneral

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

type MacOSConfigurationProfileSubsetLimitations

type MacOSConfigurationProfileSubsetLimitations struct {
	Users           []MacOSConfigurationProfileSubsetScopeEntity    `xml:"users>user,omitempty"`
	UserGroups      []MacOSConfigurationProfileSubsetScopeEntity    `xml:"user_groups>user_group,omitempty"`
	NetworkSegments []MacOSConfigurationProfileSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	IBeacons        []MacOSConfigurationProfileSubsetScopeEntity    `xml:"ibeacons>ibeacon,omitempty"`
}

MacOSConfigurationProfileSubsetLimitations represents the limitations subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetNetworkSegment

type MacOSConfigurationProfileSubsetNetworkSegment struct {
	MacOSConfigurationProfileSubsetScopeEntity
	UID string `xml:"uid,omitempty"`
}

MacOSConfigurationProfileSubsetNetworkSegment represents the network segment subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetScope

type MacOSConfigurationProfileSubsetScope struct {
	AllComputers   bool                                         `xml:"all_computers"`
	AllJSSUsers    bool                                         `xml:"all_jss_users"`
	Computers      []MacOSConfigurationProfileSubsetComputer    `xml:"computers>computer,omitempty"`
	ComputerGroups []MacOSConfigurationProfileSubsetScopeEntity `xml:"computer_groups>computer_group,omitempty"`
	JSSUsers       []MacOSConfigurationProfileSubsetScopeEntity `xml:"jss_users>user,omitempty"`             // Elements break naming pattern, omitting "jss_"
	JSSUserGroups  []MacOSConfigurationProfileSubsetScopeEntity `xml:"jss_user_groups>user_group,omitempty"` // Elements break naming pattern, omitting "jss_"
	Buildings      []MacOSConfigurationProfileSubsetScopeEntity `xml:"buildings>building,omitempty"`
	Departments    []MacOSConfigurationProfileSubsetScopeEntity `xml:"departments>department,omitempty"`
	Limitations    MacOSConfigurationProfileSubsetLimitations   `xml:"limitations,omitempty"`
	Exclusions     MacOSConfigurationProfileSubsetExclusions    `xml:"exclusions,omitempty"`
}

MacOSConfigurationProfileSubsetScope represents the scope subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetScopeEntity

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

MacOSConfigurationProfileSubsetScopeEntity represents the scope entity subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetSelfService

type MacOSConfigurationProfileSubsetSelfService struct {
	SelfServiceDisplayName      string                                               `xml:"self_service_display_name,omitempty"`
	InstallButtonText           string                                               `xml:"install_button_text,omitempty"`
	SelfServiceDescription      string                                               `xml:"self_service_description,omitempty"`
	ForceUsersToViewDescription bool                                                 `xml:"force_users_to_view_description"`
	SelfServiceIcon             SharedResourceSelfServiceIcon                        `xml:"self_service_icon,omitempty"`
	FeatureOnMainPage           bool                                                 `xml:"feature_on_main_page"`
	SelfServiceCategories       []MacOSConfigurationProfileSubsetSelfServiceCategory `xml:"self_service_categories>category,omitempty"`
	Notification                string                                               `xml:"notification,omitempty"`
	NotificationSubject         string                                               `xml:"notification_subject,omitempty"`
	NotificationMessage         string                                               `xml:"notification_message,omitempty"`
}

MacOSConfigurationProfileSubsetSelfService represents the self-service subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetSelfServiceCategory

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

MacOSConfigurationProfileSubsetSelfServiceCategory represents the self-service category subset of a macOS configuration profile.

type ManagedSoftwareUpdatePlanCreateSubsetDevice

type ManagedSoftwareUpdatePlanCreateSubsetDevice struct {
	DeviceID   string `json:"deviceId"`
	ObjectType string `json:"objectType"`
	Href       string `json:"href"`
}

type ManagedSoftwareUpdatePlanCreateSubsetPlan

type ManagedSoftwareUpdatePlanCreateSubsetPlan struct {
	Device ManagedSoftwareUpdatePlanCreateSubsetDevice `json:"device"`
	PlanID string                                      `json:"planId"`
	Href   string                                      `json:"href"`
}

type MemberUser

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

type MobileDeviceApplicationSubsetBuilding

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

type MobileDeviceApplicationSubsetDepartment

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

type MobileDeviceApplicationSubsetExclusion

type MobileDeviceApplicationSubsetExclusion struct {
	MobileDevices      []MobileDeviceApplicationSubsetMobileDevice      `xml:"mobile_devices>mobile_device,omitempty"`
	Buildings          []MobileDeviceApplicationSubsetBuilding          `xml:"buildings>building,omitempty"`
	Departments        []MobileDeviceApplicationSubsetDepartment        `xml:"departments>department,omitempty"`
	MobileDeviceGroups []MobileDeviceApplicationSubsetMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group,omitempty"`
	JSSUsers           []MobileDeviceApplicationSubsetJSSUser           `xml:"jss_users>user,omitempty"`
	JSSUserGroups      []MobileDeviceApplicationSubsetJSSUserGroup      `xml:"jss_user_groups>user_group,omitempty"`
}

type MobileDeviceApplicationSubsetGeneral

type MobileDeviceApplicationSubsetGeneral 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                         *SharedResourceCategory                              `xml:"category"`
	IPA                              MobileDeviceApplicationSubsetGeneralIPA              `xml:"ipa,omitempty"`
	Icon                             MobileDeviceApplicationSubsetIcon                    `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                             *SharedResourceSite                                  `xml:"site"`
	Scope                            MobileDeviceApplicationSubsetScope                   `xml:"scope"`
	SelfService                      MobileDeviceApplicationSubsetGeneralSelfService      `xml:"self_service"`
	VPP                              MobileDeviceApplicationSubsetGeneralVPP              `xml:"vpp,omitempty"`
	AppConfiguration                 MobileDeviceApplicationSubsetGeneralAppConfiguration `xml:"app_configuration,omitempty"`
}

type MobileDeviceApplicationSubsetGeneralAppConfiguration

type MobileDeviceApplicationSubsetGeneralAppConfiguration struct {
	Preferences string `xml:"preferences,omitempty"`
}

type MobileDeviceApplicationSubsetGeneralIPA

type MobileDeviceApplicationSubsetGeneralIPA struct {
	Name string `xml:"name,omitempty"`
	URI  string `xml:"uri,omitempty"`
	Data string `xml:"data,omitempty"`
}

type MobileDeviceApplicationSubsetGeneralSelfService

type MobileDeviceApplicationSubsetGeneralSelfService struct {
	SelfServiceDescription string                              `xml:"self_service_description,omitempty"`
	SelfServiceIcon        MobileDeviceApplicationSubsetIcon   `xml:"self_service_icon,omitempty"`
	FeatureOnMainPage      bool                                `xml:"feature_on_main_page,omitempty"`
	SelfServiceCategories  []SharedResourceSelfServiceCategory `xml:"self_service_categories>category,omitempty"`
	Notification           bool                                `xml:"notification,omitempty"`
	NotificationSubject    string                              `xml:"notification_subject,omitempty"`
	NotificationMessage    string                              `xml:"notification_message,omitempty"`
}

type MobileDeviceApplicationSubsetGeneralVPP

type MobileDeviceApplicationSubsetGeneralVPP struct {
	AssignVPPDeviceBasedLicenses bool `xml:"assign_vpp_device_based_licenses,omitempty"`
	VPPAdminAccountID            int  `xml:"vpp_admin_account_id,omitempty"`
}

type MobileDeviceApplicationSubsetIcon

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

type MobileDeviceApplicationSubsetJSSUser

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

type MobileDeviceApplicationSubsetJSSUserGroup

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

type MobileDeviceApplicationSubsetLimitation

type MobileDeviceApplicationSubsetLimitation struct {
	Users           []MobileDeviceApplicationSubsetUser           `xml:"users>user,omitempty"`
	UserGroups      []MobileDeviceApplicationSubsetUserGroup      `xml:"user_groups>user_group,omitempty"`
	NetworkSegments []MobileDeviceApplicationSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
}

type MobileDeviceApplicationSubsetMobileDevice

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

type MobileDeviceApplicationSubsetMobileDeviceGroup

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

type MobileDeviceApplicationSubsetNetworkSegment

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

type MobileDeviceApplicationSubsetScope

type MobileDeviceApplicationSubsetScope struct {
	AllMobileDevices   bool                                             `xml:"all_mobile_devices,omitempty"`
	AllJSSUsers        bool                                             `xml:"all_jss_users,omitempty"`
	MobileDevices      []MobileDeviceApplicationSubsetMobileDevice      `xml:"mobile_devices>mobile_device,omitempty"`
	Buildings          []MobileDeviceApplicationSubsetBuilding          `xml:"buildings>building,omitempty"`
	Departments        []MobileDeviceApplicationSubsetDepartment        `xml:"departments>department,omitempty"`
	MobileDeviceGroups []MobileDeviceApplicationSubsetMobileDeviceGroup `xml:"mobile_device_groups>mobile_device_group,omitempty"`
	JSSUsers           []MobileDeviceApplicationSubsetJSSUser           `xml:"jss_users>user,omitempty"`
	JSSUserGroups      []MobileDeviceApplicationSubsetJSSUserGroup      `xml:"jss_user_groups>user_group,omitempty"`
	Limitations        MobileDeviceApplicationSubsetLimitation          `xml:"limitations,omitempty"`
	Exclusions         MobileDeviceApplicationSubsetExclusion           `xml:"exclusions,omitempty"`
}

type MobileDeviceApplicationSubsetUser

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

type MobileDeviceApplicationSubsetUserGroup

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

type MobileDeviceApplicationsListItem

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

type MobileDeviceConfigurationProfileSubsetExclusion

type MobileDeviceConfigurationProfileSubsetExclusion struct {
	MobileDevices      []MobileDeviceConfigurationProfileSubsetMobileDevice   `xml:"mobile_devices>mobile_device,omitempty"`
	MobileDeviceGroups []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"mobile_device_groups>mobile_device_group,omitempty"`
	Users              []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"users>user,omitempty"`
	UserGroups         []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"user_groups>user_group,omitempty"`
	Buildings          []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"buildings>building,omitempty"`
	Departments        []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"departments>department,omitempty"`
	NetworkSegments    []MobileDeviceConfigurationProfileSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	JSSUsers           []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"jss_users>user,omitempty"`
	JSSUserGroups      []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"jss_user_groups>user_group,omitempty"`
	IBeacons           []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"ibeacons>ibeacon,omitempty"`
}

type MobileDeviceConfigurationProfileSubsetGeneral

type MobileDeviceConfigurationProfileSubsetGeneral struct {
	ID                            int                     `xml:"id"`
	Name                          string                  `xml:"name"`
	Description                   string                  `xml:"description,omitempty"`
	Level                         string                  `xml:"level,omitempty"`
	Site                          *SharedResourceSite     `xml:"site"`
	Category                      *SharedResourceCategory `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"`
}

type MobileDeviceConfigurationProfileSubsetLimitation

type MobileDeviceConfigurationProfileSubsetLimitation struct {
	NetworkSegments []MobileDeviceConfigurationProfileSubsetNetworkSegment `xml:"network_segments>network_segment,omitempty"`
	Users           []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"users>user,omitempty"`
	UserGroups      []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"user_groups>user_group,omitempty"`
	Ibeacons        []MobileDeviceConfigurationProfileSubsetScopeEntity    `xml:"ibeacons>ibeacon,omitempty"`
}

type MobileDeviceConfigurationProfileSubsetMobileDevice

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

type MobileDeviceConfigurationProfileSubsetNetworkSegment

type MobileDeviceConfigurationProfileSubsetNetworkSegment struct {
	MobileDeviceConfigurationProfileSubsetScopeEntity
	UID string `xml:"uid,omitempty"`
}

Specific struct for NetworkSegment due to its unique attribute 'UID'

type MobileDeviceConfigurationProfileSubsetScope

type MobileDeviceConfigurationProfileSubsetScope struct {
	AllMobileDevices   bool                                                 `xml:"all_mobile_devices,omitempty"`
	AllJSSUsers        bool                                                 `xml:"all_jss_users,omitempty"`
	MobileDevices      []MobileDeviceConfigurationProfileSubsetMobileDevice `xml:"mobile_devices>mobile_device,omitempty"`
	MobileDeviceGroups []MobileDeviceConfigurationProfileSubsetScopeEntity  `xml:"mobile_device_groups>mobile_device_group,omitempty"`
	JSSUsers           []MobileDeviceConfigurationProfileSubsetScopeEntity  `xml:"jss_users>user,omitempty"`
	JSSUserGroups      []MobileDeviceConfigurationProfileSubsetScopeEntity  `xml:"jss_user_groups>user_group,omitempty"`
	Buildings          []MobileDeviceConfigurationProfileSubsetScopeEntity  `xml:"buildings>building,omitempty"`
	Departments        []MobileDeviceConfigurationProfileSubsetScopeEntity  `xml:"departments>department,omitempty"`
	Limitations        MobileDeviceConfigurationProfileSubsetLimitation     `xml:"limitations,omitempty"`
	Exclusions         MobileDeviceConfigurationProfileSubsetExclusion      `xml:"exclusions,omitempty"`
}

type MobileDeviceConfigurationProfileSubsetScopeEntity

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

Generic Entity struct for common use

type MobileDeviceConfigurationProfileSubsetSelfService

type MobileDeviceConfigurationProfileSubsetSelfService struct {
	SelfServiceDescription string                                                        `xml:"self_service_description,omitempty"`
	SecurityName           MobileDeviceConfigurationProfileSubsetSelfServiceSecurityName `xml:"security_name,omitempty"`
	SelfServiceIcon        SharedResourceSelfServiceIcon                                 `xml:"self_service_icon,omitempty"`
	FeatureOnMainPage      bool                                                          `xml:"feature_on_main_page,omitempty"`
	SelfServiceCategories  []SharedResourceSelfServiceCategories                         `xml:"self_service_categories>category,omitempty"`
}

type MobileDeviceConfigurationProfileSubsetSelfServiceSecurityName

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

type MobileDeviceConfigurationProfilesListItem

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

type MobileDeviceEnrollmentProfileContainerAttachments

type MobileDeviceEnrollmentProfileContainerAttachments struct {
	Attachment MobileDeviceEnrollmentProfileSubsetAttachments `xml:"attachment"`
}

type MobileDeviceEnrollmentProfileSubsetAttachments

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

type MobileDeviceEnrollmentProfileSubsetGeneral

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

type MobileDeviceEnrollmentProfileSubsetLocation

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

type MobileDeviceEnrollmentProfileSubsetPurchasing

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

type MobileDeviceEnrollmentProfilesListItem

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

type MobileDeviceExtensionAttributesListItem

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

type MobileDeviceGroupSubsetDeviceItem

type MobileDeviceGroupSubsetDeviceItem 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 MobileDeviceGroupsListItem

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

type MobileDeviceListItem

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

type MobileDevicePrestageSubsetLocationInformation

type MobileDevicePrestageSubsetLocationInformation 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 MobileDevicePrestageSubsetNames

type MobileDevicePrestageSubsetNames struct {
	AssignNamesUsing    string                                `json:"assignNamesUsing"`
	PrestageDeviceNames []MobileDevicePrestageSubsetNamesName `json:"prestageDeviceNames"`
	DeviceNamePrefix    string                                `json:"deviceNamePrefix"`
	DeviceNameSuffix    string                                `json:"deviceNameSuffix"`
	SingleDeviceName    string
}

type MobileDevicePrestageSubsetNamesName

type MobileDevicePrestageSubsetNamesName struct {
	ID         string `json:"id"`
	DeviceName string `json:"deviceName"`
	Used       bool   `json:"used"`
}

type MobileDevicePrestageSubsetPurchasingInformation

type MobileDevicePrestageSubsetPurchasingInformation 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 MobileDevicePrestageSubsetSkipSetupItems

type MobileDevicePrestageSubsetSkipSetupItems struct {
	Location bool `json:"Location"`
	Privacy  bool `json:"Privacy"`
}

type MobileDeviceProvisioningProfileSubsetGeneral

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

type MobileDeviceProvisioningProfilesListItem

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

type MobileDeviceSubsetApplication

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

type MobileDeviceSubsetCertificate

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

type MobileDeviceSubsetConfigurationProfile

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

type MobileDeviceSubsetExtensionAttribute

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

type MobileDeviceSubsetGeneral

type MobileDeviceSubsetGeneral 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 MobileDeviceSubsetGroup

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

type MobileDeviceSubsetLocation

type MobileDeviceSubsetLocation 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 MobileDeviceSubsetNetwork

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

type MobileDeviceSubsetProvisioningProfile

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

type MobileDeviceSubsetPurchasing

type MobileDeviceSubsetPurchasing 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 MobileDeviceSubsetSecurity

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

type MobileExtensionAttributeSubsetInputType

type MobileExtensionAttributeSubsetInputType struct {
	Type         string       `xml:"type,omitempty"`
	PopupChoices PopupChoices `xml:"popup_choices,omitempty"`
}

type OnboardingItem

type OnboardingItem struct {
	SelfServiceEntityType string `json:"selfServiceEntityType"`
	ID                    string `json:"id"`
	EntityId              string `json:"entityId"`
	Priority              int    `json:"priority"`
}

type OnboardingItemResponse

type OnboardingItemResponse struct {
	ID                    string `json:"id"`
	EntityID              string `json:"entityId"`
	EntityName            string `json:"entityName"`
	ScopeDescription      string `json:"scopeDescription"`
	SiteDescription       string `json:"siteDescription"`
	SelfServiceEntityType string `json:"selfServiceEntityType"`
	Priority              int    `json:"priority"`
}

OnboardingItemResponse represents an item in the onboarding configuration response

type PackageManifest

type PackageManifest struct {
	HashType         string `json:"hashType"`
	URL              string `json:"url"`
	Hash             string `json:"hash"`
	DisplayImageURL  string `json:"displayImageUrl"`
	FullSizeImageURL string `json:"fullSizeImageUrl"`
	BundleID         string `json:"bundleId"`
	BundleVersion    string `json:"bundleVersion"`
	Subtitle         string `json:"subtitle"`
	Title            string `json:"title"`
	SizeInBytes      int    `json:"sizeInBytes"`
}

PackageManifest represents the package manifest structure in the deploy package command

type PatchSoftwareTitleConfigurationSubsetExtensionAttribute

type PatchSoftwareTitleConfigurationSubsetExtensionAttribute struct {
	Accepted bool   `json:"accepted,omitempty"`
	EaID     string `json:"eaId,omitempty"`
}

type PatchSoftwareTitleConfigurationSubsetPackage

type PatchSoftwareTitleConfigurationSubsetPackage struct {
	PackageId   string `json:"packageId,omitempty"`
	Version     string `json:"version,omitempty"`
	DisplayName string `json:"displayName,omitempty"`
}

type PatchSoftwareTitleDefinitionSubsetKillApp

type PatchSoftwareTitleDefinitionSubsetKillApp struct {
	AppName string `json:"appName"`
}

type PayloadCloudLdapVerifyKeystore

type PayloadCloudLdapVerifyKeystore struct {
	Password  string `json:"password"`
	FileBytes string `json:"fileBytes"`
	FileName  string `json:"fileName"`
}

type PayloadContentItem

type PayloadContentItem struct {
	PayloadType         string          `json:"payloadType"`
	PayloadVersion      int             `json:"payloadVersion"`
	PayloadIdentifier   string          `json:"payloadIdentifier"`
	PayloadUUID         string          `json:"payloadUUID"`
	PayloadOrganization string          `json:"payloadOrganization,omitempty"`
	PreferenceDomain    string          `json:"preferenceDomain,omitempty"`
	Forced              *ForcedSettings `json:"forced,omitempty"`
	PayloadDisplayName  string          `json:"payloadDisplayName,omitempty"`
}

PayloadContentItem represents an item in the payload content

type Plugin

type Plugin struct {
	Path     string `json:"path,omitempty" xml:"path,omitempty"`
	Platform string `json:"platform,omitempty" xml:"platform,omitempty"`
}

type PluginEntry

type PluginEntry struct {
	Plugin Plugin `json:"plugin,omitempty" xml:"plugin,omitempty"`
}

type PolicyLimitToUsers

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

type PolicySubsetAccountMaintenance

type PolicySubsetAccountMaintenance struct {
	Accounts                *[]PolicySubsetAccountMaintenanceAccount               `xml:"accounts>account"`
	DirectoryBindings       *[]PolicySubsetAccountMaintenanceDirectoryBindings     `xml:"directory_bindings>binding"`
	ManagementAccount       *PolicySubsetAccountMaintenanceManagementAccount       `xml:"management_account"`
	OpenFirmwareEfiPassword *PolicySubsetAccountMaintenanceOpenFirmwareEfiPassword `xml:"open_firmware_efi_password"`
}

PolicySubsetAccountMaintenance represents the account maintenance settings of a policy

type PolicySubsetAccountMaintenanceAccount

type PolicySubsetAccountMaintenanceAccount 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 PolicySubsetAccountMaintenanceDirectoryBindings

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

type PolicySubsetAccountMaintenanceManagementAccount

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

type PolicySubsetAccountMaintenanceOpenFirmwareEfiPassword

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

type PolicySubsetBuilding

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

type PolicySubsetComputer

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

type PolicySubsetComputerGroup

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

type PolicySubsetDepartment

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

type PolicySubsetDiskEncryption

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

PolicySubsetDiskEncryption represents the disk encryption settings of a policy

type PolicySubsetDockItem

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

type PolicySubsetFilesProcesses

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

PolicySubsetFilesProcesses represents the files and processes settings of a policy

type PolicySubsetGeneral

type PolicySubsetGeneral struct {
	ID                         int                                     `xml:"id"`
	Name                       string                                  `xml:"name"`
	Enabled                    bool                                    `xml:"enabled"`
	Trigger                    string                                  `xml:"trigger,omitempty"` // NOTE: appears to always be USER_INITIATED
	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"`
	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                   *SharedResourceCategory                 `xml:"category,omitempty"`
	DateTimeLimitations        *PolicySubsetGeneralDateTimeLimitations `xml:"date_time_limitations,omitempty"`
	NetworkLimitations         *PolicySubsetGeneralNetworkLimitations  `xml:"network_limitations,omitempty"`
	OverrideDefaultSettings    *PolicySubsetGeneralOverrideSettings    `xml:"override_default_settings,omitempty"`
	NetworkRequirements        string                                  `xml:"network_requirements,omitempty"`
	Site                       *SharedResourceSite                     `xml:"site,omitempty"`
}

PolicySubsetGeneral represents the general information of a policy

type PolicySubsetGeneralDateTimeLimitations

type PolicySubsetGeneralDateTimeLimitations struct {
	ActivationDate      string   `xml:"activation_date"`
	ActivationDateEpoch int      `xml:"activation_date_epoch"`
	ActivationDateUTC   string   `xml:"activation_date_utc"`
	ExpirationDate      string   `xml:"expiration_date"`
	ExpirationDateEpoch int      `xml:"expiration_date_epoch"`
	ExpirationDateUTC   string   `xml:"expiration_date_utc"`
	NoExecuteOn         []string `xml:"no_execute_on>day,omitempty"`
	NoExecuteStart      string   `xml:"no_execute_start"`
	NoExecuteEnd        string   `xml:"no_execute_end"`
}

type PolicySubsetGeneralNetworkLimitations

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

type PolicySubsetGeneralOverrideSettings

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

type PolicySubsetIBeacon

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

type PolicySubsetJSSUser

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

type PolicySubsetJSSUserGroup

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

type PolicySubsetMaintenance

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

PolicySubsetMaintenance represents the maintenance settings of a policy

type PolicySubsetNetworkSegment

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

type PolicySubsetPackageConfiguration

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

PolicySubsetPackageConfiguration represents the package configuration settings of a policy

type PolicySubsetPackageConfigurationPackage

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

type PolicySubsetPrinter

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

type PolicySubsetPrinters

type PolicySubsetPrinters struct {
	LeaveExistingDefault bool                  `xml:"leave_existing_default"`
	Printer              []PolicySubsetPrinter `xml:"printer"`
}

PolicySubsetPrinters represents the printers settings of a policy

type PolicySubsetReboot

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

PolicySubsetReboot represents the reboot settings of a policy

type PolicySubsetScope

type PolicySubsetScope struct {
	AllComputers   bool                          `xml:"all_computers"`
	AllJSSUsers    bool                          `xml:"all_jss_users"`
	Computers      *[]PolicySubsetComputer       `xml:"computers>computer"`
	ComputerGroups *[]PolicySubsetComputerGroup  `xml:"computer_groups>computer_group"`
	JSSUsers       *[]PolicySubsetJSSUser        `xml:"jss_users>user"`             // May not exist on policy scope?
	JSSUserGroups  *[]PolicySubsetJSSUserGroup   `xml:"jss_user_groups>user_group"` // May not exist on policy scope?
	Buildings      *[]PolicySubsetBuilding       `xml:"buildings>building"`
	Departments    *[]PolicySubsetDepartment     `xml:"departments>department"`
	LimitToUsers   PolicyLimitToUsers            `xml:"limit_to_users,omitempty"`
	Limitations    *PolicySubsetScopeLimitations `xml:"limitations"`
	Exclusions     *PolicySubsetScopeExclusions  `xml:"exclusions"`
}

PolicySubsetScope represents the scope of the policy

type PolicySubsetScopeExclusions

type PolicySubsetScopeExclusions struct {
	Computers       *[]PolicySubsetComputer       `xml:"computers>computer"`
	ComputerGroups  *[]PolicySubsetComputerGroup  `xml:"computer_groups>computer_group"`
	Users           *[]PolicySubsetUser           `xml:"users>user"`
	UserGroups      *[]PolicySubsetUserGroup      `xml:"user_groups>user_group"`
	Buildings       *[]PolicySubsetBuilding       `xml:"buildings>building"`
	Departments     *[]PolicySubsetDepartment     `xml:"departments>department"`
	NetworkSegments *[]PolicySubsetNetworkSegment `xml:"network_segments>network_segment"`
	JSSUsers        *[]PolicySubsetJSSUser        `xml:"jss_users>user"`             // May not exist on policy exclusions?
	JSSUserGroups   *[]PolicySubsetJSSUserGroup   `xml:"jss_user_groups>user_group"` // May not exist on policy exclusions?
	IBeacons        *[]PolicySubsetIBeacon        `xml:"ibeacons>ibeacon"`
}

type PolicySubsetScopeLimitations

type PolicySubsetScopeLimitations struct {
	Users           *[]PolicySubsetUser           `xml:"users>user"`
	UserGroups      *[]PolicySubsetUserGroup      `xml:"user_groups>user_group"`
	NetworkSegments *[]PolicySubsetNetworkSegment `xml:"network_segments>network_segment"`
	IBeacons        *[]PolicySubsetIBeacon        `xml:"ibeacons>ibeacon"`
}

type PolicySubsetScript

type PolicySubsetScript struct {
	ID          string `xml:"id"`
	Name        string `xml:"name,omitempty"`
	Priority    string `xml:"priority"`
	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 PolicySubsetSelfService

type PolicySubsetSelfService struct {
	UseForSelfService           bool                              `xml:"use_for_self_service"`
	SelfServiceDisplayName      string                            `xml:"self_service_display_name"`
	InstallButtonText           string                            `xml:"install_button_text"`
	ReinstallButtonText         string                            `xml:"reinstall_button_text"`
	SelfServiceDescription      string                            `xml:"self_service_description"`
	ForceUsersToViewDescription bool                              `xml:"force_users_to_view_description"`
	SelfServiceIcon             *SharedResourceSelfServiceIcon    `xml:"self_service_icon"`
	FeatureOnMainPage           bool                              `xml:"feature_on_main_page"`
	SelfServiceCategories       []PolicySubsetSelfServiceCategory `xml:"self_service_categories>category"`
	Notification                bool                              `xml:"notification"`
	NotificationType            string                            `xml:"notification_type"`
	NotificationSubject         string                            `xml:"notification_subject"`
	NotificationMessage         string                            `xml:"notification_message"`
}

PolicySubsetSelfService represents the self service settings of a policy

type PolicySubsetSelfServiceCategory

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

type PolicySubsetUser

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

type PolicySubsetUserGroup

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

type PolicySubsetUserInteraction

type PolicySubsetUserInteraction struct {
	MessageStart          string `xml:"message_start"`
	AllowUsersToDefer     bool   `xml:"allow_users_to_defer"`
	AllowDeferralUntilUtc string `xml:"allow_deferral_until_utc"`
	AllowDeferralMinutes  int    `xml:"allow_deferral_minutes"`
	MessageFinish         string `xml:"message_finish"`
}

PolicySubsetUserInteraction represents the user interaction settings of a policy

type PopupChoices

type PopupChoices struct {
	Choice []string `xml:"choice"`
}

type PrestagePaneSummary

type PrestagePaneSummary struct {
	ID          int    `json:"id"`
	DisplayName string `json:"displayName"`
	Rank        int    `json:"rank"`
	Type        string `json:"type"`
}

PrestagePaneSummary represents the summary information for a prestage pane

type PrintersListItem

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

type ProgressReader

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

ProgressReader wraps an io.Reader to report progress on read operations

func (*ProgressReader) Read

func (r *ProgressReader) Read(p []byte) (int, error)

Read implements the io.Reader interface.

type QueuedCommand

type QueuedCommand struct {
	Device      int    `json:"device"`
	CommandUUID string `json:"commandUuid"`
}

QueuedCommand represents the details of a queued command in the response

type RequestDeleteMultipleLanguages

type RequestDeleteMultipleLanguages struct {
	IDs []string `json:"ids"`
}

RequestDeleteMultipleLanguages represents the request body for deleting multiple languages

type RequestEraseDeviceComputer

type RequestEraseDeviceComputer struct {
	Pin *string `json:"pin,omitempty"`
}

RequestEraseDeviceComputer represents the request structure for erasing a device.

type ResourcManagedSoftwareUpdatePlanConfig

type ResourcManagedSoftwareUpdatePlanConfig struct {
	UpdateAction              string `json:"updateAction"`
	VersionType               string `json:"versionType"`
	SpecificVersion           string `json:"specificVersion,omitempty"`
	BuildVersion              string `json:"buildVersion,omitempty"`
	MaxDeferrals              int    `json:"maxDeferrals,omitempty"`
	ForceInstallLocalDateTime string `json:"forceInstallLocalDateTime,omitempty"`
}

ResourcManagedSoftwareUpdatePlanConfig defines the configuration for a managed software update plan.

type ResourcManagedSoftwareUpdatePlanObject

type ResourcManagedSoftwareUpdatePlanObject struct {
	ObjectType string `json:"objectType"`
	DeviceId   string `json:"deviceId,omitempty"`
	GroupId    string `json:"groupId,omitempty"`
}

ResourcManagedSoftwareUpdatePlanDevice defines the structure for device objects in the managed software update plan.

type ResourceADUETokenSettings

type ResourceADUETokenSettings struct {
	Enabled                   bool `json:"enabled"`
	ExpirationIntervalDays    int  `json:"expirationIntervalDays,omitempty"`
	ExpirationIntervalSeconds int  `json:"expirationIntervalSeconds,omitempty"`
}

type ResourceAPIRole

type ResourceAPIRole 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 ResourceAccount

type ResourceAccount struct {
	ID                  int                        `json:"id,omitempty" xml:"id,omitempty"`
	Name                string                     `json:"name,omitempty" xml:"name,omitempty"`
	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          SharedResourceLdapServer   `json:"ldap_server,omitempty" xml:"ldap_server,omitempty"`
	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,omitempty" xml:"password,omitempty"`
	PrivilegeSet        string                     `json:"privilege_set,omitempty" xml:"privilege_set,omitempty"`
	Site                *SharedResourceSite        `json:"site,omitempty" xml:"site,omitempty"`
	Privileges          AccountSubsetPrivileges    `json:"privileges,omitempty" xml:"privileges,omitempty"`
	Groups              []AccountsListSubsetGroups `json:"groups,omitempty" xml:"groups>group"`
}

type ResourceAccountDrivenUserEnrollmentAccessGroup

type ResourceAccountDrivenUserEnrollmentAccessGroup struct {
	ID                                 string `json:"id"`
	GroupID                            string `json:"groupId"`
	LdapServerID                       string `json:"ldapServerId"`
	Name                               string `json:"name"`
	SiteID                             string `json:"siteId"`
	EnterpriseEnrollmentEnabled        bool   `json:"enterpriseEnrollmentEnabled"`
	PersonalEnrollmentEnabled          bool   `json:"personalEnrollmentEnabled"`
	AccountDrivenUserEnrollmentEnabled bool   `json:"accountDrivenUserEnrollmentEnabled"`
	RequireEula                        bool   `json:"requireEula"`
}

type ResourceAccountGroup

type ResourceAccountGroup struct {
	ID           int                      `json:"id,omitempty" xml:"id,omitempty"`
	Name         string                   `json:"name,omitempty" xml:"name,omitempty"`
	AccessLevel  string                   `json:"access_level,omitempty" xml:"access_level,omitempty"`
	PrivilegeSet string                   `json:"privilege_set,omitempty" xml:"privilege_set,omitempty"`
	Site         *SharedResourceSite      `json:"site,omitempty" xml:"site,omitempty"`
	Privileges   AccountSubsetPrivileges  `json:"privileges,omitempty" xml:"privileges,omitempty"`
	Members      []MemberUser             `json:"members>user,omitempty" xml:"members>user,omitempty"`
	LDAPServer   SharedResourceLdapServer `json:"ldap_server,omitempty" xml:"ldap_server,omitempty"`
}

type ResourceAccountPreferences

type ResourceAccountPreferences struct {
	Language                             string `json:"language"`
	DateFormat                           string `json:"dateFormat"`
	Timezone                             string `json:"timezone"`
	DisableRelativeDates                 bool   `json:"disableRelativeDates"`
	DisablePageLeaveCheck                bool   `json:"disablePageLeaveCheck"`
	DisableShortcutsTooltips             bool   `json:"disableShortcutsTooltips"`
	DisableTablePagination               bool   `json:"disableTablePagination"`
	ConfigProfilesSortingMethod          string `json:"configProfilesSortingMethod"`
	ResultsPerPage                       int    `json:"resultsPerPage"`
	UserInterfaceDisplayTheme            string `json:"userInterfaceDisplayTheme"`
	ComputerSearchMethod                 string `json:"computerSearchMethod"`
	ComputerApplicationSearchMethod      string `json:"computerApplicationSearchMethod"`
	ComputerApplicationUsageSearchMethod string `json:"computerApplicationUsageSearchMethod"`
	ComputerFontSearchMethod             string `json:"computerFontSearchMethod"`
	ComputerPluginSearchMethod           string `json:"computerPluginSearchMethod"`
	ComputerLocalUserAccountSearchMethod string `json:"computerLocalUserAccountSearchMethod"`
	ComputerSoftwareUpdateSearchMethod   string `json:"computerSoftwareUpdateSearchMethod"`
	ComputerPackageReceiptSearchMethod   string `json:"computerPackageReceiptSearchMethod"`
	ComputerPrinterSearchMethod          string `json:"computerPrinterSearchMethod"`
	ComputerPeripheralSearchMethod       string `json:"computerPeripheralSearchMethod"`
	ComputerServiceSearchMethod          string `json:"computerServiceSearchMethod"`
	MobileDeviceSearchMethod             string `json:"mobileDeviceSearchMethod"`
	MobileDeviceAppSearchMethod          string `json:"mobileDeviceAppSearchMethod"`
	UserSearchMethod                     string `json:"userSearchMethod"`
	UserAllContentSearchMethod           string `json:"userAllContentSearchMethod"`
	UserMobileDeviceAppSearchMethod      string `json:"userMobileDeviceAppSearchMethod"`
	UserMacAppStoreAppSearchMethod       string `json:"userMacAppStoreAppSearchMethod"`
	UserEbookSearchMethod                string `json:"userEbookSearchMethod"`
}

type ResourceActivationCode

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

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

type ResourceAdvancedComputerSearch

type ResourceAdvancedComputerSearch 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      SharedContainerCriteria                    `xml:"criteria,omitempty"`
	DisplayFields []DisplayField                             `xml:"display_fields>display_field,omitempty"`
	Computers     []AdvancedComputerSearchContainerComputers `xml:"computer,omitempty"`
	Site          *SharedResourceSite                        `xml:"site,omitempty"`
}

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

type ResourceAdvancedMobileDeviceSearch

type ResourceAdvancedMobileDeviceSearch struct {
	ID            string                           `json:"id,omitempty"`
	Name          string                           `json:"name"`
	Criteria      []SharedSubsetCriteriaJamfProAPI `json:"criteria"`
	DisplayFields []string                         `json:"displayFields"`
	SiteId        *string                          `json:"siteId"`
}

ResourceAdvancedMobileSearch represents a single Advanced Mobile Device Search

type ResourceAdvancedUserSearch

type ResourceAdvancedUserSearch struct {
	ID            int                                `xml:"id"`
	Name          string                             `xml:"name,omitempty"`
	Criteria      SharedContainerCriteria            `xml:"criteria,omitempty"`
	Users         []AdvancedUserSearchContainerUsers `xml:"users,omitempty"`
	DisplayFields []DisplayField                     `xml:"display_fields>display_field,omitempty"`
	Site          *SharedResourceSite                `xml:"site,omitempty"`
}

Structs for Advanced User Search details by ID

type ResourceAllowedFileExtension

type ResourceAllowedFileExtension struct {
	ID        int    `xml:"id"`
	Extension string `xml:"extension"`
}

type ResourceApiIntegration

type ResourceApiIntegration 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 ResourceApiRolePrivilegesList

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

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

type ResourceAvailableUpdates

type ResourceAvailableUpdates struct {
	MacOS []string `json:"macOS"`
	IOS   []string `json:"iOS"`
}

type ResourceBYOProfile

type ResourceBYOProfile struct {
	General BYOProfileSubsetGeneral `xml:"general"`
}

BYOProfile represents the details of a BYO profile.

type ResourceBookmark

type ResourceBookmark struct {
	ID               string `json:"id"`
	SiteID           string `json:"siteId"`
	Priority         int    `json:"priority"`
	DisplayInBrowser *bool  `json:"displayInBrowser"`
	Name             string `json:"name"`
	Description      string `json:"description,omitempty"`
	ScopeDescription string `json:"scopeDescription,omitempty"`
	URL              string `json:"url"`
	IconID           string `json:"iconId"`
}

ResourceBookmark represents the structure of each bookmark item in the response

type ResourceBuilding

type ResourceBuilding 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 ResourceBuildingResourceHistory

type ResourceBuildingResourceHistory 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 ResourceCacheSettings

type ResourceCacheSettings 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         []CacheSettingsSubsetMemcachedEndpoints `json:"memcachedEndpoints"`
}

ResponseCacheSettings represents the JSON response for cache settings.

type ResourceCategory

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

type ResourceCertificateDetails

type ResourceCertificateDetails struct {
	Subject      string `json:"subject"`
	SerialNumber string `json:"serialNumber"`
}

type ResourceClass

type ResourceClass struct {
	ID                  int                              `xml:"id,omitempty"`
	Source              string                           `xml:"source,omitempty"`
	Name                string                           `xml:"name,omitempty"`
	Description         string                           `xml:"description,omitempty"`
	Site                SharedResourceSite               `xml:"site"`
	MobileDeviceGroup   ClassSubsetMobileDeviceGroup     `xml:"mobile_device_group,omitempty"`
	Students            []ClassSubsetStudent             `xml:"students>student"`
	Teachers            []ClassSubsetTeacher             `xml:"teachers>teacher,omitempty"`
	TeacherIDs          []ClassSubsetTeacherIDs          `xml:"teacher_ids>id,omitempty"`
	StudentGroupIDs     []ClassSubsetStudentGroupIDs     `xml:"student_group_ids>id"`
	TeacherGroupIDs     []ClassSubsetTeacherGroupIDs     `xml:"teacher_group_ids>id"`
	MobileDevices       []ClassSubsetMobileDevices       `xml:"mobile_devices>mobile_device"`
	MobileDeviceGroupID []ClassSubsetMobileDeviceGroupID `xml:"mobile_device_group_id>id,omitempty"`
	MeetingTimes        ClassContainerMeetingTimes       `xml:"meeting_times,omitempty"`
	AppleTVs            []ClassSubsetAppleTVs            `xml:"apple_tvs>apple_tv,omitempty"`
}

type ResourceClientCheckinSettings

type ResourceClientCheckinSettings struct {
	CheckInFrequency                 int  `json:"checkInFrequency"`
	CreateHooks                      bool `json:"createHooks"`
	HookLog                          bool `json:"hookLog"`
	HookPolicies                     bool `json:"hookPolicies"`
	CreateStartupScript              bool `json:"createStartupScript"`
	StartupLog                       bool `json:"startupLog"`
	StartupPolicies                  bool `json:"startupPolicies"`
	StartupSsh                       bool `json:"startupSsh"`
	EnableLocalConfigurationProfiles bool `json:"enableLocalConfigurationProfiles"`
}

type ResourceClientCredentials

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

Integration represents the details of Api client credentials

type ResourceCloudDistributionPointUploadCapability

type ResourceCloudDistributionPointUploadCapability struct {
	ID   bool `json:"principalDistributionTechnology"`
	Name bool `json:"directUploadCapable"`
}

type ResourceCloudIdentityProvider

type ResourceCloudIdentityProvider struct {
	ID           string `json:"id"`
	DisplayName  string `json:"displayName"`
	Enabled      bool   `json:"enabled"`
	ProviderName string `json:"providerName"`
}

ResourceCloudIdentityProvider struct for cloud identity provider

type ResourceCloudIdentityProviderDetails

type ResourceCloudIdentityProviderDetails struct {
	ID           string `json:"id"`
	DisplayName  string `json:"displayName"`
	ProviderName string `json:"providerName"`
}

ResourceCloudIdentityProviderDetails represents a single cloud identity provider configuration

type ResourceCloudIdp

type ResourceCloudIdp struct {
	CloudIdPCommon CloudIdpListItem       `json:"cloudIdPCommon"`
	Server         ResourceCloudIdpServer `json:"server"`
}

type ResourceCloudIdpServer

type ResourceCloudIdpServer struct {
	ID                                       string                                     `json:"id"`
	TenantId                                 string                                     `json:"tenantId"`
	Enabled                                  bool                                       `json:"enabled"`
	Migrated                                 bool                                       `json:"migrated"`
	Mappings                                 CloudIdpServerSubsetCloudIdpServerMappings `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 ResourceCloudLdap

type ResourceCloudLdap struct {
	CloudIdPCommon *CloudIdPCommon    `json:"cloudIdPCommon"`
	Server         *CloudLdapServer   `json:"server"`
	Mappings       *CloudLdapMappings `json:"mappings,omitempty"`
}

type ResourceComputerExtensionAttribute

type ResourceComputerExtensionAttribute struct {
	ID                            string   `json:"id"`
	Name                          string   `json:"name"`
	Description                   string   `json:"description,omitempty"`
	DataType                      string   `json:"dataType"`
	Enabled                       *bool    `json:"enabled"`
	InventoryDisplayType          string   `json:"inventoryDisplayType"`
	InputType                     string   `json:"inputType"`
	ScriptContents                string   `json:"scriptContents,omitempty"`
	PopupMenuChoices              []string `json:"popupMenuChoices,omitempty"`
	LDAPAttributeMapping          string   `json:"ldapAttributeMapping,omitempty"`
	LDAPExtensionAttributeAllowed *bool    `json:"ldapExtensionAttributeAllowed,omitempty"`
}

ResourceComputerExtensionAttribute represents a computer extension attribute

type ResourceComputerGroup

type ResourceComputerGroup struct {
	ID        int                                   `xml:"id"`
	Name      string                                `xml:"name"`
	IsSmart   bool                                  `xml:"is_smart"`
	Site      *SharedResourceSite                   `xml:"site"`
	Criteria  *ComputerGroupSubsetContainerCriteria `xml:"criteria,omitempty"`
	Computers *[]ComputerGroupSubsetComputer        `xml:"computers>computer,omitempty"`
}

type ResourceComputerHistory

type ResourceComputerHistory struct {
	General           ComputerHistorySubsetGeneralInfo     `json:"general" xml:"general"`
	ComputerUsageLogs []ComputerHistorySubsetUsageLog      `json:"computer_usage_logs,omitempty" xml:"computer_usage_logs,omitempty"`
	Audits            []ComputerHistorySubsetAudit         `json:"audits,omitempty" xml:"audits,omitempty"`
	PolicyLogs        []ComputerHistorySubsetPolicyLog     `json:"policy_logs,omitempty" xml:"policy_logs,omitempty"`
	CasperRemoteLogs  []ComputerHistorySubsetCasperRemote  `json:"casper_remote_logs,omitempty" xml:"casper_remote_logs,omitempty"`
	ScreenSharingLogs []ComputerHistorySubsetScreenSharing `json:"screen_sharing_logs,omitempty" xml:"screen_sharing_logs,omitempty"`
	CasperImagingLogs []ComputerHistorySubsetCasperImaging `json:"casper_imaging_logs,omitempty" xml:"casper_imaging_logs,omitempty"`
	Commands          ComputerHistorySubsetCommands        `json:"commands,omitempty" xml:"commands,omitempty"`
	UserLocation      []ComputerHistorySubsetLocation      `json:"user_location,omitempty" xml:"user_location,omitempty"`
	MacAppStoreApps   ComputerHistorySubsetAppStoreApps    `json:"mac_app_store_applications,omitempty" xml:"mac_app_store_applications,omitempty"`
}

ResourceComputerHistory represents the root structure of the computer history resource.

type ResourceComputerInventory

type ResourceComputerInventory struct {
	ID                    string                                        `json:"id"`
	UDID                  string                                        `json:"udid"`
	General               ComputerInventorySubsetGeneral                `json:"general"`
	DiskEncryption        ComputerInventorySubsetDiskEncryption         `json:"diskEncryption"`
	Purchasing            ComputerInventorySubsetPurchasing             `json:"purchasing"`
	Applications          []ComputerInventorySubsetApplication          `json:"applications"`
	Storage               ComputerInventorySubsetStorage                `json:"storage"`
	UserAndLocation       ComputerInventorySubsetUserAndLocation        `json:"userAndLocation"`
	ConfigurationProfiles []ComputerInventorySubsetConfigurationProfile `json:"configurationProfiles"`
	Printers              []ComputerInventorySubsetPrinter              `json:"printers"`
	Services              []ComputerInventorySubsetService              `json:"services"`
	Hardware              ComputerInventorySubsetHardware               `json:"hardware"`
	LocalUserAccounts     []ComputerInventorySubsetLocalUserAccount     `json:"localUserAccounts"`
	Certificates          []ComputerInventorySubsetCertificate          `json:"certificates"`
	Attachments           []ComputerInventorySubsetAttachment           `json:"attachments"`
	Plugins               []ComputerInventorySubsetPlugin               `json:"plugins"`
	PackageReceipts       ComputerInventorySubsetPackageReceipts        `json:"packageReceipts"`
	Fonts                 []ComputerInventorySubsetFont                 `json:"fonts"`
	Security              ComputerInventorySubsetSecurity               `json:"security"`
	OperatingSystem       ComputerInventorySubsetOperatingSystem        `json:"operatingSystem"`
	LicensedSoftware      []ComputerInventorySubsetLicensedSoftware     `json:"licensedSoftware"`
	Ibeacons              []ComputerInventorySubsetIBeacon              `json:"ibeacons"`
	SoftwareUpdates       []ComputerInventorySubsetSoftwareUpdate       `json:"softwareUpdates"`
	ExtensionAttributes   []ComputerInventorySubsetExtensionAttribute   `json:"extensionAttributes"`
	ContentCaching        ComputerInventorySubsetContentCaching         `json:"contentCaching"`
	GroupMemberships      []ComputerInventorySubsetGroupMembership      `json:"groupMemberships"`
}

ResponseComputerInventory represents an individual computer from the inventory.

type ResourceComputerInventoryCollection

type ResourceComputerInventoryCollection struct {
	LocalUserAccounts             bool               `json:"local_user_accounts" xml:"local_user_accounts"`
	HomeDirectorySizes            bool               `json:"home_directory_sizes" xml:"home_directory_sizes"`
	HiddenAccounts                bool               `json:"hidden_accounts" xml:"hidden_accounts"`
	Printers                      bool               `json:"printers" xml:"printers"`
	ActiveServices                bool               `json:"active_services" xml:"active_services"`
	MobileDeviceAppPurchasingInfo bool               `json:"mobile_device_app_purchasing_info" xml:"mobile_device_app_purchasing_info"`
	ComputerLocationInformation   bool               `json:"computer_location_information" xml:"computer_location_information"`
	PackageReceipts               bool               `json:"package_receipts" xml:"package_receipts"`
	AvailableSoftwareUpdates      bool               `json:"available_software_updates" xml:"available_software_updates"`
	InclueApplications            bool               `json:"inclue_applications" xml:"inclue_applications"`
	InclueFonts                   bool               `json:"inclue_fonts" xml:"inclue_fonts"`
	IncluePlugins                 bool               `json:"inclue_plugins" xml:"inclue_plugins"`
	Applications                  []ApplicationEntry `json:"applications,omitempty" xml:"applications,omitempty"`
	Fonts                         []FontEntry        `json:"fonts,omitempty" xml:"fonts,omitempty"`
	Plugins                       []PluginEntry      `json:"plugins,omitempty" xml:"plugins,omitempty"`
}

type ResourceComputerInventoryCollectionSettings

type ResourceComputerInventoryCollectionSettings struct {
	ComputerInventoryCollectionPreferences ComputerInventoryCollectionSettingsSubsetPreferences `json:"computerInventoryCollectionPreferences"`
	ApplicationPaths                       []ComputerInventoryCollectionSettingsSubsetPathItem  `json:"applicationPaths"`
	FontPaths                              []ComputerInventoryCollectionSettingsSubsetPathItem  `json:"fontPaths"`
	PluginPaths                            []ComputerInventoryCollectionSettingsSubsetPathItem  `json:"pluginPaths"`
}

type ResourceComputerInventoryCollectionSettingsCustomPath

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

ComputerInventoryCollectionSettingsCustomPath defines the request body for creating a custom path.

type ResourceComputerInvitation

type ResourceComputerInvitation 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              ComputerInvitationSubsetEnrollIntoState `xml:"enroll_into_site,omitempty"`
	KeepExistingSiteMembership  bool                                    `xml:"keep_existing_site_membership,omitempty"`
	Site                        SharedResourceSite                      `xml:"site,omitempty"`
}

type ResourceComputerPrestage

type ResourceComputerPrestage struct {
	ID                                             string                                      `json:"id"`
	VersionLock                                    int                                         `json:"versionLock"`
	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                                 ComputerPrestageSubsetSkipSetupItems        `json:"skipSetupItems,omitempty"`
	LocationInformation                            ComputerPrestageSubsetLocationInformation   `json:"locationInformation"`
	PurchasingInformation                          ComputerPrestageSubsetPurchasingInformation `json:"purchasingInformation"`
	AnchorCertificates                             []string                                    `json:"anchorCertificates,omitempty"`
	EnrollmentCustomizationId                      string                                      `json:"enrollmentCustomizationId,omitempty"`
	Language                                       string                                      `json:"language,omitempty"`
	Region                                         string                                      `json:"region,omitempty"`
	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,omitempty"`
	RecoveryLockPassword                           string                                      `json:"recoveryLockPassword,omitempty"`
	RotateRecoveryLockPassword                     *bool                                       `json:"rotateRecoveryLockPassword"`
	PrestageMinimumOsTargetVersionType             string                                      `json:"prestageMinimumOsTargetVersionType,omitempty"`
	MinimumOsSpecificVersion                       string                                      `json:"minimumOsSpecificVersion,omitempty"`
	ProfileUuid                                    string                                      `json:"profileUuid,omitempty"`
	SiteId                                         string                                      `json:"siteId,omitempty"`
	AccountSettings                                ComputerPrestageSubsetAccountSettings       `json:"accountSettings,omitempty"`
	Enabled                                        *bool                                       `json:"enabled,omitempty"`
	SsoForEnrollmentEnabled                        *bool                                       `json:"ssoForEnrollmentEnabled,omitempty"`
	SsoBypassAllowed                               *bool                                       `json:"ssoBypassAllowed,omitempty"`
	SsoEnabled                                     *bool                                       `json:"ssoEnabled,omitempty"`
	SsoForMacOsSelfServiceEnabled                  *bool                                       `json:"ssoForMacOsSelfServiceEnabled,omitempty"`
	TokenExpirationDisabled                        *bool                                       `json:"tokenExpirationDisabled,omitempty"`
	UserAttributeEnabled                           *bool                                       `json:"userAttributeEnabled,omitempty"`
	UserAttributeName                              string                                      `json:"userAttributeName,omitempty"`
	UserMapping                                    string                                      `json:"userMapping,omitempty"`
	EnrollmentSsoForAccountDrivenEnrollmentEnabled *bool                                       `json:"enrollmentSsoForAccountDrivenEnrollmentEnabled,omitempty"`
	GroupEnrollmentAccessEnabled                   *bool                                       `json:"groupEnrollmentAccessEnabled,omitempty"`
	GroupAttributeName                             string                                      `json:"groupAttributeName,omitempty"`
	GroupRdnKey                                    string                                      `json:"groupRdnKey,omitempty"`
	GroupEnrollmentAccessName                      string                                      `json:"groupEnrollmentAccessName,omitempty"`
	IdpProviderType                                string                                      `json:"idpProviderType,omitempty"`
	OtherProviderTypeName                          string                                      `json:"otherProviderTypeName,omitempty"`
	MetadataSource                                 string                                      `json:"metadataSource,omitempty"`
	SessionTimeout                                 int                                         `json:"sessionTimeout,omitempty"`
	DeviceType                                     string                                      `json:"deviceType,omitempty"`
	OnboardingItems                                []OnboardingItem                            `json:"onboardingItems,omitempty"`
}

type ResourceConditionalAccessDeviceComplianceStatus

type ResourceConditionalAccessDeviceComplianceStatus struct {
	SharedDeviceFeatureEnabled bool `json:"sharedDeviceFeatureEnabled"`
}

ResourceConditionalAccessDeviceComplianceStatus represents the resource object.

type ResourceConfigProfile

type ResourceConfigProfile struct {
	PayloadUUID    string               `json:"payloadUUID"`
	PayloadContent []PayloadContentItem `json:"payloadContent"`
	Level          string               `json:"level,omitempty"`
}

ResourceConfigProfile represents a macOS configuration profile

type ResourceCustomSettingsBucket

type ResourceCustomSettingsBucket struct {
	BucketName            string                                  `json:"bucketName"`
	DisplayName           string                                  `json:"displayName"`
	CustomSettingsDomains map[string]ResourceCustomSettingsDomain `json:"customSettingsDomains"`
}

ResourceCustomSettingsBucket represents a single bucket of custom settings schemas

type ResourceCustomSettingsDomain

type ResourceCustomSettingsDomain struct {
	SettingsDomain string                           `json:"settingsDomain"`
	Versions       map[string]ResourceDomainVersion `json:"versions"`
}

ResourceCustomSettingsDomain represents a domain of custom settings

type ResourceDSSDeclaration

type ResourceDSSDeclaration struct {
	UUID        string `json:"uuid"`
	PayloadJson string `json:"payloadJson"`
	Type        string `json:"type"`
	Group       string `json:"group"`
}

Resource

type ResourceDatabasePassword

type ResourceDatabasePassword struct {
	Password string `json:"password"`
}

Request struct for database password initialization

type ResourceDeclaration

type ResourceDeclaration struct {
	UUID        string `json:"uuid"`
	PayloadJson string `json:"payloadJson"`
	Type        string `json:"type"`
	Group       string `json:"group"`
}

ResourceDeclaration represents the structure of a single declaration associated with a managed software update plan.

type ResourceDepartment

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

type ResourceDeployPackage

type ResourceDeployPackage struct {
	Manifest         PackageManifest `json:"manifest"`
	InstallAsManaged bool            `json:"installAsManaged"`
	Devices          []int           `json:"devices"`
	GroupID          string          `json:"groupId"`
}

ResourceDeployPackage represents the request structure for deploying a package

type ResourceDeviceCommunicationSettings

type ResourceDeviceCommunicationSettings struct {
	AutoRenewMobileDeviceMdmProfileWhenCaRenewed                  bool `json:"autoRenewMobileDeviceMdmProfileWhenCaRenewed"`
	AutoRenewMobileDeviceMdmProfileWhenDeviceIdentityCertExpiring bool `json:"autoRenewMobileDeviceMdmProfileWhenDeviceIdentityCertExpiring"`
	AutoRenewComputerMdmProfileWhenCaRenewed                      bool `json:"autoRenewComputerMdmProfileWhenCaRenewed"`
	AutoRenewComputerMdmProfileWhenDeviceIdentityCertExpiring     bool `json:"autoRenewComputerMdmProfileWhenDeviceIdentityCertExpiring"`
	MdmProfileMobileDeviceExpirationLimitInDays                   int  `json:"mdmProfileMobileDeviceExpirationLimitInDays"`
	MdmProfileComputerExpirationLimitInDays                       int  `json:"mdmProfileComputerExpirationLimitInDays"`
}

type ResourceDeviceEnrollment

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

ResourceDeviceEnrollment represents a single device enrollment instance.

type ResourceDeviceEnrollmentHistory

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

ResourceDeviceEnrollmentHistory represents a single history entry

type ResourceDeviceEnrollmentSync

type ResourceDeviceEnrollmentSync struct {
	SyncState  string `json:"syncState"`
	InstanceID string `json:"instanceId"`
	Timestamp  string `json:"timestamp"`
}

ResourceDeviceEnrollmentSync represents a single sync state instance

type ResourceDeviceEnrollmentTokenUpload

type ResourceDeviceEnrollmentTokenUpload struct {
	TokenFileName string `json:"tokenFileName,omitempty"` // Optional
	EncodedToken  string `json:"encodedToken"`
}

ResourceDeviceEnrollmentTokenUpload represents the request body for token upload

type ResourceDeviceEnrollmentUpdate

type ResourceDeviceEnrollmentUpdate struct {
	Name                  string `json:"name"`                            // Required
	SupervisionIdentityId string `json:"supervisionIdentityId,omitempty"` // Optional
	SiteId                string `json:"siteId,omitempty"`                // Optional
}

ResourceDeviceEnrollmentUpdate represents the request body for updating a device enrollment

type ResourceDiskEncryptionConfiguration

type ResourceDiskEncryptionConfiguration struct {
	ID                       int                                                  `xml:"id" json:"id"`
	Name                     string                                               `xml:"name"`
	KeyType                  string                                               `xml:"key_type"`
	FileVaultEnabledUsers    string                                               `xml:"file_vault_enabled_users"`
	InstitutionalRecoveryKey *DiskEncryptionConfigurationInstitutionalRecoveryKey `xml:"institutional_recovery_key,omitempty"`
}

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

type ResourceDockItem

type ResourceDockItem 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 ResourceDomainVersion

type ResourceDomainVersion struct {
	Version  string   `json:"version"`
	Variants []string `json:"variants"`
}

ResourceDomainVersion represents a specific version of a domain

type ResourceEbooks

type ResourceEbooks struct {
	General     EbookSubsetGeneral     `xml:"general"`
	Scope       EbookSubsetScope       `xml:"scope"`
	SelfService EbookSubsetSelfService `xml:"self_service"`
}

ResourceEbooks represents the detailed structure of an Ebook response.

type ResourceEligiblilityForOnboardingList

type ResourceEligiblilityForOnboardingList struct {
	ID               string `json:"id"`
	Name             string `json:"name"`
	ScopeDescription string `json:"scopeDescription"`
	SiteDescription  string `json:"siteDescription"`
}

ResourceEligiblilityForOnboardingList represents an individual eligible app item

type ResourceEnrollment

type ResourceEnrollment struct {
	InstallSingleProfile                         bool                           `json:"installSingleProfile"`
	SigningMdmProfileEnabled                     bool                           `json:"signingMdmProfileEnabled"`
	MdmSigningCertificate                        *ResourceEnrollmentCertificate `json:"mdmSigningCertificate"`
	RestrictReenrollment                         bool                           `json:"restrictReenrollment"`
	FlushLocationInformation                     bool                           `json:"flushLocationInformation"`
	FlushLocationHistoryInformation              bool                           `json:"flushLocationHistoryInformation"`
	FlushPolicyHistory                           bool                           `json:"flushPolicyHistory"`
	FlushExtensionAttributes                     bool                           `json:"flushExtensionAttributes"`
	FlushSoftwareUpdatePlans                     bool                           `json:"flushSoftwareUpdatePlans"`
	FlushMdmCommandsOnReenroll                   string                         `json:"flushMdmCommandsOnReenroll"`
	MacOsEnterpriseEnrollmentEnabled             bool                           `json:"macOsEnterpriseEnrollmentEnabled"`
	ManagementUsername                           string                         `json:"managementUsername"`
	CreateManagementAccount                      bool                           `json:"createManagementAccount"`
	HideManagementAccount                        bool                           `json:"hideManagementAccount"`
	AllowSshOnlyManagementAccount                bool                           `json:"allowSshOnlyManagementAccount"`
	EnsureSshRunning                             bool                           `json:"ensureSshRunning"`
	LaunchSelfService                            bool                           `json:"launchSelfService"`
	SignQuickAdd                                 bool                           `json:"signQuickAdd"`
	DeveloperCertificateIdentity                 *ResourceEnrollmentCertificate `json:"developerCertificateIdentity"`
	DeveloperCertificateIdentityDetails          ResourceCertificateDetails     `json:"developerCertificateIdentityDetails"`
	MdmSigningCertificateDetails                 ResourceCertificateDetails     `json:"mdmSigningCertificateDetails"`
	IosEnterpriseEnrollmentEnabled               bool                           `json:"iosEnterpriseEnrollmentEnabled"`
	IosPersonalEnrollmentEnabled                 bool                           `json:"iosPersonalEnrollmentEnabled"`
	PersonalDeviceEnrollmentType                 string                         `json:"personalDeviceEnrollmentType"`
	AccountDrivenUserEnrollmentEnabled           bool                           `json:"accountDrivenUserEnrollmentEnabled"`
	AccountDrivenDeviceIosEnrollmentEnabled      bool                           `json:"accountDrivenDeviceIosEnrollmentEnabled"`
	AccountDrivenDeviceMacosEnrollmentEnabled    bool                           `json:"accountDrivenDeviceMacosEnrollmentEnabled"`
	AccountDrivenUserVisionosEnrollmentEnabled   bool                           `json:"accountDrivenUserVisionosEnrollmentEnabled"`
	AccountDrivenDeviceVisionosEnrollmentEnabled bool                           `json:"accountDrivenDeviceVisionosEnrollmentEnabled"`
}

type ResourceEnrollmentCertificate

type ResourceEnrollmentCertificate struct {
	Filename         string `json:"filename"`
	KeystorePassword string `json:"keystorePassword,omitempty"`
	IdentityKeystore string `json:"identityKeystore,omitempty"`
	Md5Sum           string `json:"md5Sum,omitempty"`
}

type ResourceEnrollmentCustomization

type ResourceEnrollmentCustomization struct {
	ID               string                                        `json:"id"`
	SiteID           string                                        `json:"siteId"`
	DisplayName      string                                        `json:"displayName"`
	Description      string                                        `json:"description"`
	BrandingSettings EnrollmentCustomizationSubsetBrandingSettings `json:"enrollmentCustomizationBrandingSettings"`
}

type ResourceEnrollmentCustomizationLDAPPane

type ResourceEnrollmentCustomizationLDAPPane struct {
	ID                 int                                      `json:"id,omitempty"`
	Type               string                                   `json:"type"`
	DisplayName        string                                   `json:"displayName"`
	Rank               int                                      `json:"rank"`
	Title              string                                   `json:"title"`
	UsernameLabel      string                                   `json:"usernameLabel"`
	PasswordLabel      string                                   `json:"passwordLabel"`
	BackButtonText     string                                   `json:"backButtonText"`
	ContinueButtonText string                                   `json:"continueButtonText"`
	LDAPGroupAccess    []EnrollmentCustomizationLDAPGroupAccess `json:"ldapGroupAccess"`
}

Resource structure for LDAP prestage pane

type ResourceEnrollmentCustomizationSSOPane

type ResourceEnrollmentCustomizationSSOPane struct {
	ID                             int    `json:"id,omitempty"`
	Type                           string `json:"type"`
	DisplayName                    string `json:"displayName"`
	Rank                           int    `json:"rank"`
	IsGroupEnrollmentAccessEnabled bool   `json:"isGroupEnrollmentAccessEnabled"`
	GroupEnrollmentAccessName      string `json:"groupEnrollmentAccessName"`
	IsUseJamfConnect               bool   `json:"isUseJamfConnect"`
	ShortNameAttribute             string `json:"shortNameAttribute"`
	LongNameAttribute              string `json:"longNameAttribute"`
}

Resource structure for SSO prestage pane

type ResourceEnrollmentCustomizationTextPane

type ResourceEnrollmentCustomizationTextPane struct {
	ID                 int    `json:"id,omitempty"`
	Type               string `json:"type"`
	DisplayName        string `json:"displayName"`
	Rank               int    `json:"rank"`
	Title              string `json:"title"`
	Body               string `json:"body"`
	Subtext            string `json:"subtext"`
	BackButtonText     string `json:"backButtonText"`
	ContinueButtonText string `json:"continueButtonText"`
}

Resource structure for text prestage pane

type ResourceEnrollmentHistory

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

ResourceEnrollmentHistory represents an individual enrollment history record

type ResourceEnrollmentLanguage

type ResourceEnrollmentLanguage struct {
	LanguageCode                     string `json:"languageCode"`
	Name                             string `json:"name"`
	Title                            string `json:"title"`
	LoginDescription                 string `json:"loginDescription"`
	Username                         string `json:"username"`
	Password                         string `json:"password"`
	LoginButton                      string `json:"loginButton"`
	DeviceClassDescription           string `json:"deviceClassDescription"`
	DeviceClassPersonal              string `json:"deviceClassPersonal"`
	DeviceClassPersonalDescription   string `json:"deviceClassPersonalDescription"`
	DeviceClassEnterprise            string `json:"deviceClassEnterprise"`
	DeviceClassEnterpriseDescription string `json:"deviceClassEnterpriseDescription"`
	DeviceClassButton                string `json:"deviceClassButton"`
	PersonalEula                     string `json:"personalEula"`
	EnterpriseEula                   string `json:"enterpriseEula"`
	EulaButton                       string `json:"eulaButton"`
	SiteDescription                  string `json:"siteDescription"`
	CertificateText                  string `json:"certificateText"`
	CertificateButton                string `json:"certificateButton"`
	CertificateProfileName           string `json:"certificateProfileName"`
	CertificateProfileDescription    string `json:"certificateProfileDescription"`
	PersonalText                     string `json:"personalText"`
	PersonalButton                   string `json:"personalButton"`
	PersonalProfileName              string `json:"personalProfileName"`
	PersonalProfileDescription       string `json:"personalProfileDescription"`
	UserEnrollmentText               string `json:"userEnrollmentText"`
	UserEnrollmentButton             string `json:"userEnrollmentButton"`
	UserEnrollmentProfileName        string `json:"userEnrollmentProfileName"`
	UserEnrollmentProfileDescription string `json:"userEnrollmentProfileDescription"`
	EnterpriseText                   string `json:"enterpriseText"`
	EnterpriseButton                 string `json:"enterpriseButton"`
	EnterpriseProfileName            string `json:"enterpriseProfileName"`
	EnterpriseProfileDescription     string `json:"enterpriseProfileDescription"`
	EnterprisePending                string `json:"enterprisePending"`
	QuickAddText                     string `json:"quickAddText"`
	QuickAddButton                   string `json:"quickAddButton"`
	QuickAddName                     string `json:"quickAddName"`
	QuickAddPending                  string `json:"quickAddPending"`
	CompleteMessage                  string `json:"completeMessage"`
	FailedMessage                    string `json:"failedMessage"`
	TryAgainButton                   string `json:"tryAgainButton"`
	CheckNowButton                   string `json:"checkNowButton"`
	CheckEnrollmentMessage           string `json:"checkEnrollmentMessage"`
	LogoutButton                     string `json:"logoutButton"`
}

Resource struct for enrollment language messaging

type ResourceFileShareDistributionPoint

type ResourceFileShareDistributionPoint struct {
	ID                       int    `xml:"id"`
	Name                     string `xml:"name"`
	IPAddress                string `xml:"ipAddress"`
	IP_Address               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 ResourceGSXConnection

type ResourceGSXConnection struct {
	Enabled          bool        `json:"enabled"`
	Username         string      `json:"username"`
	ServiceAccountNo string      `json:"serviceAccountNo"`
	ShipToNo         string      `json:"shipToNo"`
	GsxKeystore      GsxKeystore `json:"gsxKeystore"`
}

Resource

type ResourceIBeacons

type ResourceIBeacons 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 ResourceIDType

type ResourceIDType string

ResourceIDType represents the type of identifier being used (id or name)

const (
	ResourceIDTypeID   ResourceIDType = "id"
	ResourceIDTypeName ResourceIDType = "name"
)

type ResourceIconUpload

type ResourceIconUpload struct {
	ID   int    `json:"id"`
	URL  string `json:"url"`
	Name string `json:"name"`
}

Resource

type ResourceJamfAppCatalogAppInstaller

type ResourceJamfAppCatalogAppInstaller struct {
	ID                       string                                        `json:"id"`
	BundleId                 string                                        `json:"bundleId,omitempty"`
	TitleName                string                                        `json:"titleName,omitempty"`
	Publisher                string                                        `json:"publisher,omitempty"`
	IconUrl                  string                                        `json:"iconUrl,omitempty"`
	Version                  string                                        `json:"version,omitempty"`
	SizeInBytes              int                                           `json:"sizeInBytes,omitempty"`
	MinimumOsVersion         string                                        `json:"minimumOsVersion,omitempty"`
	Language                 string                                        `json:"language,omitempty"`
	AvailabilityDate         string                                        `json:"availabilityDate,omitempty"`
	PackageSigningIdentity   string                                        `json:"packageSigningIdentity,omitempty"`
	InstallerPackageHashType string                                        `json:"installerPackageHashType,omitempty"`
	InstallerPackageHash     string                                        `json:"installerPackageHash,omitempty"`
	ShortVersion             string                                        `json:"shortVersion,omitempty"`
	Architecture             string                                        `json:"architecture,omitempty"`
	OriginalMediaSources     []JamfAppCatalogAppInstallerSubsetMediaSource `json:"originalMediaSources,omitempty"`
	LaunchDaemonIncluded     *bool                                         `json:"launchDaemonIncluded"`
	NotificationAvailable    *bool                                         `json:"notificationAvailable"`
	SuppressAutoUpdate       *bool                                         `json:"suppressAutoUpdate"`
}

type ResourceJamfAppCatalogDeployment

type ResourceJamfAppCatalogDeployment struct {
	ID                              string                                             `json:"id"`
	Name                            string                                             `json:"name,omitempty"`
	Enabled                         *bool                                              `json:"enabled"`
	AppTitleId                      string                                             `json:"appTitleId,omitempty"`
	DeploymentType                  string                                             `json:"deploymentType,omitempty"`
	UpdateBehavior                  string                                             `json:"updateBehavior,omitempty"`
	CategoryId                      string                                             `json:"categoryId,omitempty"`
	SiteId                          string                                             `json:"siteId,omitempty"`
	SmartGroupId                    string                                             `json:"smartGroupId,omitempty"`
	InstallPredefinedConfigProfiles *bool                                              `json:"installPredefinedConfigProfiles"`
	TitleAvailableInAis             *bool                                              `json:"titleAvailableInAis"`
	TriggerAdminNotifications       *bool                                              `json:"triggerAdminNotifications"`
	NotificationSettings            JamfAppCatalogDeploymentSubsetNotificationSettings `json:"notificationSettings,omitempty"`
	SelfServiceSettings             JamfAppCatalogDeploymentSubsetSelfServiceSettings  `json:"selfServiceSettings,omitempty"`
	SelectedVersion                 string                                             `json:"selectedVersion,omitempty"`
	LatestAvailableVersion          string                                             `json:"latestAvailableVersion,omitempty"`
	VersionRemoved                  *bool                                              `json:"versionRemoved"`
}

Struct which represents AppInstallers object JSON from Pro API

type ResourceJamfConnect

type ResourceJamfConnect struct {
	ID             string `json:"id,omitempty"`
	DisplayName    string `json:"displayName,omitempty"`
	Description    string `json:"description,omitempty"`
	Enabled        bool   `json:"enabled"`
	Settings       string `json:"settings,omitempty"`
	Version        string `json:"version,omitempty"`
	LastModified   string `json:"lastModified,omitempty"`
	LastModifiedBy string `json:"lastModifiedBy,omitempty"`
}

ResourceJamfConnect Struct to represent the Jamf Connect settings

type ResourceJamfConnectConfigProfile

type ResourceJamfConnectConfigProfile struct {
	UUID               string `json:"uuid"`
	ProfileID          int    `json:"profileId"`
	ProfileName        string `json:"profileName"`
	ScopeDescription   string `json:"scopeDescription"`
	SiteID             string `json:"siteId"`
	Version            string `json:"version"`
	AutoDeploymentType string `json:"autoDeploymentType"`
}

Struct representing a Jamf Connect config profile

type ResourceJamfConnectConfigProfileUpdate

type ResourceJamfConnectConfigProfileUpdate struct {
	JamfConnectVersion string `json:"version,omitempty"`
	AutoDeploymentType string `json:"autoDeploymentType,omitempty"`
}

ResourceJamfConnectConfigProfileUpdate represents the updateable fields for a Jamf Connect profile

type ResourceJamfConnectTaskRetry

type ResourceJamfConnectTaskRetry struct {
	IDs []string `json:"ids"`
}

ResourceJamfConnectTaskRetry represents the request structure for task retry

type ResourceJamfProServerURL

type ResourceJamfProServerURL struct {
	URL                    string `json:"url"`
	UnsecuredEnrollmentUrl string `json:"unsecuredEnrollmentUrl"`
}

type ResourceJamfProtectHistory

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

type ResourceJamfProtectIntegrationRequest

type ResourceJamfProtectIntegrationRequest struct {
	AutoInstall bool `json:"autoInstall"`
}

type ResourceJamfProtectIntegrationSettings

type ResourceJamfProtectIntegrationSettings struct {
	ID             string `json:"id"`
	APIClientID    string `json:"apiClientId"`
	APIClientName  string `json:"apiClientName"`
	RegistrationID string `json:"registrationId"`
	ProtectURL     string `json:"protectUrl"`
	LastSyncTime   string `json:"lastSyncTime"`
	SyncStatus     string `json:"syncStatus"`
	AutoInstall    bool   `json:"autoInstall"`
}

Resource Structs

type ResourceJamfProtectPlan

type ResourceJamfProtectPlan struct {
	UUID             string `json:"uuid"`
	ID               string `json:"id"`
	Name             string `json:"name"`
	Description      string `json:"description"`
	ProfileID        int    `json:"profileId"`
	ProfileName      string `json:"profileName"`
	ScopeDescription string `json:"scopeDescription"`
}

type ResourceJamfProtectRegisterRequest

type ResourceJamfProtectRegisterRequest struct {
	ProtectURL string `json:"protectUrl"`
	ClientID   string `json:"clientId"`
	Password   string `json:"password"`
}

Structs for Jamf Protect API registration

type ResourceJamfProtectRegisterResponse

type ResourceJamfProtectRegisterResponse struct {
	ID             string `json:"id"`
	APIClientID    string `json:"apiClientId"`
	APIClientName  string `json:"apiClientName"`
	RegistrationID string `json:"registrationId"`
	ProtectURL     string `json:"protectUrl"`
	LastSyncTime   string `json:"lastSyncTime"`
	SyncStatus     string `json:"syncStatus"`
	AutoInstall    bool   `json:"autoInstall"`
}

type ResourceJamfProtectRetryRequest

type ResourceJamfProtectRetryRequest struct {
	IDs []string `json:"ids"`
}

type ResourceLDAPServers

type ResourceLDAPServers struct {
	Connection       LDAPServerSubsetConnection `xml:"connection"`
	MappingsForUsers LDAPServerContainerMapping `xml:"mappings_for_users"`
}

ResourceLDAPServers represents the structure of an individual LDAP server.

type ResourceLanguageCode

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

Resource struct for language codes

type ResourceLapsPasswordList

type ResourceLapsPasswordList struct {
	LapsUserPasswordList []LapsUserPassword `json:"lapsUserPasswordList"`
}

type ResourceLicensedSoftware

type ResourceLicensedSoftware struct {
	General             LicensedSoftwareSubsetGeneral               `xml:"general"`
	SoftwareDefinitions []LicensedSoftwareSubsetSoftwareDefinitions `xml:"software_definitions>definition"`
	FontDefinitions     []LicensedSoftwareSubsetFontDefinitions     `xml:"font_definitions>definition"`
	PluginDefinitions   []LicensedSoftwareSubsetPluginDefinitions   `xml:"plugin_definitions>definition"`
	Licenses            []LicensedSoftwareSubsetLicenses            `xml:"licenses>license"`
}

ResourceLicensedSoftware represents the structure of a single licensed software item.

type ResourceLocalAdminPasswordSettings

type ResourceLocalAdminPasswordSettings struct {
	AutoDeployEnabled        bool `json:"autoDeployEnabled"`
	PasswordRotationTime     int  `json:"passwordRotationTime"`
	AutoRotateEnabled        bool `json:"autoRotateEnabled"`
	AutoRotateExpirationTime int  `json:"autoRotateExpirationTime"`
}

Resource

type ResourceLocale

type ResourceLocale struct {
	Description string `json:"description"`
	Identifier  string `json:"identifier"`
}

ResourceLocale represents a single locale in Jamf Pro

type ResourceLogFlushingTask

type ResourceLogFlushingTask struct {
	Qualifier           string `json:"qualifier"`
	RetentionPeriod     int    `json:"retentionPeriod"`
	RetentionPeriodUnit string `json:"retentionPeriodUnit"`
}

Request struct for creating log flushing task

type ResourceLoginCustomization

type ResourceLoginCustomization struct {
	RampInstance            bool   `json:"rampInstance"`
	IncludeCustomDisclaimer bool   `json:"includeCustomDisclaimer"`
	DisclaimerHeading       string `json:"disclaimerHeading"`
	DisclaimerMainText      string `json:"disclaimerMainText"`
	ActionText              string `json:"actionText"`
}

ResourceLoginCustomization represents the structure of the response for login customization.

type ResourceMDMCommandRequest

type ResourceMDMCommandRequest struct {
	CommandData CommandData  `json:"commandData"`
	ClientData  []ClientData `json:"clientData"`
}

ResourceMDMCommandRequest represents the overall request structure for the MDM command

type ResourceMDMProfileRenewal

type ResourceMDMProfileRenewal struct {
	UDIDs []string `json:"udids"`
}

ResourceMDMProfileRenewal represents the request structure for renewing MDM profiles

type ResourceMacApplications

type ResourceMacApplications struct {
	General     MacApplicationsSubsetGeneral `xml:"general"`
	Scope       MacApplicationsSubsetScope   `xml:"scope"`
	SelfService MacAppSubsetSelfService      `xml:"self_service"`
}

ResourceMacApplications represents the detailed structure of a Mac Application response.

type ResourceMacOSConfigurationProfile

type ResourceMacOSConfigurationProfile struct {
	General     MacOSConfigurationProfileSubsetGeneral     `xml:"general"`
	Scope       MacOSConfigurationProfileSubsetScope       `xml:"scope,omitempty"`
	SelfService MacOSConfigurationProfileSubsetSelfService `xml:"self_service,omitempty"`
}

ResourceMacOSConfigurationProfiles represents the response structure for a macOS configuration profile.

type ResourceManagedSoftwareUpdateFeatureToggle

type ResourceManagedSoftwareUpdateFeatureToggle struct {
	Toggle bool `json:"toggle"`
}

ResourceManagedSoftwareUpdateFeatureToggle represents the payload for updating the feature toggle.

type ResourceManagedSoftwareUpdatePlan

type ResourceManagedSoftwareUpdatePlan struct {
	Devices []ResourcManagedSoftwareUpdatePlanObject `json:"devices,omitempty"`
	Group   ResourcManagedSoftwareUpdatePlanObject   `json:"group,omitempty"`
	Config  ResourcManagedSoftwareUpdatePlanConfig   `json:"config,omitempty"`
}

ResourceManagedSoftwareUpdatePlan represents the payload structure for creating a managed software update plan.

type ResourceMobileDevice

type ResourceMobileDevice struct {
	General               MobileDeviceSubsetGeneral                `xml:"general"`
	Location              MobileDeviceSubsetLocation               `xml:"location"`
	Purchasing            MobileDeviceSubsetPurchasing             `xml:"purchasing"`
	Applications          []MobileDeviceSubsetApplication          `xml:"applications>application"`
	SecurityObject        MobileDeviceSubsetSecurity               `xml:"security_object"`
	Network               MobileDeviceSubsetNetwork                `xml:"network"`
	Certificates          []MobileDeviceSubsetCertificate          `xml:"certificates>certificate"`
	ConfigurationProfiles []MobileDeviceSubsetConfigurationProfile `xml:"configuration_profiles>configuration_profile"`
	ProvisioningProfiles  []MobileDeviceSubsetProvisioningProfile  `xml:"provisioning_profiles>mobile_device_provisioning_profile"`
	MobileDeviceGroups    []MobileDeviceSubsetGroup                `xml:"mobile_device_groups>mobile_device_group"`
	ExtensionAttributes   []MobileDeviceSubsetExtensionAttribute   `xml:"extension_attributes>extension_attribute"`
}

ResourceMobileDevice represents the structure for a of a mobile device.

type ResourceMobileDeviceApplication

type ResourceMobileDeviceApplication struct {
	General MobileDeviceApplicationSubsetGeneral `xml:"general"`
}

ResourceMobileDeviceApplication represents the detailed structure of a single mobile device application.

type ResourceMobileDeviceConfigurationProfile

type ResourceMobileDeviceConfigurationProfile struct {
	General     MobileDeviceConfigurationProfileSubsetGeneral     `xml:"general"`
	Scope       MobileDeviceConfigurationProfileSubsetScope       `xml:"scope,omitempty"`
	SelfService MobileDeviceConfigurationProfileSubsetSelfService `xml:"self_service,omitempty"`
}

ResourceMobileDeviceConfigurationProfile represents the detailed structure of a single mobile device configuration profile.

type ResourceMobileDeviceEnrollmentProfile

type ResourceMobileDeviceEnrollmentProfile struct {
	General     MobileDeviceEnrollmentProfileSubsetGeneral          `xml:"general"`
	Location    MobileDeviceEnrollmentProfileSubsetLocation         `xml:"location,omitempty"`
	Purchasing  MobileDeviceEnrollmentProfileSubsetPurchasing       `xml:"purchasing,omitempty"`
	Attachments []MobileDeviceEnrollmentProfileContainerAttachments `xml:"attachments,omitempty"`
}

ResourceMobileDeviceEnrollmentProfile represents the response structure for a mobile device enrollment profile.

type ResourceMobileDeviceGroup

type ResourceMobileDeviceGroup struct {
	ID                    int                                 `xml:"id"`
	Name                  string                              `xml:"name"`
	IsSmart               bool                                `xml:"is_smart"`
	Criteria              SharedContainerCriteria             `xml:"criteria,omitempty"`
	Site                  SharedResourceSite                  `xml:"site"`
	MobileDevices         []MobileDeviceGroupSubsetDeviceItem `xml:"mobile_devices>mobile_device,omitempty"`
	MobileDeviceAdditions []MobileDeviceGroupSubsetDeviceItem `xml:"mobile_device_additions>mobile_device,omitempty"`
	MobileDeviceDeletions []MobileDeviceGroupSubsetDeviceItem `xml:"mobile_device_deletions>mobile_device,omitempty"`
}

ResourceMobileDeviceGroup represents the response for a single mobile device group.

type ResourceMobileDevicePrestage

type ResourceMobileDevicePrestage 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                      MobileDevicePrestageSubsetSkipSetupItems      `json:"skipSetupItems"`
	LocationInformation                 MobileDevicePrestageSubsetLocationInformation `json:"locationInformation"`
	PurchasingInformation               MobileDevicePrestageSubsetLocationInformation `json:"purchasingInformation"`
	AnchorCertificates                  []string                                      `json:"anchorCertificates"`
	EnrollmentCustomizationID           string                                        `json:"enrollmentCustomizationId"`
	Language                            string                                        `json:"language"`
	Region                              string                                        `json:"region"`
	AutoAdvanceSetup                    bool                                          `json:"autoAdvanceSetup"`
	AllowPairing                        bool                                          `json:"allowPairing"`
	MultiUser                           bool                                          `json:"multiUser"`
	Supervised                          bool                                          `json:"supervised"`
	MaximumSharedAccounts               int                                           `json:"maximumSharedAccounts"`
	ConfigureDeviceBeforeSetupAssistant bool                                          `json:"configureDeviceBeforeSetupAssistant"`
	Names                               MobileDevicePrestageSubsetNames               `json:"names"`
	SendTimezone                        bool                                          `json:"sendTimezone"`
	Timezone                            string                                        `json:"timezone"`
	StorageQuotaSizeMegabytes           int                                           `json:"storageQuotaSizeMegabytes"`
	UseStorageQuotaSize                 bool                                          `json:"useStorageQuotaSize"`
	TemporarySessionOnly                bool                                          `json:"temporarySessionOnly"`
	EnforceTemporarySessionTimeout      bool                                          `json:"enforceTemporarySessionTimeout"`
	TemporarySessionTimeout             int                                           `json:"temporarySessionTimeout"`
	EnforceUserSessionTimeout           bool                                          `json:"enforceUserSessionTimeout"`
	UserSessionTimeout                  int                                           `json:"userSessionTimeout"`
	ID                                  string                                        `json:"id"`
	ProfileUuid                         string                                        `json:"profileUuid"`
	SiteId                              string                                        `json:"siteId"`
	VersionLock                         int                                           `json:"versionLock"`
}

type ResourceMobileDeviceProvisioningProfile

type ResourceMobileDeviceProvisioningProfile struct {
	General MobileDeviceProvisioningProfileSubsetGeneral `xml:"general"`
}

ResourceMobileDeviceProvisioningProfile represents the detailed structure for a mobile device provisioning profile.

type ResourceMobileExtensionAttribute

type ResourceMobileExtensionAttribute struct {
	ID               int                                     `xml:"id"`
	Name             string                                  `xml:"name"`
	Description      string                                  `xml:"description,omitempty"`
	DataType         string                                  `xml:"data_type,omitempty"`
	InputType        MobileExtensionAttributeSubsetInputType `xml:"input_type,omitempty"`
	InventoryDisplay string                                  `xml:"inventory_display,omitempty"`
}

ResourceMobileExtensionAttribute represents the response structure for a mobile extension attribute.

type ResourceNetworkSegment

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

ResourceNetworkSegment represents the response structure for a Network Segment.

type ResourceNotification

type ResourceNotification struct {
	Type   string                 `json:"type"`
	ID     string                 `json:"id"`
	Params map[string]interface{} `json:"params"`
}

ResourceNotification represents a single notification in the Jamf Pro API

type ResourceOIDCKey

type ResourceOIDCKey struct {
	Kty string `json:"kty"`
	E   string `json:"e"`
	Use string `json:"use"`
	Kid string `json:"kid"`
	Alg string `json:"alg"`
	Iat int64  `json:"iat"`
	N   string `json:"n"`
}

ResourceOIDCKey represents a single key in the OIDC public key response.

type ResourceOIDCRedirectURL

type ResourceOIDCRedirectURL struct {
	OriginalURL  string `json:"originalUrl"`
	EmailAddress string `json:"emailAddress"`
}

ResourceOIDCRedirectURL represents the request body for getting the OIDC redirect URL.

type ResourcePackage

type ResourcePackage struct {
	ID                   string `json:"id,omitempty"`
	PackageName          string `json:"packageName"` // required
	FileName             string `json:"fileName"`    // required
	CategoryID           string `json:"categoryId"`  // required
	Info                 string `json:"info,omitempty"`
	Notes                string `json:"notes,omitempty"`
	Priority             int    `json:"priority"` // required
	OSRequirements       string `json:"osRequirements,omitempty"`
	FillUserTemplate     *bool  `json:"fillUserTemplate"` // required
	Indexed              *bool  `json:"indexed,omitempty"`
	FillExistingUsers    *bool  `json:"fillExistingUsers,omitempty"`
	SWU                  *bool  `json:"swu,omitempty"`
	RebootRequired       *bool  `json:"rebootRequired"` // required
	SelfHealNotify       *bool  `json:"selfHealNotify,omitempty"`
	SelfHealingAction    string `json:"selfHealingAction,omitempty"`
	OSInstall            *bool  `json:"osInstall"` // required
	SerialNumber         string `json:"serialNumber,omitempty"`
	ParentPackageID      string `json:"parentPackageId,omitempty"`
	BasePath             string `json:"basePath,omitempty"`
	SuppressUpdates      *bool  `json:"suppressUpdates"` // required
	CloudTransferStatus  string `json:"cloudTransferStatus,omitempty"`
	IgnoreConflicts      *bool  `json:"ignoreConflicts,omitempty"`
	SuppressFromDock     *bool  `json:"suppressFromDock"`     // required
	SuppressEula         *bool  `json:"suppressEula"`         // required
	SuppressRegistration *bool  `json:"suppressRegistration"` // required
	InstallLanguage      string `json:"installLanguage,omitempty"`
	MD5                  string `json:"md5,omitempty"`
	SHA256               string `json:"sha256,omitempty"`
	HashType             string `json:"hashType,omitempty"`
	HashValue            string `json:"hashValue,omitempty"`
	Size                 string `json:"size,omitempty"`
	OSInstallerVersion   string `json:"osInstallerVersion,omitempty"`
	Manifest             string `json:"manifest,omitempty"`
	ManifestFileName     string `json:"manifestFileName,omitempty"`
	Format               string `json:"format,omitempty"`
}

ResourcePackage struct describes the JSON structure for a package in Jamf Pro

type ResourcePackageHistory

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

ResourcePackageHistory struct to capture individual package history items in the list

type ResourcePatchExternalSource

type ResourcePatchExternalSource struct {
	ID         int    `xml:"id" json:"id"`
	HostName   string `xml:"host_name,omitempty" json:"host_name"`
	SSLEnabled bool   `xml:"ssl_enabled" json:"ssl_enabled"`
	Port       int    `xml:"port,omitempty" json:"port"`
	Name       string `xml:"name,omitempty" json:"name"`
}

ResourcePatchExternalSource represents the root element of the patch external source.

type ResourcePatchPolicyClassicAPI

type ResourcePatchPolicyClassicAPI struct {
	General                      ResourcePatchPolicyCreateRequestGeneral         `xml:"general"`
	Scope                        ResourcePatchPolicyCreateRequestScope           `xml:"scope"`
	UserInteraction              ResourcePatchPolicyCreateRequestUserInteraction `xml:"user_interaction"`
	SoftwareTitleConfigurationID string                                          `xml:"software_title_configuration_id"`
}

ResourcePatchPolicyCreateRequest represents the XML structure for creating a patch policy

type ResourcePatchPolicyCreateRequestDeadlines

type ResourcePatchPolicyCreateRequestDeadlines struct {
	Enabled bool `xml:"deadline_enabled"`
	Period  int  `xml:"deadline_period"`
}

type ResourcePatchPolicyCreateRequestGeneral

type ResourcePatchPolicyCreateRequestGeneral struct {
	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           ResourcePatchPolicyCreateRequestKillApps `xml:"kill_apps"`
	DistributionMethod string                                   `xml:"distribution_method"`
	AllowDowngrade     bool                                     `xml:"allow_downgrade"`
	PatchUnknown       bool                                     `xml:"patch_unknown"`
}

type ResourcePatchPolicyCreateRequestGracePeriod

type ResourcePatchPolicyCreateRequestGracePeriod struct {
	Duration            int    `xml:"grace_period_duration"`
	NotificationSubject string `xml:"notification_center_subject"`
	Message             string `xml:"message"`
}

type ResourcePatchPolicyCreateRequestKillApp

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

type ResourcePatchPolicyCreateRequestKillApps

type ResourcePatchPolicyCreateRequestKillApps struct {
	KillApp []ResourcePatchPolicyCreateRequestKillApp `xml:"kill_app"`
}

type ResourcePatchPolicyCreateRequestNotifications

type ResourcePatchPolicyCreateRequestNotifications struct {
	Enabled   bool                                      `xml:"notification_enabled"`
	Type      string                                    `xml:"notification_type"`
	Subject   string                                    `xml:"notification_subject"`
	Message   string                                    `xml:"notification_message"`
	Reminders ResourcePatchPolicyCreateRequestReminders `xml:"reminders"`
}

type ResourcePatchPolicyCreateRequestReminders

type ResourcePatchPolicyCreateRequestReminders struct {
	Enabled   bool `xml:"notification_reminders_enabled"`
	Frequency int  `xml:"notification_reminder_frequency"`
}

type ResourcePatchPolicyCreateRequestScope

type ResourcePatchPolicyCreateRequestScope struct {
	AllComputers bool `xml:"all_computers"`
}

type ResourcePatchPolicyCreateRequestUserInteraction

type ResourcePatchPolicyCreateRequestUserInteraction struct {
	InstallButtonText      string                                        `xml:"install_button_text"`
	SelfServiceDescription string                                        `xml:"self_service_description"`
	Notifications          ResourcePatchPolicyCreateRequestNotifications `xml:"notifications"`
	Deadlines              ResourcePatchPolicyCreateRequestDeadlines     `xml:"deadlines"`
	GracePeriod            ResourcePatchPolicyCreateRequestGracePeriod   `xml:"grace_period"`
}

type ResourcePatchPolicyJamfProAPI

type ResourcePatchPolicyJamfProAPI struct {
	ID                           string `json:"id"`
	Name                         string `json:"name"`
	Enabled                      bool   `json:"enabled"`
	TargetPatchVersion           string `json:"targetPatchVersion"`
	DeploymentMethod             string `json:"deploymentMethod"`
	SoftwareTitleId              string `json:"softwareTitleId"`
	SoftwareTitleConfigurationId string `json:"softwareTitleConfigurationId"`
	KillAppsDelayMinutes         int    `json:"killAppsDelayMinutes"`
	KillAppsMessage              string `json:"killAppsMessage"`
	Downgrade                    bool   `json:"downgrade"`
	PatchUnknownVersion          bool   `json:"patchUnknownVersion"`
	NotificationHeader           string `json:"notificationHeader"`
	SelfServiceEnforceDeadline   bool   `json:"selfServiceEnforceDeadline"`
	SelfServiceDeadline          int    `json:"selfServiceDeadline"`
	InstallButtonText            string `json:"installButtonText"`
	SelfServiceDescription       string `json:"selfServiceDescription"`
	IconId                       string `json:"iconId"`
	ReminderFrequency            int    `json:"reminderFrequency"`
	ReminderEnabled              bool   `json:"reminderEnabled"`
}

ResourcePatchPolicy represents a Patch Policy object from Pro API

type ResourcePatchSoftwareTitleConfiguration

type ResourcePatchSoftwareTitleConfiguration struct {
	ID                     string                                                    `json:"id,omitempty"`
	DisplayName            string                                                    `json:"displayName"`
	SoftwareTitleID        string                                                    `json:"softwareTitleId"`
	CategoryID             string                                                    `json:"categoryId,omitempty"`
	SiteID                 string                                                    `json:"siteId,omitempty"`
	UiNotifications        bool                                                      `json:"uiNotifications,omitempty"`
	EmailNotifications     bool                                                      `json:"emailNotifications,omitempty"`
	ExtensionAttributes    []PatchSoftwareTitleConfigurationSubsetExtensionAttribute `json:"extensionAttributes,omitempty"`
	SoftwareTitleName      string                                                    `json:"softwareTitleName,omitempty"`
	SoftwareTitleNameId    string                                                    `json:"softwareTitleNameId,omitempty"`
	SoftwareTitlePublisher string                                                    `json:"softwareTitlePublisher,omitempty"`
	JamfOfficial           bool                                                      `json:"jamfOfficial,omitempty"`
	PatchSourceName        string                                                    `json:"patchSourceName,omitempty"`
	PatchSourceEnabled     bool                                                      `json:"patchSourceEnabled,omitempty"`
	Packages               []PatchSoftwareTitleConfigurationSubsetPackage            `json:"packages,omitempty"`
}

type ResourcePatchSoftwareTitleDefinition

type ResourcePatchSoftwareTitleDefinition struct {
	Version                string                                      `json:"version"`
	MinimumOperatingSystem string                                      `json:"minimumOperatingSystem"`
	ReleaseDate            string                                      `json:"releaseDate"`
	RebootRequired         bool                                        `json:"rebootRequired"`
	KillApps               []PatchSoftwareTitleDefinitionSubsetKillApp `json:"killApps"`
	Standalone             bool                                        `json:"standalone"`
	AbsoluteOrderID        string                                      `json:"absoluteOrderId"`
}

Resource struct for a patch software title definition

type ResourcePatchSoftwareTitleDependency

type ResourcePatchSoftwareTitleDependency struct {
	SmartGroupID   string `json:"smartGroupId"`
	SmartGroupName string `json:"smartGroupName"`
}

Resource struct for patch software title dependency

type ResourcePatchSoftwareTitleExtensionAttribute

type ResourcePatchSoftwareTitleExtensionAttribute struct {
	ID          string `json:"id"`
	Name        string `json:"name"`
	Description string `json:"description"`
	Enabled     bool   `json:"enabled"`
}

Resource struct for patch software title extension attribute

type ResourcePolicy

type ResourcePolicy struct {
	General              PolicySubsetGeneral              `xml:"general"`                       // Required
	Scope                PolicySubsetScope                `xml:"scope,omitempty"`               // Required? Come back to later
	SelfService          PolicySubsetSelfService          `xml:"self_service,omitempty"`        // Not required but also not listable
	PackageConfiguration PolicySubsetPackageConfiguration `xml:"package_configuration"`         // List inside
	Scripts              []PolicySubsetScript             `xml:"scripts>script"`                // Done
	Printers             PolicySubsetPrinters             `xml:"printers"`                      // List Inside
	DockItems            []PolicySubsetDockItem           `xml:"dock_items>dock_item"`          // Done
	AccountMaintenance   PolicySubsetAccountMaintenance   `xml:"account_maintenance,omitempty"` // Come back to
	Maintenance          PolicySubsetMaintenance          `xml:"maintenance"`                   // Only one
	FilesProcesses       PolicySubsetFilesProcesses       `xml:"files_processes,omitempty"`     // Only one
	UserInteraction      PolicySubsetUserInteraction      `xml:"user_interaction,omitempty"`    // Only one
	DiskEncryption       PolicySubsetDiskEncryption       `xml:"disk_encryption,omitempty"`     // Only one
	Reboot               PolicySubsetReboot               `xml:"reboot,omitempty"`              // Only One
}

ResourcePolicy represents the response structure for a single policy

type ResourcePolicyProperties

type ResourcePolicyProperties struct {
	PoliciesRequireNetworkStateChange bool `json:"policiesRequireNetworkStateChange"`
	AllowNetworkStateChangeTriggers   bool `json:"allowNetworkStateChangeTriggers"`
}

type ResourcePrinter

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

ResourcePrinter represents the detailed structure of a single printer.

type ResourceRemovableMacAddress

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

type ResourceRestrictedSoftware

type ResourceRestrictedSoftware struct {
	General RestrictedSoftwareSubsetGeneral `xml:"general"`
	Scope   RestrictedSoftwareSubsetScope   `xml:"scope"`
}

Structs for individual Restricted Software

type ResourceReturnToServiceConfiguration

type ResourceReturnToServiceConfiguration struct {
	DisplayName                                    string `json:"displayName"`
	SsoForEnrollmentEnabled                        bool   `json:"ssoForEnrollmentEnabled"`
	SsoBypassAllowed                               bool   `json:"ssoBypassAllowed"`
	SsoEnabled                                     bool   `json:"ssoEnabled"`
	SsoForMacOsSelfServiceEnabled                  bool   `json:"ssoForMacOsSelfServiceEnabled"`
	TokenExpirationDisabled                        bool   `json:"tokenExpirationDisabled"`
	UserAttributeEnabled                           bool   `json:"userAttributeEnabled"`
	UserAttributeName                              string `json:"userAttributeName"`
	UserMapping                                    string `json:"userMapping"`
	EnrollmentSsoForAccountDrivenEnrollmentEnabled bool   `json:"enrollmentSsoForAccountDrivenEnrollmentEnabled"`
	GroupEnrollmentAccessEnabled                   bool   `json:"groupEnrollmentAccessEnabled"`
	GroupAttributeName                             string `json:"groupAttributeName"`
	GroupRdnKey                                    string `json:"groupRdnKey"`
	GroupEnrollmentAccessName                      string `json:"groupEnrollmentAccessName"`
	IdpProviderType                                string `json:"idpProviderType"`
	OtherProviderTypeName                          string `json:"otherProviderTypeName"`
	MetadataSource                                 string `json:"metadataSource"`
	SessionTimeout                                 int    `json:"sessionTimeout"`
	Title                                          string `json:"title"`
	Description                                    string `json:"description"`
	Priority                                       int    `json:"priority"`
	WifiProfileID                                  string `json:"wifiProfileId"`
}

ResourceReturnToServiceConfiguration represents the structure for a Return to Service configuration

type ResourceSMTPServer

type ResourceSMTPServer struct {
	Enabled               bool                                     `json:"enabled"`
	AuthenticationType    string                                   `json:"authenticationType"`
	ConnectionSettings    *ResourceSMTPServerConnectionSettings    `json:"connectionSettings,omitempty"`
	SenderSettings        *ResourceSMTPServerSenderSettings        `json:"senderSettings,omitempty"`
	BasicAuthCredentials  *ResourceSMTPServerBasicAuthCredentials  `json:"basicAuthCredentials,omitempty"`
	GraphApiCredentials   *ResourceSMTPServerGraphApiCredentials   `json:"graphApiCredentials,omitempty"`
	GoogleMailCredentials *ResourceSMTPServerGoogleMailCredentials `json:"googleMailCredentials,omitempty"`
}

Resource

type ResourceSMTPServerAuthentication

type ResourceSMTPServerAuthentication struct {
	EmailAddress string `json:"emailAddress"`
	Status       string `json:"status"`
}

Authentication struct

type ResourceSMTPServerBasicAuthCredentials

type ResourceSMTPServerBasicAuthCredentials struct {
	Username string `json:"username"`
	Password string `json:"password"`
}

Basic Auth Credentials struct

type ResourceSMTPServerConnectionSettings

type ResourceSMTPServerConnectionSettings struct {
	Host              string `json:"host"`
	Port              int    `json:"port"`
	EncryptionType    string `json:"encryptionType"`
	ConnectionTimeout int    `json:"connectionTimeout"`
}

Connection Settings struct

type ResourceSMTPServerGoogleMailCredentials

type ResourceSMTPServerGoogleMailCredentials struct {
	ClientId        string                             `json:"clientId"`
	ClientSecret    string                             `json:"clientSecret"`
	Authentications []ResourceSMTPServerAuthentication `json:"authentications,omitempty"`
}

Google Mail Credentials struct

type ResourceSMTPServerGraphApiCredentials

type ResourceSMTPServerGraphApiCredentials struct {
	TenantId     string `json:"tenantId"`
	ClientId     string `json:"clientId"`
	ClientSecret string `json:"clientSecret"`
}

Graph API Credentials struct

type ResourceSMTPServerSenderSettings

type ResourceSMTPServerSenderSettings struct {
	DisplayName  string `json:"displayName,omitempty"`
	EmailAddress string `json:"emailAddress"`
}

Sender Settings struct

type ResourceScript

type ResourceScript struct {
	ID             string `json:"id"`
	Name           string `json:"name"`
	CategoryName   string `json:"categoryName,omitempty"`
	CategoryId     string `json:"categoryId,omitempty"`
	Info           string `json:"info,omitempty"`
	Notes          string `json:"notes,omitempty"`
	OSRequirements string `json:"osRequirements,omitempty"`
	Priority       string `json:"priority,omitempty"`
	ScriptContents string `json:"scriptContents,omitempty"`
	Parameter4     string `json:"parameter4,omitempty"`
	Parameter5     string `json:"parameter5,omitempty"`
	Parameter6     string `json:"parameter6,omitempty"`
	Parameter7     string `json:"parameter7,omitempty"`
	Parameter8     string `json:"parameter8,omitempty"`
	Parameter9     string `json:"parameter9,omitempty"`
	Parameter10    string `json:"parameter10,omitempty"`
	Parameter11    string `json:"parameter11,omitempty"`
}

Struct which represents Script object JSON from Pro API

type ResourceSelfServiceBranding

type ResourceSelfServiceBranding struct {
	ID   int    `json:"id"`
	URL  string `json:"url"`
	Name string `json:"name"`
}

Resource

type ResourceSelfServiceBrandingDetail

type ResourceSelfServiceBrandingDetail 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"`
	HomeHeading           string `json:"homeHeading"`
	HomeSubheading        string `json:"homeSubheading"`
}

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

type ResourceSelfServiceSettings

type ResourceSelfServiceSettings struct {
	InstallSettings       InstallSettings       `json:"installSettings"`
	LoginSettings         LoginSettings         `json:"loginSettings"`
	ConfigurationSettings ConfigurationSettings `json:"configurationSettings"`
}

type ResourceSmartComputerGroup

type ResourceSmartComputerGroup struct {
	Name     string                           `json:"name"`
	Criteria []SharedSubsetCriteriaJamfProAPI `json:"criteria"`
	SiteId   *string                          `json:"siteId,omitempty"`
}

ResourceSmartComputerGroup represents the request structure for creating a Smart Computer Group

type ResourceSmartComputerGroupV2

type ResourceSmartComputerGroupV2 struct {
	ID              string `json:"id"`
	SiteId          string `json:"siteId"`
	Name            string `json:"name"`
	MembershipCount int    `json:"membershipCount"`
}

ResourceSmartComputerGroupV2 represents a Smart Computer Group in v2 API

type ResourceSoftwareUpdateServer

type ResourceSoftwareUpdateServer 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 ResourceSsoSettings

type ResourceSsoSettings struct {
	SsoForEnrollmentEnabled                        bool                                 `json:"ssoForEnrollmentEnabled"`
	SsoBypassAllowed                               bool                                 `json:"ssoBypassAllowed"`
	SsoEnabled                                     bool                                 `json:"ssoEnabled"`
	SsoForMacOsSelfServiceEnabled                  bool                                 `json:"ssoForMacOsSelfServiceEnabled"`
	TokenExpirationDisabled                        bool                                 `json:"tokenExpirationDisabled"`
	UserAttributeEnabled                           bool                                 `json:"userAttributeEnabled"`
	UserAttributeName                              string                               `json:"userAttributeName"`
	UserMapping                                    string                               `json:"userMapping"`
	EnrollmentSsoForAccountDrivenEnrollmentEnabled bool                                 `json:"enrollmentSsoForAccountDrivenEnrollmentEnabled"`
	EnrollmentSsoConfig                            SsoSettingsSubsetEnrollmentSsoConfig `json:"enrollmentSsoConfig"`
	GroupEnrollmentAccessEnabled                   bool                                 `json:"groupEnrollmentAccessEnabled"`
	GroupAttributeName                             string                               `json:"groupAttributeName"`
	GroupRdnKey                                    string                               `json:"groupRdnKey"`
	GroupEnrollmentAccessName                      string                               `json:"groupEnrollmentAccessName"`
	IdpProviderType                                string                               `json:"idpProviderType"`
	IdpUrl                                         string                               `json:"idpUrl"`
	EntityId                                       string                               `json:"entityId"`
	MetadataFileName                               string                               `json:"metadataFileName"`
	OtherProviderTypeName                          string                               `json:"otherProviderTypeName"`
	FederationMetadataFile                         string                               `json:"federationMetadataFile"`
	MetadataSource                                 string                               `json:"metadataSource"`
	SessionTimeout                                 int                                  `json:"sessionTimeout"`
}

type ResourceStartupStatus

type ResourceStartupStatus struct {
	Step                    string `json:"step"`
	StepCode                string `json:"stepCode"`
	StepParam               string `json:"stepParam"`
	Percentage              int    `json:"percentage"`
	Warning                 string `json:"warning"`
	WarningCode             string `json:"warningCode"`
	WarningParam            string `json:"warningParam"`
	Error                   string `json:"error"`
	ErrorCode               string `json:"errorCode"`
	SetupAssistantNecessary bool   `json:"setupAssistantNecessary"`
}

Resource structure

type ResourceSystemInitialize

type ResourceSystemInitialize struct {
	ActivationCode  string `json:"activationCode"`
	InstitutionName string `json:"institutionName"`
	EulaAccepted    bool   `json:"eulaAccepted"`
	Username        string `json:"username"`
	Password        string `json:"password"`
	Email           string `json:"email,omitempty"`
	JssUrl          string `json:"jssUrl"`
}

Request Struct

type ResourceTimeZone

type ResourceTimeZone struct {
	ZoneId      string `json:"zoneId"`
	Region      string `json:"region"`
	DisplayName string `json:"displayName"`
}

Resource structure

type ResourceUpdateOnboardingSettings

type ResourceUpdateOnboardingSettings struct {
	Enabled                                        bool                          `json:"enabled"`
	DisplayName                                    string                        `json:"displayName"`
	SsoForEnrollmentEnabled                        bool                          `json:"ssoForEnrollmentEnabled"`
	SsoBypassAllowed                               bool                          `json:"ssoBypassAllowed"`
	SsoEnabled                                     bool                          `json:"ssoEnabled"`
	SsoForMacOsSelfServiceEnabled                  bool                          `json:"ssoForMacOsSelfServiceEnabled"`
	TokenExpirationDisabled                        bool                          `json:"tokenExpirationDisabled"`
	UserAttributeEnabled                           bool                          `json:"userAttributeEnabled"`
	UserAttributeName                              string                        `json:"userAttributeName"`
	UserMapping                                    string                        `json:"userMapping"`
	EnrollmentSsoForAccountDrivenEnrollmentEnabled bool                          `json:"enrollmentSsoForAccountDrivenEnrollmentEnabled"`
	GroupEnrollmentAccessEnabled                   bool                          `json:"groupEnrollmentAccessEnabled"`
	GroupAttributeName                             string                        `json:"groupAttributeName"`
	GroupRdnKey                                    string                        `json:"groupRdnKey"`
	GroupEnrollmentAccessName                      string                        `json:"groupEnrollmentAccessName"`
	IdpProviderType                                string                        `json:"idpProviderType"`
	OtherProviderTypeName                          string                        `json:"otherProviderTypeName"`
	MetadataSource                                 string                        `json:"metadataSource"`
	SessionTimeout                                 int                           `json:"sessionTimeout"`
	DeviceType                                     string                        `json:"deviceType"`
	OnboardingItems                                []SubsetOnboardingItemRequest `json:"onboardingItems"`
}

ResourceUpdateOnboardingSettings represents the request body for updating onboarding settings

type ResourceUser

type ResourceUser 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          UserSubsetLDAPServer          `xml:"ldap_server"`
	ExtensionAttributes UserSubsetExtensionAttributes `xml:"extension_attributes"`
	Sites               []SharedResourceSite          `xml:"sites>site"`
	Links               UserSubsetLinks               `xml:"links"`
}

type ResourceUserExtensionAttribute

type ResourceUserExtensionAttribute 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   ResourceUserExtensionAttributeSubsetInputType `xml:"input_type"`
}

ResponseUserExtensionAttributerepresents a single user extension attribute.

type ResourceUserExtensionAttributeSubsetInputType

type ResourceUserExtensionAttributeSubsetInputType struct {
	Type string `xml:"type"`
}

type ResourceUserGroup

type ResourceUserGroup struct {
	ID               int                       `xml:"id"`
	Name             string                    `xml:"name,omitempty"`
	IsSmart          bool                      `xml:"is_smart"`
	IsNotifyOnChange bool                      `xml:"is_notify_on_change"`
	Site             *SharedResourceSite       `xml:"site,omitempty"`
	Criteria         []SharedSubsetCriteria    `xml:"criteria>criterion,omitempty"`
	Users            []UserGroupSubsetUserItem `xml:"users>user,omitempty"`
	UserAdditions    []UserGroupSubsetUserItem `xml:"user_additions>user,omitempty"`
	UserDeletions    []UserGroupSubsetUserItem `xml:"user_deletions>user,omitempty"`
}

ResourceUserGroup represents the detailed information of a user group.

type ResourceVPPAccount

type ResourceVPPAccount 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                          SharedResourceSite `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 ResourceVPPAssignment

type ResourceVPPAssignment struct {
	General VPPAssignmentSubsetGeneral `xml:"general"`
	IOSApps []VPPSubsetVPPApp          `xml:"ios_apps>ios_app"`
	MacApps []VPPSubsetVPPApp          `xml:"mac_apps>mac_app"`
	EBooks  []VPPSubsetVPPApp          `xml:"ebooks>ebook"`
	Scope   VPPAssignmentSubsetScope   `xml:"scope"`
}

Structs for the detailed VPP assignment response

type ResourceVolumePurchasingLocation

type ResourceVolumePurchasingLocation struct {
	VolumePurchasingLocationSubsetBody `mapstructure:",squash"`        // I don't think this works. See exmaples/volume_purchase_locations/CreateVolumePurchasingLocation.go
	Content                            []VolumePurchasingSubsetContent `json:"content"`
}

ResponseVolumePurchasingLocation represents the response structure for a single volume purchasing location.

type ResourceVolumePurchasingSubscription

type ResourceVolumePurchasingSubscription 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 []VolumePurchasingSubscriptionSubsetInternalRecipients `json:"internalRecipients,omitempty"`
	ExternalRecipients []VolumePurchasingSubscriptionSubsetExternalRecipients `json:"externalRecipients,omitempty"`
	SiteId             string                                                 `json:"siteId,omitempty"`
}

type ResourceWebhook

type ResourceWebhook struct {
	ID                          int            `xml:"id"`
	Name                        string         `xml:"name"`
	Enabled                     bool           `xml:"enabled"`
	URL                         string         `xml:"url,omitempty"`
	ContentType                 string         `xml:"content_type,omitempty"`
	Event                       string         `xml:"event,omitempty"`
	ConnectionTimeout           int            `xml:"connection_timeout,omitempty"`
	ReadTimeout                 int            `xml:"read_timeout,omitempty"`
	AuthenticationType          string         `xml:"authentication_type,omitempty"`
	Username                    string         `xml:"username,omitempty"`
	Password                    string         `xml:"password,omitempty"`
	EnableDisplayFieldsForGroup bool           `xml:"enable_display_fields_for_group_object,omitempty"`
	DisplayFields               []DisplayField `xml:"display_fields>display_field,omitempty"`
	SmartGroupID                int            `xml:"smart_group_id,omitempty"`
}

Struct for individual Webhook

type ResponceBYOProfileCreatedAndUpdated

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

type ResponseAccountCreatedAndUpdated

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

type ResponseAccountDrivenUserEnrollmentAccessGroupCreateAndUpdate

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

type ResponseAccountDrivenUserEnrollmentAccessGroupsList

type ResponseAccountDrivenUserEnrollmentAccessGroupsList struct {
	TotalCount int                                              `json:"totalCount"`
	Results    []ResourceAccountDrivenUserEnrollmentAccessGroup `json:"results"`
}

type ResponseAccountGroupCreated

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

type ResponseAccountsList

type ResponseAccountsList struct {
	Users  []AccountsListSubsetUsers  `xml:"users>user,omitempty"`
	Groups []AccountsListSubsetGroups `xml:"groups>group,omitempty"`
}

type ResponseActiveCertificateAuthority

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            ActiveCertificateAuthoritySubsetSignature `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 ResponseAdvancedComputerSearchCreatedAndUpdated

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

type ResponseAdvancedComputerSearchesList

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

ResponseAdvancedComputerSearchesList represents the structure for multiple advanced computer searches.

type ResponseAdvancedMobileDeviceSearchChoices

type ResponseAdvancedMobileDeviceSearchChoices struct {
	Choices []string `json:"choices"`
}

ResponseAdvancedMobileDeviceSearchChoices represents the response for Advanced Mobile Device Search Choices

type ResponseAdvancedMobileDeviceSearchCreate

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

ResponseAdvancedMobileDeviceSearchCreate represents the response structure for creating a Smart Computer Group

type ResponseAdvancedMobileDeviceSearchesList

type ResponseAdvancedMobileDeviceSearchesList struct {
	TotalCount int                                  `json:"totalCount"`
	Results    []ResourceAdvancedMobileDeviceSearch `json:"results"`
}

ResponseAdvancedMobileDeviceSearchesList represents the response for Advanced Mobile Device Searches

type ResponseAdvancedUserSearchCreatedAndUpdated

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

type ResponseAdvancedUserSearchesList

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

Response structure for the list of advanced user searches

type ResponseAllowedFileExtensionsList

type ResponseAllowedFileExtensionsList struct {
	Size                  int                            `xml:"size"`
	AllowedFileExtensions []ResourceAllowedFileExtension `xml:"allowed_file_extension"`
}

Response structure for the list of allowed file extensions

type ResponseApiIntegrationsList

type ResponseApiIntegrationsList struct {
	TotalCount int                      `json:"totalCount"`
	Results    []ResourceApiIntegration `json:"results"`
}

ResponseApiIntegrations represents the structure of the response for fetching API integrations

type ResponseApiRolesList

type ResponseApiRolesList struct {
	TotalCount int               `json:"totalCount"`
	Results    []ResourceAPIRole `json:"results"`
}

ResponseApiRoles represents the structure of the response for fetching API roles

type ResponseBYOProfilesList

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

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

type ResponseBookmarkCreate

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

ResponseBookmarkCreate represents the response structure for creating a bookmark

type ResponseBookmarksList

type ResponseBookmarksList struct {
	TotalCount int                `json:"totalCount"`
	Results    []ResourceBookmark `json:"results"`
}

ResponseBookmarksList represents the structure of the response for the bookmarks list

type ResponseBuildingCreate

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

ResponseBuildingCreate represents the response structure for creating a building.

type ResponseBuildingResourceHistoryList

type ResponseBuildingResourceHistoryList struct {
	Size    int                               `json:"totalCount"`
	Results []ResourceBuildingResourceHistory `json:"results"`
}

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

type ResponseBuildingsList

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

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

type ResponseCSATenantID

type ResponseCSATenantID struct {
	TenantID string `json:"tenantId"`
}

ResponseCSATenantID represents the response structure for the CSA tenant ID.

type ResponseCSATokenExchangeDetails

type ResponseCSATokenExchangeDetails struct {
	TenantID                string   `json:"tenantId"`
	Subject                 string   `json:"subject"`
	RefreshExpiration       int      `json:"refreshExpiration"`
	Scopes                  []string `json:"scopes"`
	LegacyJamfSalesforceIds []string `json:"legacyJamfSalesforceIds"`
}

ResponseCSATokenExchangeDetails represents the response structure for the CSA token exchange details.

type ResponseCategoriesList

type ResponseCategoriesList struct {
	TotalCount int                `json:"totalCount"`
	Results    []ResourceCategory `json:"results"`
}

type ResponseCategoryCreateAndUpdate

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

ResponseCategoryCreateAndUpdate represents the response structure for creating a category.

type ResponseClassesList

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

ResponseClassesList represents the XML response for a list of classes.

type ResponseCloudDistributionPointCreate

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

type ResponseCloudIdentityProviderDefaultMappings

type ResponseCloudIdentityProviderDefaultMappings struct {
	CloudIdentityProviderDefaultMappingsSubsetUserMappings       CloudIdentityProviderDefaultMappingsSubsetUserMappings       `json:"userMappings"`
	CloudIdentityProviderDefaultMappingsSubsetGroupMappings      CloudIdentityProviderDefaultMappingsSubsetGroupMappings      `json:"groupMappings"`
	CloudIdentityProviderDefaultMappingsSubsetMembershipMappings CloudIdentityProviderDefaultMappingsSubsetMembershipMappings `json:"membershipMappings"`
}

type ResponseCloudIdentityProvidersList

type ResponseCloudIdentityProvidersList struct {
	TotalCount int                             `json:"totalCount"`
	Results    []ResourceCloudIdentityProvider `json:"results"`
}

ResponseCloudIdentityProvidersList struct for cloud identity providers list

type ResponseCloudIdpCreate

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

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

type ResponseCloudLdapVerifyKeystore

type ResponseCloudLdapVerifyKeystore struct {
	Type           string `json:"type"`
	ExpirationDate string `json:"expirationDate"`
	Subject        string `json:"subject"`
	FileName       string `json:"fileName"`
}

type ResponseComputer

type ResponseComputer struct {
	General               ComputerSubsetGeneral                 `xml:"general" json:"general"`
	Location              ComputerSubsetLocation                `xml:"location" json:"location"`
	Purchasing            ComputerSubsetPurchasing              `xml:"purchasing" json:"purchasing"`
	Peripherals           ComputerContainerPeripherals          `xml:"peripherals" json:"peripherals"`
	Hardware              ComputerSubsetHardware                `xml:"hardware" json:"hardware"`
	Certificates          []ComputerSubsetCertificates          `xml:"certificates>certificate" json:"certificates"`
	Security              ComputerSubsetSecurity                `xml:"security" json:"security"`
	Software              ComputerSubsetSoftware                `xml:"software" json:"software"`
	ExtensionAttributes   []ComputerSubsetExtensionAttributes   `xml:"extension_attributes>extension_attribute" json:"extension_attributes"`
	GroupsAccounts        ComputerSubsetGroupsAccounts          `xml:"groups_accounts" json:"groups_accounts"`
	ConfigurationProfiles []ComputerSubsetConfigurationProfiles `xml:"configuration_profiles>configuration_profile" json:"configuration_profiles"`
}

Response structure for computer resources

type ResponseComputerExtensionAttributeCreated

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

ResponseComputerExtensionAttributeCreated represents the response for a created computer extension attribute

type ResponseComputerExtensionAttributesList

type ResponseComputerExtensionAttributesList struct {
	TotalCount int                                  `json:"totalCount"`
	Results    []ResourceComputerExtensionAttribute `json:"results"`
}

ResponseComputerExtensionAttributesList represents the paginated response for computer extension attributes

type ResponseComputerGroupreatedAndUpdated

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

type ResponseComputerGroupsList

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

type ResponseComputerInventoryList

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

ResponseComputerInventoryList represents the top-level JSON response structure.

type ResponseComputerInvitationsList

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

type ResponseComputerPrestageCreate

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

ResponseComputerPrestageCreate represents the response structure for creating a building.

type ResponseComputerPrestagesList

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

type ResponseComputersList

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

Response structure for the list of computers

type ResponseConfigProfileCreate

type ResponseConfigProfileCreate struct {
	UUID string `json:"uuid"`
}

ResponseConfigProfileCreate represents the response when creating a configuration profile

type ResponseCustomSettingsSchemaList

type ResponseCustomSettingsSchemaList []ResourceCustomSettingsBucket

ResponseCustomSettingsSchemaList represents the top-level response for custom settings schema list

type ResponseDSSDeclaration

type ResponseDSSDeclaration struct {
	Declarations []ResourceDSSDeclaration `json:"declarations"`
}

Responses

type ResponseDeclarationsList

type ResponseDeclarationsList struct {
	Declarations []ResourceDeclaration `json:"declarations"`
}

ResponseDeclarationsList represents the response structure for the list of declarations.

type ResponseDepartmentCreate

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

type ResponseDepartmentsList

type ResponseDepartmentsList struct {
	TotalCount int                  `json:"totalCount"`
	Results    []ResourceDepartment `json:"results"`
}

type ResponseDeployPackage

type ResponseDeployPackage struct {
	QueuedCommands []QueuedCommand             `json:"queuedCommands"`
	Errors         []SharedResourceErrorDetail `json:"errors"`
}

ResponseDeployPackage represents the response structure for deploying a package

type ResponseDeviceEnrollmentHistory

type ResponseDeviceEnrollmentHistory struct {
	TotalCount int                               `json:"totalCount"`
	Results    []ResourceDeviceEnrollmentHistory `json:"results"`
}

ResponseDeviceEnrollmentHistory represents the response for device enrollment history

type ResponseDeviceEnrollmentTokenUpload

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

ResponseDeviceEnrollmentTokenUpload represents the response after token upload

type ResponseDeviceEnrollmentsList

type ResponseDeviceEnrollmentsList struct {
	TotalCount int                        `json:"totalCount"`
	Results    []ResourceDeviceEnrollment `json:"results"`
}

ResponseDeviceEnrollmentList represents the response for device enrollments list.

type ResponseDeviceScope

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

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

type ResponseDirectoryBinding

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

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

Struct to capture the XML response for directory bindings

type ResponseDiskEncryptionConfigurationCreatedAndUpdated

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

type ResponseDiskEncryptionConfigurationsList

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

Struct to capture the XML response for disk encryption configurations

type ResponseDistributionPointsList

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

Struct to capture the XML response for distribution points list

type ResponseDockItemsList

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

Struct to capture the XML response for dock items list

type ResponseEbooksList

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

Struct to capture the XML response for ebooks list

type ResponseEligiblilityForOnboardingList

type ResponseEligiblilityForOnboardingList struct {
	TotalCount int                                     `json:"totalCount"`
	Results    []ResourceEligiblilityForOnboardingList `json:"results"`
}

ResponseEligiblilityForOnboardingList represents the paginated response for eligible apps

type ResponseEnrollmentCustomizationCreate

type ResponseEnrollmentCustomizationCreate struct {
	Id   string `json:"id"`
	Href string `json:"href"`
}

type ResponseEnrollmentCustomizationLDAPPane

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

Response for creating LDAP prestage pane

type ResponseEnrollmentCustomizationList

type ResponseEnrollmentCustomizationList struct {
	TotalCount int                               `json:"totalCount"`
	Results    []ResourceEnrollmentCustomization `json:"results"`
}

type ResponseEnrollmentCustomizationSSOPane

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

Response for creating SSO prestage pane

type ResponseEnrollmentCustomizationTextPane

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

Response for creating text prestage pane

type ResponseEnrollmentCustomizationUpload

type ResponseEnrollmentCustomizationUpload struct {
	Url string `json:"url"`
}

type ResponseEnrollmentHistory

type ResponseEnrollmentHistory struct {
	TotalCount int                         `json:"totalCount"`
	Results    []ResourceEnrollmentHistory `json:"results"`
}

ResponseEnrollmentHistory represents the structure of the enrollment history response

type ResponseError

type ResponseError struct {
	HTTPStatus int             `json:"httpStatus"`
	Errors     []ErrorInstance `json:"errors"`
}

ResponseError represents the structure of an error response from the API

type ResponseFileShareDistributionPointCreatedAndUpdated

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

type ResponseGSXConnectionHistory

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

type ResponseGSXConnectionHistoryList

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

type ResponseIBeaconsList

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

ResponseIBeaconsList represents the response structure for a list of iBeacons.

type ResponseIconUpload

type ResponseIconUpload struct {
	ID   int    `json:"id"`
	URL  string `json:"url"`
	Name string `json:"name"`
}

ResponseIconUpload represents the response from the icon upload endpoint

type ResponseJCDS2File

type ResponseJCDS2File struct {
	URI string `json:"uri"`
}

type ResponseJCDS2List

type ResponseJCDS2List struct {
	FileName string `json:"fileName"` // The name of the file
	Length   int64  `json:"length"`   // The size of the file in bytes
	MD5      string `json:"md5"`      // The MD5 hash of the file
	Region   string `json:"region"`   // The AWS region where the file is stored
	SHA3     string `json:"sha3"`     // The SHA3 hash of the file
}

type ResponseJCDS2UploadCredentials

type ResponseJCDS2UploadCredentials struct {
	AccessKeyID     string `json:"accessKeyID"`
	SecretAccessKey string `json:"secretAccessKey"`
	SessionToken    string `json:"sessionToken"`
	Region          string `json:"region"`
	BucketName      string `json:"bucketName"`
	Path            string `json:"path"`
	UUID            string `json:"uuid"`
}

type ResponseJamfAppCatalogDeploymentCreateAndUpdate

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

type ResponseJamfAppCatalogDeploymentTermsAndConditionsStatus

type ResponseJamfAppCatalogDeploymentTermsAndConditionsStatus struct {
	Accepted       bool   `json:"accepted"`
	AcceptanceTime string `json:"acceptanceTime"`
}

type ResponseJamfAppCatalogGlobalSettings

type ResponseJamfAppCatalogGlobalSettings struct {
	EndUserExperienceSettings JamfAppCatalogDeploymentSubsetNotificationSettings `json:"endUserExperienceSettings"`
}

type ResponseJamfAppCatalogTitleList

type ResponseJamfAppCatalogTitleList struct {
	Size    int                                  `json:"totalCount"`
	Results []ResourceJamfAppCatalogAppInstaller `json:"results"`
}

Struct for paginated response for app installers

type ResponseJamfConnectConfigProfilesList

type ResponseJamfConnectConfigProfilesList struct {
	TotalCount int                                `json:"totalCount"`
	Results    []ResourceJamfConnectConfigProfile `json:"results"`
}

ResponseJamfConnectConfigProfilesList Struct for paginated response for Jamf Connect config profiles

type ResponseJamfConnectError

type ResponseJamfConnectError struct {
	HTTPStatus int                `json:"httpStatus"`
	Errors     []JamfConnectError `json:"errors"`
}

ResponseJamfConnectError struct for Jamf Connect error response

type ResponseJamfProInformation

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

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

type ResponseJamfProtectHistoryList

type ResponseJamfProtectHistoryList struct {
	TotalCount int                          `json:"totalCount"`
	Results    []ResourceJamfProtectHistory `json:"results"`
}

Response Structs

type ResponseJamfProtectPlansList

type ResponseJamfProtectPlansList struct {
	TotalCount int                       `json:"totalCount"`
	Results    []ResourceJamfProtectPlan `json:"results"`
}

type ResponseLDAPServersList

type ResponseLDAPServersList struct {
	Size        int                   `xml:"size"`
	LDAPServers []LDAPServersListItem `xml:"ldap_server"`
}

type ResponseLapsPasswordSet

type ResponseLapsPasswordSet struct {
	LapsUserPasswordList []LapsUserPasswordResponse `json:"lapsUserPasswordList"`
}

ResponseLapsPasswordSet represents the response after setting LAPS passwords

type ResponseLicensedSoftwareList

type ResponseLicensedSoftwareList struct {
	LicensedSoftware []LicensedSoftwareListItem `xml:"licensed_software"`
}

ResponseLicensedSoftwareList represents the response for a list of licensed software.

type ResponseLocalAdminCurrentPassword

type ResponseLocalAdminCurrentPassword struct {
	Password string `json:"password"`
}

Resoponse struct for current password

type ResponseLocalAdminPasswordCapableAccounts

type ResponseLocalAdminPasswordCapableAccounts struct {
	TotalCount int                         `json:"totalCount"`
	Results    []LocalAdminPasswordAccount `json:"results"`
}

Response structs for LAPS capable accounts

type ResponseLocalAdminPasswordFullHistory

type ResponseLocalAdminPasswordFullHistory struct {
	TotalCount int                           `json:"totalCount"`
	Results    []LocalAdminPasswordFullEvent `json:"results"`
}

Response structs for full LAPS history

type ResponseLocalAdminPasswordHistory

type ResponseLocalAdminPasswordHistory struct {
	TotalCount int                             `json:"totalCount"`
	Results    []LocalAdminPasswordHistoryItem `json:"results"`
}

Response structs for password history

type ResponseLocalAdminPasswordPendingRotations

type ResponseLocalAdminPasswordPendingRotations struct {
	TotalCount int                                 `json:"totalCount"`
	Results    []LocalAdminPasswordPendingRotation `json:"results"`
}

Response structs for pending rotations

type ResponseLogFlushingSettings

type ResponseLogFlushingSettings struct {
	RetentionPolicies []LogRetentionPolicy `json:"retentionPolicies"`
	HourOfDay         int                  `json:"hourOfDay"`
}

Resource/Response structs for log flushing settings

type ResponseLogFlushingTaskCreated

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

Response struct for created log flushing task

type ResponseMDMCommand

type ResponseMDMCommand struct {
	ID   string `json:"id,omitempty"`
	Href string `json:"href"`
}

ResponseMDMCommand represents the response structure for the MDM command

type ResponseMDMProfileRenewal

type ResponseMDMProfileRenewal struct {
	UDIDsNotProcessed struct {
		UDIDs []string `json:"udids"`
	} `json:"udidsNotProcessed"`
}

ResponseMDMProfileRenewal represents the response structure for renewing MDM profiles

type ResponseMacApplicationsList

type ResponseMacApplicationsList struct {
	MacApplications []MacApplicationsListItem `xml:"mac_application"`
}

type ResponseMacOSConfigurationProfileCreationUpdate

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

ResponseMacOSConfigurationProfileCreation represents the response structure for a new macOS configuration profile.

type ResponseMacOSConfigurationProfileList

type ResponseMacOSConfigurationProfileList struct {
	Results []MacOSConfigurationProfileListItem `xml:"os_x_configuration_profile,omitempty"`
}

ResponseMacOSConfigurationProfileList represents the response structure for a list of macOS configuration profiles.

type ResponseManagedSoftwareUpdateFeatureToggle

type ResponseManagedSoftwareUpdateFeatureToggle struct {
	Toggle                       bool `json:"toggle"`
	ForceInstallLocalDateEnabled bool `json:"forceInstallLocalDateEnabled"`
	DssEnabled                   bool `json:"dssEnabled"`
	RecipeEnabled                bool `json:"recipeEnabled"`
}

type ResponseManagedSoftwareUpdateList

type ResponseManagedSoftwareUpdateList struct {
	AvailableUpdates ResourceAvailableUpdates `json:"availableUpdates"`
}

type ResponseManagedSoftwareUpdatePlan

type ResponseManagedSoftwareUpdatePlan struct {
	PlanUuid                  string                                        `json:"planUuid,omitempty"`
	Device                    ResponseManagedSoftwareUpdatePlanSubsetDevice `json:"device,omitempty"`
	UpdateAction              string                                        `json:"updateAction,omitempty"`
	VersionType               string                                        `json:"versionType,omitempty"`
	SpecificVersion           string                                        `json:"specificVersion,omitempty"`
	BuildVersion              string                                        `json:"buildVersion,omitempty"`
	MaxDeferrals              int                                           `json:"maxDeferrals,omitempty"`
	ForceInstallLocalDateTime string                                        `json:"forceInstallLocalDateTime,omitempty"`
	RecipeId                  string                                        `json:"recipeId,omitempty"`
	Status                    ResponseManagedSoftwareUpdatePlanSubsetStatus `json:"status,omitempty"`
}

type ResponseManagedSoftwareUpdatePlanCreate

type ResponseManagedSoftwareUpdatePlanCreate struct {
	Plans []ManagedSoftwareUpdatePlanCreateSubsetPlan `json:"plans"`
}

type ResponseManagedSoftwareUpdatePlanList

type ResponseManagedSoftwareUpdatePlanList struct {
	TotalCount int                                 `json:"totalCount"`
	Results    []ResponseManagedSoftwareUpdatePlan `json:"results"`
}

type ResponseManagedSoftwareUpdatePlanSubsetDevice

type ResponseManagedSoftwareUpdatePlanSubsetDevice struct {
	DeviceId   string `json:"deviceId,omitempty"`
	ObjectType string `json:"objectType,omitempty"`
	Href       string `json:"href,omitempty"`
}

type ResponseManagedSoftwareUpdatePlanSubsetStatus

type ResponseManagedSoftwareUpdatePlanSubsetStatus struct {
	State        string   `json:"state,omitempty"`
	ErrorReasons []string `json:"errorReasons"`
}

type ResponseManagedSoftwareUpdatePlansFeatureToggleStatus

type ResponseManagedSoftwareUpdatePlansFeatureToggleStatus struct {
	ToggleOn  *FeatureEnablementToggleStatus `json:"toggleOn"`
	ToggleOff *FeatureEnablementToggleStatus `json:"toggleOff"`
}

ResponseManagedSoftwareUpdatePlansFeatureToggleStatus represents the response structure for the feature toggle status.

type ResponseMobileDeviceApplicationsList

type ResponseMobileDeviceApplicationsList struct {
	MobileDeviceApplications []MobileDeviceApplicationsListItem `xml:"mobile_device_application"`
}

ResponseMobileDeviceApplicationsList represents the response for a list of mobile device applications.

type ResponseMobileDeviceConfigurationProfileCreateAndUpdate

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

ResponseMacOSConfigurationProfileCreation represents the response structure for a new macOS configuration profile.

type ResponseMobileDeviceConfigurationProfilesList

type ResponseMobileDeviceConfigurationProfilesList struct {
	ConfigurationProfiles []MobileDeviceConfigurationProfilesListItem `xml:"configuration_profile"`
}

ResponseMobileDeviceConfigurationProfilesList represents the response for a list of mobile device configuration profiles.

type ResponseMobileDeviceEnrollmentProfilesList

type ResponseMobileDeviceEnrollmentProfilesList struct {
	Size                          int                                      `xml:"size"`
	MobileDeviceEnrollmentProfile []MobileDeviceEnrollmentProfilesListItem `xml:"mobile_device_enrollment_profile"`
}

ResponseMobileDeviceEnrollmentProfilesList represents the response for a list of mobile device enrollment profiles.

type ResponseMobileDeviceExtensionAttributesList

type ResponseMobileDeviceExtensionAttributesList struct {
	Size                           int                                       `xml:"size"`
	MobileDeviceExtensionAttribute []MobileDeviceExtensionAttributesListItem `xml:"mobile_device_extension_attribute"`
}

ResponseMobileDeviceExtensionAttributesList represents the response for a list of mobile device extension attributes.

type ResponseMobileDeviceGroupsList

type ResponseMobileDeviceGroupsList struct {
	Size              int                          `xml:"size"`
	MobileDeviceGroup []MobileDeviceGroupsListItem `xml:"mobile_device_group"`
}

ResponseMobileDeviceGroupsList represents the response for a list of mobile device groups.

type ResponseMobileDeviceList

type ResponseMobileDeviceList struct {
	MobileDevices []MobileDeviceListItem `xml:"mobile_device"`
}

ResponseMobileDevicesList represents the structure for a list of mobile devices.

type ResponseMobileDevicePrestageCreate

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

type ResponseMobileDevicePrestagesList

type ResponseMobileDevicePrestagesList struct {
	TotalCount int                            `json:"totalCount"`
	Results    []ResourceMobileDevicePrestage `json:"results"`
}

type ResponseMobileDeviceProvisioningProfilesList

type ResponseMobileDeviceProvisioningProfilesList struct {
	Size                            int                                        `xml:"size"`
	MobileDeviceProvisioningProfile []MobileDeviceProvisioningProfilesListItem `xml:"mobile_device_provisioning_profile"`
}

ResponseMobileDeviceProvisioningProfilesList represents the response for a list of mobile device provisioning profiles.

type ResponseNetworkSegmentCreatedAndUpdated

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

type ResponseNetworkSegmentList

type ResponseNetworkSegmentList struct {
	Size    int `xml:"size"`
	Results []struct {
		ID              int    `xml:"id"`
		Name            string `xml:"name"`
		StartingAddress string `xml:"starting_address"`
		EndingAddress   string `xml:"ending_address"`
	} `xml:"network_segment"`
}

ResponseNetworkSegmentList represents the response for a list of Network Segments.

type ResponseNotifications

type ResponseNotifications []ResourceNotification

ResponseNotifications represents the JSON structure for a list of notifications

type ResponseOIDCPublicKey

type ResponseOIDCPublicKey struct {
	Keys []ResourceOIDCKey `json:"keys"`
}

ResponseOIDCPublicKeyrepresents the response structure for the OIDC public key.

type ResponseOIDCRedirectURL

type ResponseOIDCRedirectURL struct {
	RedirectURL string `json:"redirectUrl"`
}

ResponseOIDCRedirectURL represents the response structure for the OIDC redirect URL.

type ResponseOnboardingSettings

type ResponseOnboardingSettings struct {
	AccountDrivenUserEnrollmentEnabled bool   `json:"accountDrivenUserEnrollmentEnabled"`
	IdpEnabled                         bool   `json:"idpEnabled"`
	ApnsCertificateExpirationDate      string `json:"apnsCertificateExpirationDate"`
	CloudServicesEnabled               bool   `json:"cloudServicesEnabled"`
	EnrollCustomizationEnabled         bool   `json:"enrollCustomizationEnabled"`
	PrestageEnrollmentEnabled          bool   `json:"prestageEnrollmentEnabled"`
}

ResponseOnboardingSettings represents the structure of the onboarding settings response

type ResponsePackageCreatedAndUpdated

type ResponsePackageCreatedAndUpdated struct {
	ID   string `json:"id,omitempty"`
	Href string `json:"href"`
}

ResponsePackageCreatedAndUpdated represents the response structure for creating and updating a package

type ResponsePackageHistoryList

type ResponsePackageHistoryList struct {
	TotalCount int                      `json:"totalCount"` // The total count attribute
	Results    []ResourcePackageHistory `json:"results"`    // The package history list
}

ResponsePackageHistoryList struct to capture the JSON response for package history list

type ResponsePackagesList

type ResponsePackagesList struct {
	TotalCount int               `json:"totalCount"` // The total count attribute
	Results    []ResourcePackage `json:"results"`    // The package list
}

ResponsePackagesList struct to capture the JSON response for packages list

type ResponsePaginated

type ResponsePaginated struct {
	Size    int           `json:"totalCount"`
	Results []interface{} `json:"results"`
}

type ResponsePatchExternalSourcesList

type ResponsePatchExternalSourcesList struct {
	PatchExternalSources []ResponsePatchExternalSourcesListItem `xml:"patch_external_source" json:"patch_external_source"`
}

ResponsePatchExternalSourcesList represents the list of patch external sources.

type ResponsePatchExternalSourcesListItem

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

ResponsePatchExternalSourcesListItem represents a single external source item.

type ResponsePatchPoliciesList

type ResponsePatchPoliciesList struct {
	TotalCount int                             `json:"totalCount"`
	Results    []ResourcePatchPolicyJamfProAPI `json:"results"`
}

ResponsePatchPoliciesList represents the paginated response for patch policies

type ResponsePatchPolicyCreate

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

ResponsePatchPolicyCreate represents the response when creating a patch policy

type ResponsePatchPolicyDashboardStatus

type ResponsePatchPolicyDashboardStatus struct {
	OnDashboard bool `json:"onDashboard"`
}

ResponsePatchPolicyDashboardStatus represents the response for checking if a patch policy is on the dashboard

type ResponsePatchSoftwareTitleConfigurationCreate

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

type ResponsePatchSoftwareTitleConfigurationList

type ResponsePatchSoftwareTitleConfigurationList []ResourcePatchSoftwareTitleConfiguration

type ResponsePatchSoftwareTitleDefinitionsList

type ResponsePatchSoftwareTitleDefinitionsList struct {
	TotalCount int                                    `json:"totalCount"`
	Results    []ResourcePatchSoftwareTitleDefinition `json:"results"`
}

Response struct for patch software title definitions list

type ResponsePatchSoftwareTitleDependenciesList

type ResponsePatchSoftwareTitleDependenciesList struct {
	TotalCount int                                    `json:"totalCount"`
	Results    []ResourcePatchSoftwareTitleDependency `json:"results"`
}

Response struct for patch software title configuration dependencies

type ResponsePatchSoftwareTitleExtensionAttributesList

type ResponsePatchSoftwareTitleExtensionAttributesList []ResourcePatchSoftwareTitleExtensionAttribute

ResponsePatchSoftwareTitleExtensionAttributesList represents a list of extension attributes

type ResponsePoliciesList

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

Policies List Structs

type ResponsePolicyCreateAndUpdate

type ResponsePolicyCreateAndUpdate struct {
	XMLName xml.Name `xml:"policy"`
	ID      int      `xml:"id"`
}

ResourcePolicyCreateAndUpdate represents the response structure for creating or updating a policy

type ResponsePolicyListItem

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

type ResponsePrestagePanesList

type ResponsePrestagePanesList struct {
	Panels []PrestagePaneSummary `json:"panels"`
}

ResponsePrestagePanesList represents the structure for a list of prestage panes

type ResponsePrinterCreateAndUpdate

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

type ResponsePrintersList

type ResponsePrintersList struct {
	Size    int                `xml:"size"`
	Printer []PrintersListItem `xml:"printer"`
}

ResponsePrintersList represents the response for a list of printers.

type ResponseRecoveryLockPassword

type ResponseRecoveryLockPassword struct {
	RecoveryLockPassword string `json:"recoveryLockPassword"`
}

ResponseRecoveryLockPassword represents the response structure for a recovery lock password.

type ResponseRemovableMacAddressesList

type ResponseRemovableMacAddressesList struct {
	Size         int                           `xml:"size"`
	RemovableMac []ResourceRemovableMacAddress `xml:"removable_mac_address"`
}

Structs for Removable MAC Addresses List

type ResponseRemoveMDMProfile

type ResponseRemoveMDMProfile struct {
	DeviceID    string `json:"deviceId"`
	CommandUUID string `json:"commandUuid"`
}

ResponseRemoveMDMProfile represents the response structure for removing an MDM profile.

type ResponseRestrictedSoftwareCreateAndUpdate

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

type ResponseRestrictedSoftwaresList

type ResponseRestrictedSoftwaresList struct {
	Size               int                          `xml:"size"`
	RestrictedSoftware []RestrictedSoftwareListItem `xml:"restricted_software_title"`
}

Structs for Restricted Software List

type ResponseReturnToServiceConfiguration

type ResponseReturnToServiceConfiguration struct {
	ID            string `json:"id"`
	DisplayName   string `json:"displayName"`
	WifiProfileID string `json:"wifiProfileId"`
}

Response

type ResponseReturnToServiceCreate

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

type ResponseReturnToServiceList

type ResponseReturnToServiceList struct {
	TotalCount int                                    `json:"totalCount"`
	Results    []ResponseReturnToServiceConfiguration `json:"results"`
}

Structs to support JSON data structure

type ResponseSLASAStatus

type ResponseSLASAStatus struct {
	SLASAAcceptanceStatus string `json:"slasaAcceptanceStatus"`
}

ResponseSLASAStatus represents the response structure for the SLASA acceptance status.

type ResponseSSOFailover

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

type ResponseScriptCreate

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

Response format struct for create function

type ResponseScriptsList

type ResponseScriptsList struct {
	Size    int              `json:"totalCount"`
	Results []ResourceScript `json:"results"`
}

Struct for paginated response for scripts

type ResponseSelfServiceBranding

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

ResponseSelfServiceBranding represents the response from the branding upload endpoint

type ResponseSelfServiceBrandingList

type ResponseSelfServiceBrandingList struct {
	TotalCount int                                 `json:"totalCount"`
	Results    []ResourceSelfServiceBrandingDetail `json:"results"`
}

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

type ResponseSitesList

type ResponseSitesList struct {
	Size int                  `xml:"size"`
	Site []SharedResourceSite `xml:"site"`
}

type ResponseSmartComputerGroupCreate

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

ResponseSmartComputerGroupCreate represents the response structure for creating a Smart Computer Group

type ResponseSmartComputerGroupListItem

type ResponseSmartComputerGroupListItem struct {
	ID         string `json:"id"`
	Name       string `json:"name"`
	SmartGroup bool   `json:"smartGroup"`
}

ResponseSmartComputerGroupListItem represents individual Smart Computer Group items

type ResponseSmartComputerGroupMembership

type ResponseSmartComputerGroupMembership struct {
	Members []int `json:"members"`
}

ResponseSmartComputerGroupMembership represents the membership response for a Smart Computer Group

type ResponseSmartComputerGroupsList

type ResponseSmartComputerGroupsList []ResponseSmartComputerGroupListItem

ResponseSmartComputerGroupsList represents the response for list of Smart Computer Groups

type ResponseSmartComputerGroupsListV2

type ResponseSmartComputerGroupsListV2 struct {
	TotalCount int                            `json:"totalCount"`
	Results    []ResourceSmartComputerGroupV2 `json:"results"`
}

ResponseSmartComputerGroupsListV2 represents the paginated response for Smart Computer Groups v2

type ResponseSoftwareUpdateServersList

type ResponseSoftwareUpdateServersList struct {
	XMLName xml.Name                        `xml:"software_update_servers"`
	Size    int                             `xml:"size"`
	Servers []SoftwareUpdateServersListItem `xml:"software_update_server"`
}

Structs for Software Update Servers Response

type ResponseSsoSubsetEnrollmentCustomizationDependencyList

type ResponseSsoSubsetEnrollmentCustomizationDependencyList struct {
	Dependencies []SsoSubsetSubsetEnrollmentCustomizationDependency
}

type ResponseStatusItems

type ResponseStatusItems struct {
	StatusItems []StatusItem `json:"statusItems"`
}

ResponseStatusItems represents the response structure for status items.

type ResponseUpdateOnboardingSettings

type ResponseUpdateOnboardingSettings struct {
	ID              string                   `json:"id"`
	Enabled         bool                     `json:"enabled"`
	OnboardingItems []OnboardingItemResponse `json:"onboardingItems"`
}

ResponseUpdateOnboardingSettings represents the response body after updating onboarding settings

type ResponseUploadAttachment

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

ResponseUploadAttachment represents the response structure for uploading an attachment.

type ResponseUserExtensionAttributesList

type ResponseUserExtensionAttributesList struct {
	XMLName                 xml.Name                          `xml:"user_extension_attributes"`
	Size                    int                               `xml:"size"`
	UserExtensionAttributes []UserExtensionAttributesListItem `xml:"user_extension_attribute"`
}

type ResponseUserGroupCreateAndUpdate

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

type ResponseUserGroupsList

type ResponseUserGroupsList struct {
	Size      int                  `xml:"size"`
	UserGroup []UserGroupsListItem `xml:"user_group"`
}

ResponseUserGroupsList represents the structure for a list of user groups.

type ResponseUsersList

type ResponseUsersList struct {
	Size  int             `xml:"size"`
	Users []UsersListItem `xml:"user"`
}

type ResponseVPPAccountsList

type ResponseVPPAccountsList struct {
	Size     int                   `xml:"size"`
	Accounts []VPPAccountsListItem `xml:"vpp_account"`
}

Structs for VPP Accounts Response

type ResponseVPPAssignmentsList

type ResponseVPPAssignmentsList struct {
	VPPAssignments []VPPAssignmentsListItem `xml:"vpp_assignment"`
}

Struct for the list of VPP assignments

type ResponseVolumePurchasingContentList

type ResponseVolumePurchasingContentList struct {
	TotalCount int                             `json:"totalCount"`
	Results    []VolumePurchasingSubsetContent `json:"results"`
}

type ResponseVolumePurchasingList

type ResponseVolumePurchasingList struct {
	TotalCount int                                `json:"totalCount"`
	Results    []ResourceVolumePurchasingLocation `json:"results"`
}

ResponseVolumePurchasingList represents the paginated response for volume purchasing locations.

type ResponseVolumePurchasingLocationCreate

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

VolumePurchasingLocationCreateResponse represents the response for creating a volume purchasing location.

type ResponseVolumePurchasingSubscriptionsList

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

type ResponseWebhooksList

type ResponseWebhooksList struct {
	Size     int                `xml:"size"`
	Webhooks []WebhooksListItem `xml:"webhook"`
}

Structs for Webhooks Response

type RestrictedSoftwareListItem

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

type RestrictedSoftwareSubsetGeneral

type RestrictedSoftwareSubsetGeneral 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                  *SharedResourceSite `xml:"site"`
}

type RestrictedSoftwareSubsetScope

type RestrictedSoftwareSubsetScope struct {
	AllComputers   bool                                    `xml:"all_computers"`
	Computers      []RestrictedSoftwareSubsetScopeEntity   `xml:"computers>computer"`
	ComputerGroups []RestrictedSoftwareSubsetScopeEntity   `xml:"computer_groups>computer_group"`
	Buildings      []RestrictedSoftwareSubsetScopeEntity   `xml:"buildings>building"`
	Departments    []RestrictedSoftwareSubsetScopeEntity   `xml:"departments>department"`
	Exclusions     RestrictedSoftwareSubsetScopeExclusions `xml:"exclusions"`
}

type RestrictedSoftwareSubsetScopeEntity

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

type RestrictedSoftwareSubsetScopeExclusions

type RestrictedSoftwareSubsetScopeExclusions struct {
	Computers      []RestrictedSoftwareSubsetScopeEntity `xml:"computers>computer"`
	ComputerGroups []RestrictedSoftwareSubsetScopeEntity `xml:"computer_groups>computer_group"`
	Buildings      []RestrictedSoftwareSubsetScopeEntity `xml:"buildings>building"`
	Departments    []RestrictedSoftwareSubsetScopeEntity `xml:"departments>department"`
	Users          []RestrictedSoftwareSubsetScopeEntity `xml:"users>user"`
}

type ReturnToService

type ReturnToService struct {
	Enabled         bool   `json:"enabled"`
	MDMProfileData  string `json:"mdmProfileData,omitempty"`
	WifiProfileData string `json:"wifiProfileData,omitempty"`
}

ReturnToService represents the return to service structure in the erase device command

type SharedAdvancedSearchSubsetDisplayField

type SharedAdvancedSearchSubsetDisplayField struct {
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type SharedContainerCriteria

type SharedContainerCriteria struct {
	Size      int                    `json:"size,omitempty" xml:"size,omitempty"`
	Criterion []SharedSubsetCriteria `json:"criterion,omitempty" xml:"criterion,omitempty"`
}

type SharedDeviceConfiguration

type SharedDeviceConfiguration struct {
	QuotaSize     int `json:"quotaSize"`
	ResidentUsers int `json:"residentUsers"`
}

SharedDeviceConfiguration represents the shared device configuration structure in the settings command

type SharedResourcResponseError

type SharedResourcResponseError struct {
	HTTPStatus int                         `json:"httpStatus"`
	Errors     []SharedResourceErrorDetail `json:"errors"`
}

ResponseError represents the structure of the error response when the force stop request fails.

type SharedResourceCategory

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

type SharedResourceErrorDetail

type SharedResourceErrorDetail struct {
	Device      int    `json:"device"`
	Group       int    `json:"group"`
	Reason      string `json:"reason"`
	Code        string `json:"code"`
	Field       string `json:"field"`
	Description string `json:"description"`
	ID          string `json:"id"`
}

ErrorDetail represents the details of an error in the response Used by jamfpro api MDM and managed software updates

type SharedResourceLdapServer

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

type SharedResourceSelfServiceCategories

type SharedResourceSelfServiceCategories struct {
	Category []SharedResourceSelfServiceCategory
}

type SharedResourceSelfServiceCategory

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

type SharedResourceSelfServiceIcon

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

type SharedResourceSite

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

type SharedResourceSiteProAPI

type SharedResourceSiteProAPI struct {
	ID   string `json:"id,omitempty"`
	Name string `json:"name,omitempty"`
}

type SharedSubsetCriteria

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

type SharedSubsetCriteriaJamfProAPI

type SharedSubsetCriteriaJamfProAPI struct {
	Name         string `json:"name"`
	Priority     int    `json:"priority"`
	AndOr        string `json:"andOr"`
	SearchType   string `json:"searchType"`
	Value        string `json:"value"`
	OpeningParen *bool  `json:"openingParen,omitempty"`
	ClosingParen *bool  `json:"closingParen,omitempty"`
}

SharedSubsetCriteriaJamfProAPI represents the criteria for an Search item for jamfprom api

type SoftwareUpdateServersListItem

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

type SoftwareUpdateSettings

type SoftwareUpdateSettings struct {
	RecommendationCadence string `json:"recommendationCadence"`
}

SoftwareUpdateSettings represents the software update settings structure in the settings command

type SsoSettingsSubsetEnrollmentSsoConfig

type SsoSettingsSubsetEnrollmentSsoConfig struct {
	Hosts          []string `json:"hosts"`
	ManagementHint string   `json:"managementHint"`
}

type SsoSubsetSubsetEnrollmentCustomizationDependency

type SsoSubsetSubsetEnrollmentCustomizationDependency struct {
	Name              string `json:"name"`
	HumanReadableName string `json:"humanReadableName"`
	Hyperlink         string `json:"hyperlink"`
}

type StatusItem

type StatusItem struct {
	Key            string `json:"key"`
	Value          string `json:"value"`
	LastUpdateTime string `json:"lastUpdateTime"`
}

StatusItem represents a single status item in the status report.

type SubsetOnboardingItemRequest

type SubsetOnboardingItemRequest struct {
	SelfServiceEntityType string `json:"selfServiceEntityType"`
	ID                    string `json:"id,omitempty"`
	EntityID              string `json:"entityId"`
	Priority              int    `json:"priority"`
}

SubsetOnboardingItemRequest represents an item in the onboarding configuration request

type UserExtensionAttributesListItem

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

type UserGroupSubsetUserItem

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

UserGroupUserItem represents a user of a user group.

type UserGroupsListItem

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

type UserSubsetExtensionAttribute

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

type UserSubsetExtensionAttributes

type UserSubsetExtensionAttributes struct {
	Attributes []UserSubsetExtensionAttribute `xml:"extension_attribute"`
}

type UserSubsetLDAPServer

type UserSubsetLDAPServer struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}
type UserSubsetLinks struct {
	Computers         []UserSubsetLinksListItem `xml:"computers>computer"`
	Peripherals       []UserSubsetLinksListItem `xml:"peripherals>peripheral"`
	MobileDevices     []UserSubsetLinksListItem `xml:"mobile_devices>mobile_device"`
	VPPAssignments    []UserSubsetLinksListItem `xml:"vpp_assignments>vpp_assignment"`
	TotalVPPCodeCount int                       `xml:"total_vpp_code_count"`
}

type UserSubsetLinksListItem

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

type UsersListItem

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

type VPPAccountsListItem

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

type VPPAssignmentSubsetGeneral

type VPPAssignmentSubsetGeneral struct {
	ID                  int    `xml:"id"`
	Name                string `xml:"name"`
	VPPAdminAccountID   int    `xml:"vpp_admin_account_id"`
	VPPAdminAccountName string `xml:"vpp_admin_account_name"`
}

type VPPAssignmentSubsetScope

type VPPAssignmentSubsetScope struct {
	AllJSSUsers   bool                                `xml:"all_jss_users"`
	JSSUsers      []VPPSubsetVPPUser                  `xml:"jss_users>user"`
	JSSUserGroups []VPPSubsetVPPUserGroup             `xml:"jss_user_groups>user_group"`
	Limitations   VPPAssignmentSubsetScopeLimitations `xml:"limitations"`
	Exclusions    VPPAssignmentSubsetScopeExclusions  `xml:"exclusions"`
}

type VPPAssignmentSubsetScopeExclusions

type VPPAssignmentSubsetScopeExclusions struct {
	JSSUsers      []VPPSubsetVPPUser      `xml:"jss_users>user"`
	UserGroups    []VPPSubsetVPPUserGroup `xml:"user_groups>user_group"`
	JSSUserGroups []VPPSubsetVPPUserGroup `xml:"jss_user_groups>user_group"`
}

type VPPAssignmentSubsetScopeLimitations

type VPPAssignmentSubsetScopeLimitations struct {
	UserGroups []VPPSubsetVPPUserGroup `xml:"user_groups>user_group"`
}

type VPPAssignmentsListItem

type VPPAssignmentsListItem struct {
	ID                int    `xml:"id"`
	VPPAdminAccountID int    `xml:"vpp_admin_account_id"`
	Name              string `xml:"name"`
}

type VPPSubsetVPPApp

type VPPSubsetVPPApp struct {
	AdamID int    `xml:"adam_id"`
	Name   string `xml:"name"`
}

type VPPSubsetVPPUser

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

Struct for VPP user

type VPPSubsetVPPUserGroup

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

Struct for VPP user group

type VolumePurchasingLocationSubsetBody

type VolumePurchasingLocationSubsetBody 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 VolumePurchasingSubscriptionSubsetExternalRecipients

type VolumePurchasingSubscriptionSubsetExternalRecipients struct {
	Name  string `json:"name,omitempty"`
	Email string `json:"email,omitempty"`
}

type VolumePurchasingSubscriptionSubsetInternalRecipients

type VolumePurchasingSubscriptionSubsetInternalRecipients struct {
	AccountId string `json:"accountId,omitempty"`
	Frequency string `json:"frequency,omitempty"`
}

type VolumePurchasingSubsetContent

type VolumePurchasingSubsetContent 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 WebhooksListItem

type WebhooksListItem 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