jamfpro

package
v1.13.2 Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2024 License: MPL-2.0 Imports: 22 Imported by: 553

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

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"

Variables

This section is empty.

Functions

func BoolPtr added in v1.9.3

func BoolPtr(b bool) *bool

BoolPtr returns a pointer to a bool value

func FalsePtr added in v1.9.3

func FalsePtr() *bool

FalsePtr returns a pointer to a false bool value

func IncrementStringID added in v1.9.3

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 added in v1.7.10

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

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

func TruePtr added in v1.9.3

func TruePtr() *bool

TruePtr returns a pointer to a true bool value

Types

type AccountSubsetPrivileges added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ActiveCertificateAuthoritySubsetSignature added in v1.0.0

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

type AdvancedComputerSearchContainerComputers added in v1.0.0

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

type AdvancedComputerSearchListItem added in v1.0.0

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

type AdvancedComputerSearchSubsetComputer added in v1.0.0

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

type AdvancedUserSearchContainerUsers added in v1.0.0

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

type AdvancedUserSearchListItem added in v1.0.0

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

type AdvancedUserSearchSubsetUser added in v1.0.0

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

type Application added in v0.0.61

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

type ApplicationAttributes added in v1.7.1

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 added in v1.7.1

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

ApplicationConfiguration represents the application configuration structure in the settings command

type ApplicationEntry added in v1.5.0

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

type BYOProfileListItem added in v1.0.0

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

type BYOProfileSubsetGeneral added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ClassListItem added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ClassSubsetMobileDeviceGroup added in v1.0.0

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

type ClassSubsetMobileDeviceGroupID added in v1.0.0

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

type ClassSubsetMobileDevices added in v1.0.0

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

type ClassSubsetStudent added in v1.0.0

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

type ClassSubsetStudentGroupIDs added in v1.0.0

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

type ClassSubsetTeacher added in v1.0.0

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

type ClassSubsetTeacherGroupIDs added in v1.0.0

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

type ClassSubsetTeacherIDs added in v1.0.0

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

type Client

type Client struct {
	HTTP *httpclient.Client
}

func BuildClient added in v1.3.0

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

func BuildClientWithConfigFile added in v1.3.1

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 added in v1.3.1

func BuildClientWithEnv() (*Client, error)

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

func (*Client) AcceptJamfAppCatalogAppInstallerTermsAndConditions added in v1.10.0

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 added in v1.9.3

func (c *Client) AcceptPatchManagementDisclaimer() error

AcceptPatchManagementDisclaimer accepts the Patch Management disclaimer

func (*Client) AcceptSLASA added in v1.9.0

func (c *Client) AcceptSLASA() error

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

func (*Client) AddPatchPolicyToDashboard added in v1.9.3

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

AddPatchPolicyToDashboard adds a patch policy to the dashboard

func (*Client) AssignManifestToPackageByID added in v1.7.4

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) CreateAccount added in v1.0.0

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

CreateAccountByID creates an Account using its ID

func (*Client) CreateAccountDrivenUserEnrollmentAccessGroup added in v1.4.0

Creates Account Driven User Enrollment Access Group from ResourceScript struct

func (*Client) CreateAccountGroup added in v1.0.0

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

CreateAccountGroupByID creates an Account Group using its ID

func (*Client) CreateAdvancedComputerSearch added in v0.0.36

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 added in v1.0.0

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

CreateAdvancedMobileDeviceSearch creates a new Advanced Mobile Device Search

func (*Client) CreateAdvancedUserSearch added in v0.0.44

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

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

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

func (*Client) CreateApiIntegration added in v0.0.13

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

CreateApiIntegration creates a new API integration

func (*Client) CreateBYOProfile added in v0.0.50

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

CreateBYOProfile creates a new BYO profile.

func (*Client) CreateBuilding added in v0.0.9

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

CreateBuilding creates a new building in Jamf Pro

func (*Client) CreateBuildingResourceHistoryByID added in v0.0.79

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

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

func (*Client) CreateCategory added in v0.0.45

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

CreateCategory creates a new category

func (*Client) CreateClass added in v1.0.0

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

CreateClassesByID creates a new class with the given details.

func (*Client) CreateCloudIdentityProvider added in v0.0.80

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

CreateCloudIdentityProvider creates a new Cloud Identity Provider.

func (*Client) CreateComputer added in v0.0.61

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

CreateComputer creates a new computer.

func (*Client) CreateComputerExtensionAttribute added in v0.0.27

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

CreateComputerExtensionAttribute creates a new computer extension attribute

func (*Client) CreateComputerGroup added in v0.0.16

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

CreateComputerGroup creates a new computer group.

func (*Client) CreateComputerInventoryCollectionSettingsCustomPath added in v0.0.53

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

CreateComputerInventoryCollectionSettingsCustomPath creates a custom path for computer inventory collection settings.

func (*Client) CreateComputerInvitation added in v0.0.56

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

CreateComputerInvitation creates a new computer invitation.

func (*Client) CreateComputerPrestage added in v0.0.49

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

CreateComputerPrestage creates a new computer prestage with the given details.

func (*Client) CreateDepartment added in v0.0.10

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

CreateDepartment creates a new department.

func (*Client) CreateDirectoryBinding added in v0.0.59

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

CreateDirectoryBinding creates a new directory binding.

func (*Client) CreateDiskEncryptionConfiguration added in v0.0.57

CreateDiskEncryptionConfiguration creates a new disk encryption configuration.

func (*Client) CreateDistributionPoint added in v0.0.58

CreateDistributionPoint creates a new distribution point.

func (*Client) CreateDockItem added in v1.0.0

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

CreateDockItems creates a new dock item.

func (*Client) CreateEbook added in v0.0.63

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

CreateEbook creates a new ebook.

func (*Client) CreateEnrollmentCustomization added in v1.0.4

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

Creates new resource enrollment customization

func (*Client) CreateExternalPatchSource added in v1.5.8

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

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

func (*Client) CreateIBeacon added in v0.0.66

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

CreateIBeacon creates a new iBeacon in Jamf Pro.

func (*Client) CreateJCDS2PackageV2 added in v1.3.0

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

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

CreateJamfApiRole creates a new Jamf API role

func (*Client) CreateJamfAppCatalogAppInstallerDeployment added in v1.10.1

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

Creates Jamf App Catalog Deployment from ResponseJamfAppCatalogDeploymentCreateAndUpdate struct

func (*Client) CreateJamfProtectAPIConfiguration added in v1.9.2

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

CreateJamfProtectAPIConfiguration registers a Jamf Protect API configuration with Jamf Pro

func (*Client) CreateJamfProtectIntegration added in v1.9.2

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

func (*Client) CreateLDAPServer added in v0.0.67

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

CreateLDAPServer creates a new LDAP server in Jamf Pro.

func (*Client) CreateLicensedSoftware added in v0.0.68

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

CreateLicensedSoftware creates a new licensed software item in Jamf Pro.

func (*Client) CreateMacApplication added in v0.0.64

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

CreateMacApplication creates a new Mac Application.

func (*Client) CreateMacOSConfigurationProfile added in v0.0.11

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 added in v1.5.0

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

CreateManagedSoftwareUpdatePlanByDeviceID Creates Managed Software Update Plan by Device ID

func (*Client) CreateManagedSoftwareUpdatePlanByGroupID added in v1.5.0

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

CreateManagedSoftwareUpdatePlanByDeviceGroupID creates a managed software update plan by group ID

func (*Client) CreateMobileDevice added in v0.0.83

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

CreateMobileDevice creates a new mobile device device.

func (*Client) CreateMobileDeviceApplication added in v0.0.69

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

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

func (*Client) CreateMobileDeviceConfigurationProfile added in v0.0.72

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

func (*Client) CreateMobileDeviceEnrollmentProfile added in v0.0.72

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

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

func (*Client) CreateMobileDeviceGroup added in v0.0.75

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

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

func (*Client) CreateMobileDevicePrestage added in v1.0.4

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

CreateMobileDevicePrestage creates a new mobile prestage and returns the id

func (*Client) CreateMobileDeviceProvisioningProfile added in v1.0.0

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

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

func (*Client) CreateMobileDeviceProvisioningProfileByName added in v0.0.76

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

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

func (*Client) CreateMobileDeviceProvisioningProfileByUUID added in v0.0.76

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

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

func (*Client) CreateMobileExtensionAttribute added in v0.0.72

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

CreateMobileExtensionAttribute creates a new mobile device extension attribute.

func (*Client) CreateNetworkSegment added in v0.0.74

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

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

func (*Client) CreatePackage added in v1.3.0

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

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

CreatePatchPolicy creates a new patch policy.

func (*Client) CreatePatchSoftwareTitleConfiguration added in v1.0.4

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

CreatePatchSoftwareTitleConfiguration Creates a new PatchSoftwareTitleConfiguration

func (*Client) CreatePolicy added in v1.0.0

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

CreatePolicy creates a new policy.

func (*Client) CreatePrinter added in v1.0.0

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

CreatePrinters creates a new printer on the Jamf Pro server.

func (*Client) CreateRemovableMACAddress added in v0.0.86

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

CreateRemovableMACAddress creates a new removable MAC address.

func (*Client) CreateRestrictedSoftware added in v0.0.86

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

CreateRestrictedSoftware creates a new restricted software entry in Jamf Pro.

func (*Client) CreateReturnToServiceConfiguration added in v1.7.0

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

CreateReturnToServiceConfiguration creates a new Return to Service configuration.

func (*Client) CreateScript added in v0.0.96

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

Creates script from ResourceScript struct

func (*Client) CreateSelfServiceBrandingMacOS added in v0.0.49

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

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

func (*Client) CreateSite added in v0.0.32

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

CreateSite creates a new site.

func (*Client) CreateSmartComputerGroup added in v1.13.0

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

CreateSmartComputerGroup creates a new Smart Computer Group

func (*Client) CreateSoftwareUpdateServer added in v0.0.86

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

CreateSoftwareUpdateServer creates a new software update server.

func (*Client) CreateUser added in v0.0.81

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

CreateUser creates a new user.

func (*Client) CreateUserExtensionAttribute added in v0.0.83

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

CreateUserExtensionAttribute creates a new user extension attribute.

func (*Client) CreateUserGroup added in v0.0.80

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

CreateUserGroup creates a new user group.

func (*Client) CreateVPPAccount added in v0.0.86

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

CreateVPPAccount creates a new VPP account.

func (*Client) CreateVPPAssignment added in v0.0.88

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

CreateVPPAssignment creates a new VPP assignment

func (*Client) CreateVolumePurchasingLocation added in v0.0.86

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

CreateVolumePurchasingLocation creates a new volume purchasing location.

func (*Client) CreateVolumePurchasingSubscription added in v0.0.52

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

CreateVolumePurchasingSubscription creates a new volume purchasing subscription

func (*Client) CreateWebhook added in v0.0.86

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

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

DeleteAccountByName deletes an Account using its name.

func (*Client) DeleteAccountDrivenUserEnrollmentAccessGroupByID added in v1.4.0

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

DeleteAccountDrivenUserEnrollmentAccessGroupByID deletes an ADUE access group with given id

func (*Client) DeleteAccountDrivenUserEnrollmentAccessGroupByName added in v1.4.0

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

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

func (*Client) DeleteAccountGroupByID added in v0.0.14

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

DeleteAccountGroupByID deletes an Account Group using its ID.

func (*Client) DeleteAccountGroupByName added in v0.0.14

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

DeleteAccountGroupByName deletes an Account Group using its name.

func (*Client) DeleteAdvancedComputerSearchByID added in v0.0.36

func (c *Client) DeleteAdvancedComputerSearchByID(id 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 added in v0.0.36

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

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

DeleteAdvancedMobileDeviceSearchByID deletes an Advanced Mobile Device Search by ID

func (*Client) DeleteAdvancedUserSearchByID added in v0.0.44

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

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

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

DeleteAllowedFileExtensionByID deletes an existing allowed file extension by ID

func (*Client) DeleteApiIntegrationByID added in v0.0.13

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

DeleteApiIntegrationByID deletes an API integration by its ID

func (*Client) DeleteApiIntegrationByName added in v0.0.13

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

DeleteApiIntegrationByName deletes an API integration by its display name

func (*Client) DeleteAttachmentByIDAndComputerID added in v0.0.84

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

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

func (*Client) DeleteBYOProfileByID added in v0.0.50

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

DeleteBYOProfileByID deletes a BYO profile by its ID.

func (*Client) DeleteBYOProfileByName added in v0.0.50

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

DeleteBYOProfileByName deletes a BYO profile by its name.

func (*Client) DeleteBuildingByID added in v0.0.12

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

DeleteBuildingByID deletes a building in Jamf Pro by its ID.

func (*Client) DeleteBuildingByName added in v0.0.12

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

DeleteBuildingByNameByID deletes a building in Jamf Pro by its name.

func (*Client) DeleteCSATokenExchange added in v1.0.1

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

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

DeleteCategoryByID deletes a category by its ID

func (*Client) DeleteCategoryByName added in v0.0.96

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

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

func (*Client) DeleteClassByID added in v0.0.51

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

DeleteClassByID deletes an existing class with the given ID.

func (*Client) DeleteClassByName added in v0.0.51

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

DeleteClassByName deletes a class by its name.

func (*Client) DeleteCloudIdentityProviderByID added in v0.0.96

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

DeleteCloudIdentityProviderById deletes a Cloud Identity Provider by its ID.

func (*Client) DeleteComputerByID added in v0.0.61

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

DeleteComputerByID deletes an existing Computer by its ID

func (*Client) DeleteComputerByName added in v0.0.61

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

DeleteComputerByName deletes an existing computer by its name

func (*Client) DeleteComputerExtensionAttributeByID added in v0.0.27

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

DeleteComputerExtensionAttributeByID deletes a computer extension attribute by its ID

func (*Client) DeleteComputerExtensionAttributeByName added in v1.11.0

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

DeleteComputerExtensionAttributeByName deletes a computer extension attribute by its name

func (*Client) DeleteComputerGroupByID added in v0.0.16

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

DeleteComputerGroupByID deletes a computer group by its ID.

func (*Client) DeleteComputerGroupByName added in v0.0.16

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

DeleteComputerGroupByName deletes a computer group by its name.

func (*Client) DeleteComputerInventoryByID added in v0.0.84

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

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

func (*Client) DeleteComputerInventoryCollectionSettingsCustomPathByID added in v0.0.53

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

DeleteComputerInventoryCollectionSettingsCustomPathByID deletes a custom path by ID.

func (*Client) DeleteComputerInvitationByID added in v0.0.56

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

DeleteComputerInvitationByID deletes a computer invitation by its ID.

func (*Client) DeleteComputerPrestageByID added in v0.0.49

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

DeleteComputerPrestageByID deletes a computer prestage by its ID

func (*Client) DeleteComputerPrestageByName added in v0.0.49

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

DeleteComputerPrestageByNameByID deletes a computer prestage by its name.

func (*Client) DeleteDepartmentByID added in v0.0.10

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

DeleteDepartmentByID Deletes department with given id

func (*Client) DeleteDepartmentByName added in v0.0.10

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

DeleteDepartmentByName deletes a department with given name, leverages GetDepartmentByName

func (*Client) DeleteDirectoryBindingByID added in v0.0.59

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

DeleteDirectoryBindingByID deletes a directory binding by its ID.

func (*Client) DeleteDirectoryBindingByName added in v0.0.59

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

DeleteDirectoryBindingByName deletes a directory binding by its name.

func (*Client) DeleteDiskEncryptionConfigurationByID added in v0.0.57

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

DeleteDiskEncryptionConfigurationByID deletes a disk encryption configuration by its ID.

func (*Client) DeleteDiskEncryptionConfigurationByName added in v0.0.57

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

DeleteDiskEncryptionConfigurationByName deletes a disk encryption configuration by its name.

func (*Client) DeleteDistributionPointByID added in v0.0.58

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

DeleteDistributionPointByID deletes a distribution point by its ID.

func (*Client) DeleteDistributionPointByName added in v0.0.58

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

DeleteDistributionPointByName deletes a distribution point by its name.

func (*Client) DeleteDockItemByID added in v1.0.0

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

DeleteDockItemsByID deletes a dock item by its ID.

func (*Client) DeleteDockItemByName added in v1.0.0

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

DeleteDockItemsByName deletes a dock item by its name.

func (*Client) DeleteEbookByID added in v0.0.63

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

DeleteEbookByID deletes a ebook by its ID.

func (*Client) DeleteEbookByName added in v0.0.63

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

DeleteEbookByName deletes a ebook by its name.

func (*Client) DeleteEnrollmentCustomizationByID added in v1.0.4

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

Deletes resource enrollment customization by id

func (*Client) DeleteExternalPatchSourceByID added in v1.5.8

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

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

func (*Client) DeleteIBeaconByID added in v0.0.66

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

DeleteIBeaconByID deletes an iBeacon by its ID in Jamf Pro.

func (*Client) DeleteIBeaconByName added in v0.0.66

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

DeleteIBeaconByName deletes an iBeacon by its name in Jamf Pro.

func (*Client) DeleteJCDS2PackageV2 added in v1.3.18

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

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

func (*Client) DeleteJamfApiRoleByID added in v0.0.12

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

DeleteJamfApiRoleByID deletes a Jamf API role by its ID

func (*Client) DeleteJamfApiRoleByName added in v0.0.12

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

DeleteJamfApiRoleByName deletes a Jamf API role by its display name

func (*Client) DeleteJamfAppCatalogAppInstallerDeploymentByID added in v1.10.1

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

DeleteJamfAppCatalogDeploymentByID deletes deployment by provided ID & returns ResponseJamfAppCatalogDeploymentCreateAndUpdate

func (*Client) DeleteJamfProtectIntegration added in v1.0.4

func (c *Client) DeleteJamfProtectIntegration() error

func (*Client) DeleteLDAPServerByID added in v0.0.67

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

DeleteLDAPServerByID deletes an LDAP server identified by its ID.

func (*Client) DeleteLDAPServerByName added in v0.0.67

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

DeleteLDAPServerByName deletes an LDAP server identified by its name.

func (*Client) DeleteLicensedSoftwareByID added in v0.0.68

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

DeleteLicensedSoftwareByID deletes a licensed software item by its ID.

func (*Client) DeleteLicensedSoftwareByName added in v0.0.68

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

DeleteLicensedSoftwareByName deletes a licensed software item by its name.

func (*Client) DeleteMacApplicationByID added in v0.0.64

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

DeleteMacApplicationByID deletes a MacApplication by its ID.

func (*Client) DeleteMacApplicationByName added in v0.0.64

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

DeleteMacApplicationByName deletes a MacApplication by its name.

func (*Client) DeleteMacOSConfigurationProfileByID added in v0.0.11

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

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

func (*Client) DeleteMacOSConfigurationProfileByName added in v0.0.11

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

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

func (*Client) DeleteMobileDeviceApplicationByBundleID added in v0.0.69

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

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

func (*Client) DeleteMobileDeviceApplicationByBundleIDAndVersion added in v0.0.69

func (c *Client) DeleteMobileDeviceApplicationByBundleIDAndVersion(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 added in v0.0.69

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

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

func (*Client) DeleteMobileDeviceApplicationpByID added in v0.0.69

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

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

func (*Client) DeleteMobileDeviceByID added in v0.0.83

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

DeleteMobileDeviceByID deletes a mobile device by its ID.

func (*Client) DeleteMobileDeviceByName added in v0.0.83

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

DeleteMobileDeviceByName deletes a mobile device by its name.

func (*Client) DeleteMobileDeviceConfigurationProfileByID added in v0.0.72

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

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

func (*Client) DeleteMobileDeviceConfigurationProfileByName added in v0.0.72

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

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

func (*Client) DeleteMobileDeviceEnrollmentProfileByID added in v0.0.72

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

DeleteMobileDeviceEnrollmentProfileByID deletes a mobile device enrollment profile by its ID.

func (*Client) DeleteMobileDeviceEnrollmentProfileByInvitation added in v0.0.72

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

DeleteMobileDeviceEnrollmentProfileByInvitation deletes a mobile device enrollment profile by its invitation.

func (*Client) DeleteMobileDeviceEnrollmentProfileByName added in v0.0.72

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

DeleteMobileDeviceEnrollmentProfileByName deletes a mobile device enrollment profile by its name.

func (*Client) DeleteMobileDeviceGroupByID added in v0.0.75

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

DeleteMobileDeviceGroupByID deletes a mobile device group by its ID.

func (*Client) DeleteMobileDeviceGroupByName added in v0.0.75

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

DeleteMobileDeviceGroupByName deletes a mobile device group by its name.

func (*Client) DeleteMobileDevicePrestageByID added in v1.0.4

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

DeleteMobileDevicePrestageByID a mobile prestage at the given id

func (*Client) DeleteMobileDeviceProvisioningProfileByID added in v0.0.76

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

DeleteMobileDeviceProvisioningProfileByID deletes a mobile device provisioning profile by ID

func (*Client) DeleteMobileDeviceProvisioningProfileByName added in v0.0.76

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

DeleteMobileDeviceProvisioningProfileByName deletes a mobile device provisioning profile by Name

func (*Client) DeleteMobileDeviceProvisioningProfileByUUID added in v0.0.76

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

DeleteMobileDeviceProvisioningProfileByUUID deletes a mobile device provisioning profile by UUID

func (*Client) DeleteMobileExtensionAttributeByID added in v0.0.72

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

DeleteMobileExtensionAttributeByID deletes a mobile extension attribute by its ID.

func (*Client) DeleteMobileExtensionAttributeByName added in v0.0.72

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

DeleteMobileExtensionAttributeByName deletes a mobile extension attribute by its name.

func (*Client) DeleteMultipleBuildingsByID added in v0.0.79

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

DeleteMultipleBuildingsByID deletes multiple buildings in Jamf Pro by their IDs.

func (*Client) DeleteMultipleCategoriesByID added in v0.0.45

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

DeleteMultipleCategoriesByID deletes multiple categories by their IDs

func (*Client) DeleteMultipleComputerExtensionAttributeByID added in v1.11.0

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

DeleteMultipleComputerExtensionAttributeByID deletes multiple computer extension attributes by their IDs

func (*Client) DeleteMultiplePackagesByID added in v1.7.4

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

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

DeleteNetworkSegmentByID deletes a policy by its ID.

func (*Client) DeleteNetworkSegmentByName added in v0.0.74

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

DeleteNetworkSegmentByName deletes a policy by its name.

func (*Client) DeletePackageByID added in v1.3.0

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

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

func (*Client) DeletePackageManifestByID added in v1.7.0

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

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

func (*Client) DeletePatchPolicyByID added in v0.0.84

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

DeletePatchPolicyByID deletes a patch policy by its ID.

func (*Client) DeletePatchPolicyFromDashboard added in v1.9.3

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

RemovePatchPolicyFromDashboard removes a patch policy from the dashboard

func (*Client) DeletePatchSoftwareTitleConfigurationById added in v1.0.4

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

DeletePatchSoftwareTitleConfigurationById deletes a PatchSoftwareTitleConfiguration with given ID

func (*Client) DeletePolicyByID added in v0.0.45

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

DeletePolicyByID deletes a policy by its ID.

func (*Client) DeletePolicyByName added in v0.0.45

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

DeletePolicyByName deletes a policy by its name.

func (*Client) DeletePrinterByID added in v0.0.73

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

DeletePrinterByID deletes a printer by its ID.

func (*Client) DeletePrinterByName added in v0.0.73

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

DeletePrinterByName deletes a printer by its name.

func (*Client) DeleteRemovableMACAddressByID added in v0.0.86

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

DeleteRemovableMACAddressByID deletes a removable MAC address by its ID.

func (*Client) DeleteRemovableMACAddressByName added in v0.0.86

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

DeleteRemovableMACAddressByName deletes a removable MAC address by its name.

func (*Client) DeleteRestrictedSoftwareByID added in v0.0.86

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

DeleteRestrictedSoftwareByID deletes a restricted software entry by its ID.

func (*Client) DeleteRestrictedSoftwareByName added in v0.0.86

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

DeleteRestrictedSoftwareByName deletes a restricted software entry by its name.

func (*Client) DeleteReturnToServiceConfigurationByID added in v1.7.0

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

DeleteReturnToServiceConfigurationByID deletes a Return to Service configuration by ID.

func (*Client) DeleteScriptByID added in v0.0.15

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

Deletes script with provided ID

func (*Client) DeleteScriptByName added in v0.0.15

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

Leverages DeleteScriptByID and GetScripts to delete script by Name

func (*Client) DeleteSelfServiceBrandingMacOSByID added in v0.0.49

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

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

func (*Client) DeleteSelfServiceBrandingMacOSByName added in v0.0.49

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

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

func (*Client) DeleteSiteByID added in v0.0.32

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

DeleteSiteByID deletes a site by its ID.

func (*Client) DeleteSiteByName added in v0.0.32

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

DeleteSiteByName deletes a site by its name.

func (*Client) DeleteSmartComputerGroupByID added in v1.13.0

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

DeleteSmartComputerGroupByID deletes a Smart Computer Group by ID

func (*Client) DeleteSoftwareUpdateServerByID added in v0.0.86

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

DeleteSoftwareUpdateServerByID deletes a software update server by its ID.

func (*Client) DeleteSoftwareUpdateServerByName added in v0.0.86

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

DeleteSoftwareUpdateServerByName deletes a software update server by its name.

func (*Client) DeleteUserByEmail added in v0.0.81

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

DeleteUserByEmail deletes a user by their email.

func (*Client) DeleteUserByID added in v0.0.81

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

DeleteUserByID deletes a user by their ID.

func (*Client) DeleteUserByName added in v0.0.81

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

DeleteUserByName deletes a user by their name.

func (*Client) DeleteUserExtensionAttributeByID added in v0.0.83

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

DeleteUserExtensionAttributeByID deletes a user extension attribute by its ID.

func (*Client) DeleteUserExtensionAttributeByName added in v0.0.83

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

DeleteUserExtensionAttributeByName deletes a user extension attribute by its name.

func (*Client) DeleteUserGroupByID added in v0.0.80

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

DeleteUserGroupByID deletes a user group by its ID.

func (*Client) DeleteUserGroupByName added in v0.0.80

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

DeleteUserGroupByName deletes a user group by its name.

func (*Client) DeleteVPPAccountByID added in v0.0.86

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

DeleteVPPAccountByID deletes a specific VPP account by its ID.

func (*Client) DeleteVPPAssignmentByID added in v0.0.88

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

DeleteVPPAssignmentByID deletes a VPP assignment by its ID

func (*Client) DeleteVolumePurchasingLocationByID added in v1.0.4

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

DeleteVolumePurchasingLocationByID deletes a specific volume purchasing location by its ID.

func (*Client) DeleteVolumePurchasingSubscriptionByID added in v0.0.52

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

DeleteVolumePurchasingSubscriptionByID deletes a volume purchasing subscription by its ID

func (*Client) DeleteVolumePurchasingSubscriptionByName added in v0.0.52

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

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

func (*Client) DeleteWebhookByID added in v0.0.86

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

DeleteWebhookByID deletes a specific webhook by its ID.

func (*Client) DeleteWebhookByName added in v0.0.86

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

DeleteWebhookByName deletes a specific webhook by its name.

func (*Client) DoPackageUpload added in v1.3.7

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

DoPackageUpload creates a new package and uploads the package file to Jamf Pro Fix this after v2

func (*Client) DoPaginatedGet added in v0.0.96

func (c *Client) DoPaginatedGet(
	endpoint_root string,
	maxPageSize, startingPageNumber int,
	sort_filter string,
) (*StandardPaginatedResponse, error)

DoPaginatedGet performs a paginated GET request to a specified endpoint in the Jamf Pro API.

This method is designed to fetch data in a paginated manner from Jamf Pro's RESTful API. It constructs the API endpoint using the provided parameters, handles the pagination logic, and accumulates the results into a single response structure. It's particularly useful for endpoints where the response is expected to contain a large number of items that might be paginated by the server.

Parameters:

  • endpoint_root: The root URL of the API endpoint. This is the base URL to which pagination and sorting parameters will be appended.
  • maxPageSize: Maximum number of items to be fetched in each paginated request. If set to 0, defaults to 200.
  • startingPageNumber: The page number from which to start the paginated fetching.
  • sort_filter: A string specifying the sorting criteria. It follows the format 'sort=<field_name>[:sort_direction][,<secondary_sort_field_name>[:sort_direction]]*'. The default sort direction is 'asc' (Ascending). Use 'desc' for Descending ordering. Additional sort parameters are supported and determine the order of results that have equivalent values for previous sort parameters.

The method returns a pointer to a StandardPaginatedResponse containing the aggregated results from all fetched pages, or an error if the fetch operation fails at any point.

Example usage: client.GetSelfServiceBrandingMacOS("sort=id:desc")

Note: The method appends the results from each page to a slice and breaks the loop when the total number of items fetched matches the reported total count from the server, or when a fetched page contains fewer items than the maximum page size, indicating that it is the last page.

func (*Client) EraseComputerByID added in v1.13.0

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

EraseComputerByID erases a computer by its ID.

func (*Client) ForceDDMSync added in v1.11.0

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

ForceDDMSync initiates a DDM synchronization for a specific client management ID

func (*Client) ForceStopManagedSoftwareUpdateFeatureToggleProcess added in v1.9.0

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 added in v1.12.0

func (c *Client) GenerateKeystoreForOIDCMessages() error

GenerateKeystoreForOIDCMessages generates a new certificate used for signing OIDC messages.

func (*Client) GetADUESessionTokenSettings added in v1.0.4

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 added in v1.4.0

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

Retrieves AccountDrivenUserEnrollmentAccessGroup from provided ID & returns ResourceAccountDrivenUserEnrollmentAccessGroup

func (*Client) GetAccountDrivenUserEnrollmentAccessGroupByName added in v1.4.0

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

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

func (*Client) GetAccountDrivenUserEnrollmentAccessGroups added in v1.4.0

func (c *Client) GetAccountDrivenUserEnrollmentAccessGroups(sort_filter string) (*ResponseAccountDrivenUserEnrollmentAccessGroupsList, error)

GetAccountDrivenUserEnrollmentAccessGroups fetches all ADUE access groups

func (*Client) GetAccountGroupByID added in v0.0.14

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

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

func (*Client) GetAccountGroupByName added in v0.0.14

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

GetAccountByName retrieves the Account by its name

func (*Client) GetAccountPreferences added in v1.1.0

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

GetAccountPreferences retrieves the jamf pro account settings.

func (*Client) GetAccounts added in v0.0.14

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

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

func (*Client) GetActivationCode added in v0.0.46

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

GetActivationCode retrieves the activation code.

func (*Client) GetActiveCertificateAuthority added in v0.0.52

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

GetActiveCertificateAuthority retrieves the active certificate authority details.

func (*Client) GetAdvancedComputerSearchByID added in v0.0.36

func (c *Client) GetAdvancedComputerSearchByID(id 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 added in v1.0.0

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

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

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

GetAdvancedMobileDeviceSearchByID retrieves a specific Advanced Mobile Device Search by ID

func (*Client) GetAdvancedMobileDeviceSearchChoices added in v1.13.0

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

GetAdvancedMobileDeviceSearchChoices retrieves criteria choices for Advanced Mobile Device Searches

func (*Client) GetAdvancedMobileDeviceSearches added in v0.0.48

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

GetAdvancedMobileDeviceSearches retrieves all Advanced Mobile Device Searches

func (*Client) GetAdvancedUserSearchByID added in v0.0.44

func (c *Client) GetAdvancedUserSearchByID(id 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 added in v0.0.44

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

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

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

GetAllowedFileExtensionByID retrieves the allowed file extension by its ID

func (*Client) GetAllowedFileExtensionByName added in v0.0.9

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

GetAllowedFileExtensionByName retrieves the allowed file extension by its name

func (*Client) GetAllowedFileExtensions added in v0.0.9

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

GetAllowedFileExtensions retrieves all allowed file extensions

func (*Client) GetApiIntegrationByID added in v0.0.13

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

GetApiIntegrationByID fetches an API integration by its ID

func (*Client) GetApiIntegrationByName added in v0.0.96

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

func (c *Client) GetApiIntegrations(sort_filter string) (*ResponseApiIntegrationsList, error)

GetApiIntegrations fetches all API integrations

func (*Client) GetBYOProfileByID added in v0.0.50

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

GetBYOProfileByID retrieves a BYO profile by its ID.

func (*Client) GetBYOProfileByName added in v0.0.50

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

GetBYOProfileByName retrieves a BYO profile by its name.

func (*Client) GetBYOProfiles added in v0.0.50

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

GetBYOProfiles gets a list of all BYO profiles.

func (*Client) GetBuildingByID added in v0.0.8

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

GetBuildingByID retrieves a single building information by its ID.

func (*Client) GetBuildingByName added in v0.0.12

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

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

func (*Client) GetBuildingResourceHistoryByID added in v0.0.79

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

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

func (*Client) GetBuildings added in v0.0.9

func (c *Client) GetBuildings(sort_filter string) (*ResponseBuildingsList, error)

GetBuildings retrieves all building information with optional sorting.

func (*Client) GetCSATenantID added in v1.9.0

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

GetCSATenantID retrieves the CSA tenant ID.

func (*Client) GetCSATokenExchangeDetails added in v1.9.0

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

GetCSATokenExchangeDetails retrieves details regarding the CSA token exchange.

func (*Client) GetCacheSettings added in v0.0.52

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

GetCacheSettings gets the current cache settings.

func (*Client) GetCategories added in v0.0.45

func (c *Client) GetCategories(sort_filter string) (*ResponseCategoriesList, error)

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

func (*Client) GetCategoryByID added in v0.0.45

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

GetCategoryByID retrieves a category by its ID

func (*Client) GetCategoryByName added in v0.0.96

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 added in v1.0.0

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

GetClassesByID retrieves a class by its ID.

func (*Client) GetClassByName added in v1.0.0

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

GetClassesByName retrieves a class by its name.

func (*Client) GetClasses added in v0.0.51

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

GetClasses gets a list of all classes.

func (*Client) GetClientCheckinSettings added in v1.0.0

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

func (*Client) GetCloudDistributionPointUploadCapability added in v1.1.0

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

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

func (*Client) GetCloudIdentityProviderByID added in v0.0.80

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

GetCloudIdentityProviderByID retrieves Cloud Identity Provider information.

func (*Client) GetCloudIdentityProviderDefaultServerMappings added in v0.0.80

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

GetCloudIdentityProviderDefaultServerMappings retrieves the default mappings for the Cloud Identity Provider.

func (*Client) GetComputerByID added in v0.0.61

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

GetComputerByID retrieves the computer details by its ID.

func (*Client) GetComputerByName added in v0.0.61

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

GetComputerByName retrieves the computer by its name

func (*Client) GetComputerCheckinInformation added in v0.0.88

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

GetComputerCheckinInformation gets the jamf pro computer check-in settings

func (*Client) GetComputerExtensionAttributeByID added in v0.0.27

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

GetComputerExtensionAttributeByID retrieves a computer extension attribute by its ID

func (*Client) GetComputerExtensionAttributeByName added in v0.0.27

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

GetComputerExtensionAttributeByName retrieves a computer extension attribute by its name

func (*Client) GetComputerExtensionAttributes added in v0.0.27

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

GetComputerExtensionAttributes retrieves all computer extension attributes with pagination

func (*Client) GetComputerFileVaultInventoryByID added in v0.0.84

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

GetComputerFileVaultInventoryByID returns file vault details by the computer ID.

func (*Client) GetComputerGroupByID added in v0.0.16

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

GetComputerGroupByID retrieves a computer group by its ID.

func (*Client) GetComputerGroupByName added in v0.0.16

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

GetComputerGroupByName retrieves a computer group by its name.

func (*Client) GetComputerGroups added in v0.0.16

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

GetComputerGroups gets a list of all computer groups

func (*Client) GetComputerHistoryByComputerID added in v1.6.1

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

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

func (*Client) GetComputerHistoryByComputerIDAndDataSubset added in v1.6.1

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 added in v1.6.1

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

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

func (*Client) GetComputerHistoryByComputerMACAddressAndDataSubset added in v1.6.1

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 added in v1.6.1

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

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

func (*Client) GetComputerHistoryByComputerNameAndDataSubset added in v1.6.1

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 added in v1.6.1

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

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

func (*Client) GetComputerHistoryByComputerSerialNumberAndDataSubset added in v1.6.1

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 added in v1.6.1

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

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

func (*Client) GetComputerHistoryByComputerUDIDAndDataSubset added in v1.6.1

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

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

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

func (*Client) GetComputerInventoryByName added in v0.0.89

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

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

func (*Client) GetComputerInventoryCollectionInformation added in v1.5.0

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

GetComputerInventoryCollection gets the jamf pro inventory collection settings

func (*Client) GetComputerInventoryCollectionSettings added in v0.0.53

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

GetComputerInventoryCollectionSettingss retrives a computer inventory collection list.

func (*Client) GetComputerInvitationByID added in v0.0.56

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

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

func (*Client) GetComputerInvitationByInvitationID added in v1.0.0

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

GetComputerInvitationsByName retrieves a computer invitation by its invitation Name.

func (*Client) GetComputerInvitations added in v0.0.56

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

GetComputerInvitations retrieves a list of all computer invitations.

func (*Client) GetComputerPrestageByID added in v0.0.35

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

GetComputerPrestageByID retrieves a specific computer prestage by its ID.

func (*Client) GetComputerPrestageByName added in v0.0.49

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

GetComputerPrestageByName retrieves a specific computer prestage by its name.

func (*Client) GetComputerPrestages added in v0.0.35

func (c *Client) GetComputerPrestages(sort_filter string) (*ResponseComputerPrestagesList, error)

GetComputerPrestagesV3 retrieves all computer prestage information with optional sorting.

func (*Client) GetComputerRecoveryLockPasswordByID added in v0.0.84

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

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

func (*Client) GetComputers added in v0.0.61

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

GetComputers retrieves all computers

func (*Client) GetComputersFileVaultInventory added in v0.0.84

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

GetComputersFileVaultInventory retrieves all computer inventory filevault information.

func (*Client) GetComputersInventory added in v0.0.84

func (c *Client) GetComputersInventory(sort_filter string) (*ResponseComputerInventoryList, error)

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

func (*Client) GetConditionalAccessDeviceComplianceFeatureEnablement added in v1.1.0

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

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

func (*Client) GetCurrentLocalAdminPasswordForSpecifiedUsernameByClientManagementID added in v1.12.0

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) GetDDMStatusItem added in v1.12.0

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 added in v1.12.0

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 added in v1.9.0

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

GetDSSDeclarationByUUID retrieves a DSS declaration by UUID.

func (*Client) GetDeclarationsByManagedSoftwareUpdatePlanUUID added in v1.9.0

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

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

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

func (*Client) GetDefaultCloudIdentityProviderDefaultMappings added in v1.0.1

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

func (*Client) GetDepartmentByID added in v0.0.10

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

GetDepartmentByID retrieves a department by ID.

func (*Client) GetDepartmentByName added in v0.0.10

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

GetDepartmentByName retrieves a department by Name.

func (*Client) GetDepartments added in v0.0.10

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

GetDepartments retrieves a list of all departments in list

func (*Client) GetDeviceCommunicationSettings added in v1.0.1

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

Gets device communication settings

func (*Client) GetDeviceEnrollments added in v0.0.77

func (c *Client) GetDeviceEnrollments(sort_filter string) (*ResponseDeviceEnrollmentsList, error)

GetDeviceEnrollments retrieves a paginated list of device enrollments.

func (*Client) GetDeviceScopeForComputerPrestageByID added in v0.0.97

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

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

func (*Client) GetDirectoryBindingByID added in v0.0.59

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

GetDirectoryBindingByID retrieves a single directory binding by its ID.

func (*Client) GetDirectoryBindingByName added in v0.0.59

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

GetDirectoryBindingByName retrieves a single directory binding by its name.

func (*Client) GetDirectoryBindings added in v0.0.59

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

GetDirectoryBindings retrieves a serialized list of directory bindings.

func (*Client) GetDiskEncryptionConfigurationByID added in v0.0.57

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

GetDiskEncryptionConfigurationByID retrieves a single disk encryption configuration by its ID.

func (*Client) GetDiskEncryptionConfigurationByName added in v0.0.57

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

GetDiskEncryptionConfigurationByName retrieves a disk encryption configuration by its name.

func (*Client) GetDiskEncryptionConfigurations added in v0.0.57

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

GetDiskEncryptionConfigurations retrieves a serialized list of disk encryption configurations.

func (*Client) GetDistributionPointByID added in v0.0.58

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

GetDistributionPointByID retrieves a single distribution point by its ID.

func (*Client) GetDistributionPointByName added in v0.0.58

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

GetDistributionPointByName retrieves a single distribution point by its name.

func (*Client) GetDistributionPoints added in v0.0.58

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

GetDistributionPoints retrieves a serialized list of distribution points.

func (*Client) GetDockItemByID added in v1.0.0

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

GetDockItemsByID retrieves a single dock item by its ID.

func (*Client) GetDockItemByName added in v1.0.0

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

GetDockItemsByName retrieves a single dock item by its name.

func (*Client) GetDockItems added in v0.0.62

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

GetDockItems retrieves a serialized list of dock items.

func (*Client) GetEbookByID added in v1.0.0

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

GetEbooksByID retrieves a single ebook by its ID.

func (*Client) GetEbookByName added in v1.0.0

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

GetEbooksByName retrieves a single ebook by its name.

func (*Client) GetEbookByNameAndDataSubset added in v1.0.0

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

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

func (*Client) GetEbooks added in v0.0.63

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

GetEbooks retrieves a serialized list of ebooks.

func (*Client) GetEligibleAppsForOnboarding added in v1.9.3

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 added in v1.9.3

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 added in v1.9.3

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) GetEnrollmentCustomizationByID added in v1.0.4

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

Returns single ResourceEnrollmentCustomization object matching given id

func (*Client) GetEnrollmentCustomizations added in v1.0.4

func (c *Client) GetEnrollmentCustomizations(sort_filter string) (*ResponseEnrollmentCustomizationList, error)

Returns paginated list of Enrollment Customization

func (*Client) GetGSXConnectionHistory added in v1.7.0

func (c *Client) GetGSXConnectionHistory(sort_filter string) (*ResponseGSXConnectionHistoryList, error)

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

  • sort_filter (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 added in v0.0.88

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 added in v1.4.0

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

GetHealthCheck fetches the Jamf Pro API status.

func (*Client) GetIBeaconByID added in v0.0.66

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

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

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

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

func (*Client) GetJCDS2PackageURIByName added in v1.3.0

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

GetJCDS2PackageURIByName fetches a file URI from Jamf Cloud Distribution Service

func (*Client) GetJCDS2Packages added in v1.3.0

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

GetJCDS2Packages fetches a file list from Jamf Cloud Distribution Service

func (*Client) GetJCDS2Properties added in v1.3.1

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

GetJCDS2Properties fetches properties from Jamf Cloud Distribution Service

func (*Client) GetJamfAPIPrivileges added in v0.0.43

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

GetJamfAPIPrivileges fetches a list of Jamf API role privileges

func (*Client) GetJamfAPIPrivilegesByName added in v0.0.43

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

GetJamfAPIPrivilegesByName fetches a list of Jamf API role privileges by name

func (*Client) GetJamfAPIRoles added in v0.0.12

func (c *Client) GetJamfAPIRoles(sort_filter string) (*ResponseApiRolesList, error)

GetJamfAPIRoles fetches a list of Jamf API roles

func (*Client) GetJamfApiRoleByID added in v0.0.96

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

GetJamfApiRolesByID fetches a Jamf API role by its ID.

func (*Client) GetJamfApiRoleByName added in v0.0.96

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) GetJamfAppCatalogAppInstallerDeploymentByID added in v1.10.1

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

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

func (*Client) GetJamfAppCatalogAppInstallerGlobalSettings added in v1.7.2

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

GetJamfAppCatalogAppInstallerGlobalSettings retrieves the global settings for the app catalog & returns ResourceJamfAppCatalogAppInstaller

func (*Client) GetJamfAppCatalogAppInstallerTermsAndConditionsStatus added in v1.10.0

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

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

func (*Client) GetJamfAppCatalogAppInstallerTitleByID added in v1.7.2

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

GetJamfAppCatalogAppInstallerTitleByID retrieves by title ID & returns ResourceJamfAppCatalogAppInstaller

func (*Client) GetJamfAppCatalogAppInstallerTitles added in v1.7.2

func (c *Client) GetJamfAppCatalogAppInstallerTitles(sort_filter string) (*ResponseJamfAppCatalogTitleList, error)

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

func (*Client) GetJamfProInformation added in v0.0.53

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

func (*Client) GetJamfProServerUrlSettings added in v1.0.4

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

Returns ResourceJamfProServerURL

func (*Client) GetJamfProVersion added in v0.0.10

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

func (*Client) GetJamfProtectHistory added in v1.9.2

func (c *Client) GetJamfProtectHistory(sortFilter string) (*ResponseJamfProtectHistoryList, error)

GetJamfProtectHistory retrieves the history of Jamf Protect actions

func (*Client) GetJamfProtectIntegrationSettings added in v1.0.4

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

func (*Client) GetJamfProtectPlans added in v1.9.2

func (c *Client) GetJamfProtectPlans(sortFilter string) (*ResponseJamfProtectPlansList, error)

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

func (*Client) GetLDAPServerByID added in v0.0.67

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

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

func (*Client) GetLDAPServerByIDAndGroupDataSubset added in v0.0.67

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

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

func (*Client) GetLDAPServerByIDAndUserDataSubset added in v0.0.67

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

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

func (*Client) GetLDAPServerByIDAndUserMembershipInGroupDataSubset added in v0.0.67

func (c *Client) GetLDAPServerByIDAndUserMembershipInGroupDataSubset(id 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 added in v0.0.67

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

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

func (*Client) GetLDAPServerByNameAndGroupDataSubset added in v0.0.67

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

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

func (*Client) GetLDAPServerByNameAndUserDataSubset added in v0.0.67

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

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

func (*Client) GetLDAPServerByNameAndUserMembershipInGroupDataSubset added in v0.0.67

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

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

func (*Client) GetLDAPServers added in v0.0.67

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

GetLDAPServers retrieves a serialized list of LDAP servers.

func (*Client) GetLicensedSoftware added in v0.0.68

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

GetLicensedSoftware retrieves a serialized list of licensed software.

func (*Client) GetLicensedSoftwareByID added in v0.0.68

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

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

func (*Client) GetLicensedSoftwareByName added in v0.0.68

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

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

func (*Client) GetListOfPendingLapsRotations added in v1.12.0

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

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

func (*Client) GetLocalAdminPasswordCapableAccountsByClientManagementID added in v1.12.0

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 added in v1.12.0

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 added in v1.4.0

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

GetLocalAdminPasswordSettings retrieves current Jamf Pro LAPS settings

func (*Client) GetLocalAdminPasswordViewedHistoryByClientManagementID added in v1.12.0

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) GetLoginCustomization added in v1.7.0

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

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

GetMacApplicationByID retrieves a single Mac application by its ID.

func (*Client) GetMacApplicationByIDAndDataSubset added in v0.0.64

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

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

GetMacApplicationByName retrieves a single Mac application by its name.

func (*Client) GetMacApplicationByNameAndDataSubset added in v0.0.64

func (c *Client) GetMacApplicationByNameAndDataSubset(name, subset string) (*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 added in v0.0.64

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

GetDockItems retrieves a serialized list of vpp mac applications.

func (*Client) GetMacOSConfigurationProfileByID added in v0.0.11

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

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

func (*Client) GetMacOSConfigurationProfileByName added in v0.0.11

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

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

func (*Client) GetMacOSConfigurationProfileByNameByID added in v0.0.78

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

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

func (*Client) GetMacOSConfigurationProfiles added in v0.0.11

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

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

func (*Client) GetManagedSoftwareUpdateFeatureToggle added in v1.5.0

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

GetManagedSoftwareUpdateFeatureToggle retrieves the current managed software update feature toggle settings

func (*Client) GetManagedSoftwareUpdatePlanByUUID added in v1.9.0

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

GetManagedSoftwareUpdatePlanByUUID retrieves a Managed Software Update Plan by its UUID.

func (*Client) GetManagedSoftwareUpdatePlans added in v1.5.0

func (c *Client) GetManagedSoftwareUpdatePlans(sort_filter string) (*ResponseManagedSoftwareUpdatePlanList, error)

GetManagedSoftwareUpdatePlans retrieves a list of all available managed software updates

func (*Client) GetManagedSoftwareUpdatePlansByGroupID added in v1.5.0

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

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

func (*Client) GetManagedSoftwareUpdatePlansFeatureToggleStatus added in v1.9.0

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

GetManagedSoftwareUpdatePlansFeatureToggleStatus retrieves the background status of the Feature Toggle.

func (*Client) GetManagedSoftwareUpdates added in v1.5.0

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

GetManagedSoftwareUpdates retrieves a list of all available managed software updates

func (*Client) GetMobileDeviceApplicationByAppBundleID added in v0.0.69

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

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

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

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

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

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

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

GetMobileDeviceApplications retrieves a serialized list of mobile device applications.

func (*Client) GetMobileDeviceByID added in v0.0.83

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

GetMobileDeviceByID retrieves a specific mobile device by its ID.

func (*Client) GetMobileDeviceByIDAndDataSubset added in v0.0.83

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

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

GetMobileDeviceByName retrieves a specific mobile device by its name.

func (*Client) GetMobileDeviceByNameAndDataSubset added in v0.0.83

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

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

func (*Client) GetMobileDeviceConfigurationProfileByID added in v0.0.72

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

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

func (*Client) GetMobileDeviceConfigurationProfileByIDWithSubset added in v1.0.0

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

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

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

func (*Client) GetMobileDeviceConfigurationProfileByNameWithSubset added in v1.0.0

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

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

GetMobileDeviceConfigurationProfiles retrieves a serialized list of mobile device configuration profiles.

func (*Client) GetMobileDeviceEnrollmentProfileByID added in v0.0.72

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

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

func (*Client) GetMobileDeviceEnrollmentProfileByIDWithSubset added in v1.0.0

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

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

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

func (*Client) GetMobileDeviceEnrollmentProfileByNameWithSubset added in v1.0.0

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

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

GetMobileDeviceEnrollmentProfiles retrieves a serialized list of mobile device enrollment profiles.

func (*Client) GetMobileDeviceGroupByID added in v1.0.0

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

GetMobileDeviceGroupsByID retrieves a single mobile device group by its ID.

func (*Client) GetMobileDeviceGroupByName added in v1.0.0

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

GetMobileDeviceGroupsByName retrieves a single mobile device group by its name.

func (*Client) GetMobileDeviceGroups added in v0.0.75

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

GetMobileDeviceGroups retrieves a serialized list of mobile device groups.

func (*Client) GetMobileDevicePrestageByID added in v1.0.4

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

GetMobileDevicePrestageByID retrieves a single mobile prestage from the supplied ID

func (*Client) GetMobileDevicePrestages added in v1.0.4

func (c *Client) GetMobileDevicePrestages(sort_filter string) (*ResponseMobileDevicePrestagesList, error)

GetMobileDevicePrestages retrieves a list of all mobile prestages

func (*Client) GetMobileDeviceProvisioningProfileByID added in v0.0.76

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

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

func (*Client) GetMobileDeviceProvisioningProfileByName added in v0.0.76

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

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

func (*Client) GetMobileDeviceProvisioningProfileByUUID added in v0.0.76

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

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

func (*Client) GetMobileDeviceProvisioningProfiles added in v0.0.76

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

GetMobileDeviceProvisioningProfiles retrieves a serialized list of mobile device provisioning profiles.

func (*Client) GetMobileDevices added in v0.0.83

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

GetMobileDevices retrieves a list of all mobile devices.

func (*Client) GetMobileExtensionAttributeByID added in v0.0.72

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

GetMobileExtensionAttributeByID fetches a specific mobile extension attribute by its ID.

func (*Client) GetMobileExtensionAttributeByName added in v0.0.72

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

GetMobileExtensionAttributeByName fetches a specific mobile extension attribute by its name.

func (*Client) GetMobileExtensionAttributes added in v0.0.72

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

GetMobileExtensionAttributes retrieves a serialized list of mobile device extension attributes.

func (*Client) GetNetworkSegmentByID added in v0.0.74

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

GetNetworkSegmentByID retrieves a specific network segment by its ID.

func (*Client) GetNetworkSegmentByName added in v0.0.74

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

GetNetworkSegmentByName retrieves a specific network segment by its name.

func (*Client) GetNetworkSegments added in v0.0.74

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

GetNetworkSegments retrieves a list of network segments.

func (*Client) GetOnboardingSettings added in v1.9.3

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

GetOnboardingSettings retrieves the current onboarding settings configuration

func (*Client) GetPackageByID added in v1.3.0

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

GetPackageByID retrieves details of a specific package by its ID.

func (*Client) GetPackageHistoryByPackageID added in v1.7.0

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 added in v1.3.0

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

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

func (*Client) GetPatchExternalSourceByID added in v1.5.8

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

GetPatchExternalSourceByID retrieves a specific patch external source by its ID.

func (*Client) GetPatchExternalSourceByName added in v1.5.8

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

GetPatchExternalSourceByName retrieves a specific patch external source by its name.

func (*Client) GetPatchExternalSources added in v1.5.8

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

GetPatchExternalSources retrieves all patch external sources.

func (*Client) GetPatchPolicies added in v1.4.1

func (c *Client) GetPatchPolicies(sortFilter string) (*ResponsePatchPoliciesList, error)

GetPatchPolicies gets the full list of patch policies & handles pagination

func (*Client) GetPatchPoliciesByID added in v0.0.84

func (c *Client) GetPatchPoliciesByID(id string) (*ResourcePatchPolicies, error)

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

func (*Client) GetPatchPolicyByIDAndDataSubset added in v0.0.84

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

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

func (*Client) GetPatchPolicyDashboardStatus added in v1.9.3

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

GetPatchPolicyDashboardStatus checks if a patch policy is on the dashboard

func (*Client) GetPatchSoftwareTitleConfigurationById added in v1.0.4

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

GetPatchSoftwareTitleConfigurationById retrieves a singular PatchSoftwareTitleConfiguration from a given ID

func (*Client) GetPatchSoftwareTitleConfigurationByName added in v1.0.12

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

GetPatchSoftwareTitleConfigurationByName retrieves a department by Name.

func (*Client) GetPatchSoftwareTitleConfigurations added in v1.0.4

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

GetPatchSoftwareTitleConfigurations retrieves list of PatchSoftwareTitleConfigurations

func (*Client) GetPolicies added in v0.0.45

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

GetPolicies retrieves a list of all policies.

func (*Client) GetPoliciesByType added in v0.0.45

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

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

func (*Client) GetPolicyByCategory added in v0.0.45

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

GetPolicyByCategory retrieves policies by their category.

func (*Client) GetPolicyByID added in v0.0.45

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

GetPolicyByID retrieves the details of a policy by its ID.

func (*Client) GetPolicyByName added in v0.0.45

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

GetPolicyByName retrieves a policy by its name.

func (*Client) GetPrinterByID added in v0.0.73

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

GetPrinterByID fetches a specific printer by its ID.

func (*Client) GetPrinterByName added in v0.0.73

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

GetPrinterByName fetches a specific printer by its name.

func (*Client) GetPrinters added in v0.0.73

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

GetPrinters retrieves a serialized list of printers.

func (*Client) GetProfileByInvitation added in v0.0.72

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

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

func (*Client) GetPublicKeyOfOIDCKeystore added in v1.12.0

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

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

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

func (*Client) GetRemovableMACAddressByName added in v0.0.86

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

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

func (*Client) GetRemovableMACAddresses added in v0.0.86

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

GetRemovableMACAddresses retrieves a list of all removable MAC addresses.

func (*Client) GetRestrictedSoftwareByID added in v0.0.86

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

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

func (*Client) GetRestrictedSoftwareByName added in v0.0.86

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

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

func (*Client) GetRestrictedSoftwares added in v0.0.86

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

GetRestrictedSoftwares retrieves a list of all restricted software.

func (*Client) GetReturnToServiceConfigurationByID added in v1.7.0

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

GetReturnToServiceConfigurationByID fetches a specific Return to Service configuration by ID.

func (*Client) GetReturnToServiceConfigurations added in v1.7.0

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

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

func (*Client) GetSLASAStatus added in v1.9.0

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

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

func (*Client) GetSMTPServerInformation added in v0.0.88

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) GetScriptByID added in v0.0.96

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

Retrieves script from provided ID & returns ResourceScript

func (*Client) GetScriptByName added in v0.0.96

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

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

func (*Client) GetScripts added in v0.0.15

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

Gets full list of scripts & handles pagination

func (*Client) GetSelfServiceBrandingMacOS added in v0.0.49

func (c *Client) GetSelfServiceBrandingMacOS(sort_filter string) (*ResponseSelfServiceBrandingList, error)

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

func (*Client) GetSelfServiceBrandingMacOSByID added in v0.0.49

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

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

func (*Client) GetSelfServiceBrandingMacOSByName added in v0.0.96

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

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

func (*Client) GetSelfServiceSettings added in v1.5.0

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

GetSelfServiceSettings retrives a self service list.

func (*Client) GetSiteByID added in v0.0.32

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

GetSiteByID retrieves a site by its ID.

func (*Client) GetSiteByName added in v0.0.32

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

GetSiteByName retrieves a site by its name.

func (*Client) GetSites added in v0.0.32

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

GetSites gets a list of all sites

func (*Client) GetSmartComputerGroupByID added in v1.13.0

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

GetSmartComputerGroupByID retrieves a specific Smart Computer Group by ID This is a place holder function. this api endpoint doesnt support GET By ID yet.

func (*Client) GetSmartComputerGroupMembershipByID added in v1.13.0

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

GetSmartComputerGroupMembershipByID retrieves the membership of a Smart Computer Group by ID

func (*Client) GetSmartComputerGroups added in v1.13.0

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

GetSmartComputerGroups retrieves a list of all Smart Computer Groups

func (*Client) GetSmartComputerGroupsV2 added in v1.13.0

func (c *Client) GetSmartComputerGroupsV2(sort_filter string) (*ResponseSmartComputerGroupsListV2, error)

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

func (*Client) GetSoftwareUpdateServerByID added in v1.0.0

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

GetSoftwareUpdateServersByID retrieves a specific software update server by its ID.

func (*Client) GetSoftwareUpdateServerByName added in v1.0.0

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

GetSoftwareUpdateServersByName retrieves a specific software update server by its name.

func (*Client) GetSoftwareUpdateServers added in v0.0.86

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

GetSoftwareUpdateServers retrieves a list of all software update servers.

func (*Client) GetSsoEnrollmentCustomizationDependencies added in v1.0.4

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

GetSsoEnrollmentCustomizationDependencies shows which enrollment customizations are dependent on which sso settings // NOTE I think?

func (*Client) GetSsoSettings added in v1.0.4

func (c *Client) GetSsoSettings() (*ResourceSsoSettings, error)

GetSsoSettings retrieves current Jamf Sso settings

func (*Client) GetUserByEmail added in v0.0.81

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

GetUserByEmail retrieves the details of a user by their email.

func (*Client) GetUserByID added in v0.0.81

func (c *Client) GetUserByID(id string) (*ResourceUser, error)

GetUserByID retrieves the details of a user by their ID.

func (*Client) GetUserByName added in v0.0.81

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

GetUserByName retrieves the details of a user by their name.

func (*Client) GetUserExtensionAttributeByID added in v0.0.83

func (c *Client) GetUserExtensionAttributeByID(id string) (*ResourceUserExtensionAttribute, error)

GetUserExtensionAttributeByID retrieves a user extension attribute by its ID.

func (*Client) GetUserExtensionAttributeByName added in v0.0.83

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

GetUserExtensionAttributeByName retrieves a user extension attribute by its name.

func (*Client) GetUserExtensionAttributes added in v0.0.83

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

GetUserExtensionAttributes retrieves a list of all user extension attributes.

func (*Client) GetUserGroupByID added in v1.0.0

func (c *Client) GetUserGroupByID(id string) (*ResourceUserGroup, error)

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

func (*Client) GetUserGroupByName added in v1.0.0

func (c *Client) GetUserGroupByName(name string) (*ResourceUserGroup, error)

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

func (*Client) GetUserGroups added in v0.0.80

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

GetUserGroups retrieves a list of all user groups.

func (*Client) GetUsers added in v0.0.81

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

GetUsers retrieves a list of all users.

func (*Client) GetVPPAccountByID added in v0.0.86

func (c *Client) GetVPPAccountByID(id string) (*ResourceVPPAccount, error)

GetVPPAccountByID retrieves a specific VPP account by its ID.

func (*Client) GetVPPAccounts added in v0.0.86

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

GetVPPAccounts retrieves a list of all VPP accounts.

func (*Client) GetVPPAssignmentByID added in v0.0.88

func (c *Client) GetVPPAssignmentByID(id string) (*ResourceVPPAssignment, error)

GetVPPAssignmentByID fetches a VPP assignment by its ID

func (*Client) GetVPPAssignments added in v0.0.88

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

GetVPPAssignments fetches a list of VPP assignments

func (*Client) GetVolumePurchaseLocations added in v0.0.86

func (c *Client) GetVolumePurchaseLocations(sort_filter string) (*ResponseVolumePurchasingList, error)

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

func (*Client) GetVolumePurchasingContentForLocationByID added in v0.0.86

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

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

func (*Client) GetVolumePurchasingLocationByID added in v0.0.86

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

GetVolumePurchasingLocationByID retrieves a specific volume purchasing location by its ID.

func (*Client) GetVolumePurchasingSubscriptionByID added in v0.0.52

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

GetVolumePurchasingSubscriptionByID retrieves a single volume purchasing subscription by its ID

func (*Client) GetVolumePurchasingSubscriptionByName added in v1.0.1

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

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

GetVolumePurchasingSubscriptions retrieves all volume purchasing subscriptions

func (*Client) GetWebhookByID added in v0.0.86

func (c *Client) GetWebhookByID(id string) (*ResourceWebhook, error)

GetWebhookByID retrieves a specific webhook by its ID.

func (*Client) GetWebhookByName added in v0.0.86

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

GetWebhookByName retrieves a specific webhook by its name.

func (*Client) GetWebhooks added in v0.0.86

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

GetWebhooks retrieves a list of all webhooks.

func (*Client) RefreshClientCredentialsByApiRoleID added in v0.0.96

func (c *Client) RefreshClientCredentialsByApiRoleID(id string) (*ResourceClientCredentials, error)

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

func (*Client) RefreshJCDS2Inventory added in v1.13.0

func (c *Client) RefreshJCDS2Inventory() error

RefreshJCDS2Inventory refreshes the inventory and status of uploads in Jamf Pro.

func (*Client) RemoveComputerMDMProfile added in v1.12.0

func (c *Client) RemoveComputerMDMProfile(id string) (*ResponseRemoveMDMProfile, error)

RemoveComputerMDMProfile removes the MDM profile from a computer by its ID.

func (*Client) RenewJCDS2Credentials added in v1.3.0

func (c *Client) RenewJCDS2Credentials() (*ResponseJCDS2UploadCredentials, error)

RenewJCDS2Credentials renews credentials for JCDS 2.0

func (*Client) RetryJamfProtectInstallTasks added in v1.9.2

func (c *Client) RetryJamfProtectInstallTasks(deploymentID string, taskIDs []string) error

New function to request a retry of Protect install tasks

func (*Client) SendMDMCommandForCreationAndQueuing added in v1.7.1

func (c *Client) SendMDMCommandForCreationAndQueuing(MDMCommand *ResourceMDMCommandRequest) (*ResponseMDMCommand, error)

SendMDMCommandForCreationAndQueuing sends an MDM command for creation and queuing

func (*Client) SendMDMCommandForMDMProfileRenewal added in v1.7.1

func (c *Client) SendMDMCommandForMDMProfileRenewal(renewProfileRequest *ResourceMDMProfileRenewal) (*ResponseMDMProfileRenewal, error)

SendMDMCommandForMDMProfileRenewal renews MDM profiles for specified UDIDs

func (*Client) SendMDMCommandForPackageDeployment added in v1.7.1

func (c *Client) SendMDMCommandForPackageDeployment(deployPackageRequest *ResourceDeployPackage) (*ResponseDeployPackage, error)

SendMDMCommandForPackageDeployment deploys a package using an MDM command

func (*Client) SetLocalAdminPasswordByClientManagementID added in v1.12.0

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 added in v1.12.0

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 added in v1.9.2

func (c *Client) SyncJamfProtectPlans() error

SyncJamfProtectPlans syncs plans with Jamf Protect

func (*Client) UpdateADUESessionTokenSettings added in v1.0.4

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 added in v1.4.0

func (c *Client) UpdateAccountDrivenUserEnrollmentAccessGroupByID(id string, groupUpdate *ResourceAccountDrivenUserEnrollmentAccessGroup) (*ResourceAccountDrivenUserEnrollmentAccessGroup, error)

UpdateAccountDrivenUserEnrollmentAccessGroupByID updates an ADUE access group by resource ID

func (*Client) UpdateAccountDrivenUserEnrollmentAccessGroupByName added in v1.4.0

func (c *Client) UpdateAccountDrivenUserEnrollmentAccessGroupByName(targetName string, groupUpdate *ResourceAccountDrivenUserEnrollmentAccessGroup) (*ResourceAccountDrivenUserEnrollmentAccessGroup, error)

UpdateAccountDrivenUserEnrollmentAccessGroupByName updates an ADUE access group by resource name

func (*Client) UpdateAccountGroupByID added in v0.0.14

func (c *Client) UpdateAccountGroupByID(id string, accountGroup *ResourceAccountGroup) (*ResourceAccountGroup, error)

UpdateAccountGroupByID updates an Account Group using its ID

func (*Client) UpdateAccountGroupByName added in v0.0.14

func (c *Client) UpdateAccountGroupByName(name string, accountGroup *ResourceAccountGroup) (*ResourceAccountGroup, error)

UpdateAccountGroupByName updates an Account Group using its name.

func (*Client) UpdateAccountPreferences added in v1.1.0

func (c *Client) UpdateAccountPreferences(updatedSettings ResourceAccountPreferences) (*ResourceAccountPreferences, error)

UpdateAccountPreferences updates the jamf pro account settings.

func (*Client) UpdateActivationCode added in v0.0.46

func (c *Client) UpdateActivationCode(activationCode *ResourceActivationCode) error

UpdateActivationCode updates the activation code.

func (*Client) UpdateAdvancedComputerSearchByID added in v0.0.36

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

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

func (c *Client) UpdateAdvancedMobileDeviceSearchByID(id string, search ResourceAdvancedMobileDeviceSearch) (*ResourceAdvancedMobileDeviceSearch, error)

UpdateAdvancedMobileDeviceSearchByID updates an existing Advanced Mobile Device Search by ID

func (*Client) UpdateAdvancedUserSearchByID added in v0.0.44

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

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

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

UpdateApiIntegrationByID updates an API integration by its ID

func (*Client) UpdateApiIntegrationByName added in v0.0.13

func (c *Client) UpdateApiIntegrationByName(name string, integrationUpdate *ResourceApiIntegration) (*ResourceApiIntegration, error)

UpdateApiIntegrationByName updates an API integration based on its display name

func (*Client) UpdateBYOProfileByID added in v0.0.50

func (c *Client) UpdateBYOProfileByID(id string, profile *ResourceBYOProfile) (*ResponceBYOProfileCreatedAndUpdated, error)

UpdateBYOProfileByID updates an existing BYO profile by its ID.

func (*Client) UpdateBYOProfileByName added in v0.0.50

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

UpdateBYOProfileByName updates a BYO profile by its name.

func (*Client) UpdateBuildingByID added in v0.0.12

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

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

func (c *Client) UpdateCacheSettings(cacheSettingsUpdate *ResourceCacheSettings) (*ResourceCacheSettings, error)

UpdateCacheSettings updates the cache settings.

func (*Client) UpdateCategoryByID added in v0.0.45

func (c *Client) UpdateCategoryByID(id string, categoryUpdate *ResourceCategory) (*ResponseCategoryCreateAndUpdate, error)

UpdateCategoryByID updates an existing category by its ID

func (*Client) UpdateCategoryByName added in v0.0.96

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 added in v1.0.0

func (c *Client) UpdateClassByID(id string, class *ResourceClass) error

UpdateClassByID updates an existing class with the given ID.

func (*Client) UpdateClassByName added in v1.0.0

func (c *Client) UpdateClassByName(name string, class *ResourceClass) error

UpdateClassByName updates an existing class with the given name.

func (*Client) UpdateClientCheckinSettings added in v1.0.0

func (c *Client) UpdateClientCheckinSettings(settingsUpdate ResourceClientCheckinSettings) (*ResourceClientCheckinSettings, error)

func (*Client) UpdateCloudIdentityProviderByID added in v0.0.96

func (c *Client) UpdateCloudIdentityProviderByID(id string, cloudIdPUpdate *ResourceCloudIdp) (*ResourceCloudIdp, error)

UpdateCloudIdentityProviderById updates an existing Cloud Identity Provider by its ID.

func (*Client) UpdateComputerByID added in v0.0.61

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

UpdateComputerByID updates the details of a computer by its ID.

func (*Client) UpdateComputerByName added in v0.0.61

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

UpdateComputerByName updates the details of a computer by its name.

func (*Client) UpdateComputerCheckinInformation added in v0.0.88

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

UpdateComputerCheckinInformation updates the jamf pro computer check-in settings

func (*Client) UpdateComputerExtensionAttributeByID added in v0.0.27

func (c *Client) UpdateComputerExtensionAttributeByID(id string, attribute *ResourceComputerExtensionAttribute) (*ResourceComputerExtensionAttribute, error)

UpdateComputerExtensionAttributeByID updates a computer extension attribute by its ID

func (*Client) UpdateComputerExtensionAttributeByName added in v0.0.27

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

UpdateComputerExtensionAttributeByName updates a computer extension attribute by its name

func (*Client) UpdateComputerGroupByID added in v0.0.16

func (c *Client) UpdateComputerGroupByID(id string, group *ResourceComputerGroup) (*ResponseComputerGroupreatedAndUpdated, error)

UpdateComputerGroupByID updates an existing computer group by its ID.

func (*Client) UpdateComputerGroupByName added in v0.0.16

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

UpdateComputerGroupByName updates a computer group by its name.

func (*Client) UpdateComputerInventoryByID added in v0.0.84

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

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

func (*Client) UpdateComputerInventoryCollectionInformation added in v1.5.0

func (c *Client) UpdateComputerInventoryCollectionInformation(settings *ResourceComputerInventoryCollection) error

UpdateComputerInventoryCollectionInformation updates the jamf pro computer check-in settings

func (*Client) UpdateComputerInventoryCollectionSettings added in v0.0.53

func (c *Client) UpdateComputerInventoryCollectionSettings(settingsUpdate *ResourceComputerInventoryCollectionSettings) (*ResourceComputerInventoryCollectionSettings, error)

UpdateComputerInventoryCollectionSettings updates the computer inventory collection settings.

func (*Client) UpdateComputerPrestageByID added in v0.0.49

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

UpdateComputerPrestageByID updates a computer prestage by its ID.

func (*Client) UpdateComputerPrestageByName added in v0.0.49

func (c *Client) UpdateComputerPrestageByName(name string, prestageUpdate *ResourceComputerPrestage) (*ResourceComputerPrestage, error)

UpdateComputerPrestageByNameByID updates a computer prestage based on its display name.

func (*Client) UpdateDepartmentByID added in v0.0.10

func (c *Client) UpdateDepartmentByID(id string, departmentUpdate *ResourceDepartment) (*ResourceDepartment, error)

UpdateDepartmentByID Updates department by resource ID

func (*Client) UpdateDepartmentByName added in v0.0.10

func (c *Client) UpdateDepartmentByName(targetName string, departmentUpdate *ResourceDepartment) (*ResourceDepartment, error)

UpdateDepartmentByName Updates department by resource name

func (*Client) UpdateDeviceCommunicationSettings added in v1.0.1

func (c *Client) UpdateDeviceCommunicationSettings(updatedSettings ResourceDeviceCommunicationSettings) (*ResourceDeviceCommunicationSettings, error)

Updates device communication settings

func (*Client) UpdateDirectoryBindingByID added in v0.0.59

func (c *Client) UpdateDirectoryBindingByID(id string, binding *ResponseDirectoryBinding) (*ResponseDirectoryBinding, error)

UpdateDirectoryBindingByID updates a directory binding by its ID.

func (*Client) UpdateDirectoryBindingByName added in v0.0.59

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

UpdateDirectoryBindingByName updates a directory binding by its name.

func (*Client) UpdateDiskEncryptionConfigurationByID added in v0.0.57

func (c *Client) UpdateDiskEncryptionConfigurationByID(id string, config *ResourceDiskEncryptionConfiguration) (*ResponseDiskEncryptionConfigurationCreatedAndUpdated, error)

UpdateDiskEncryptionConfigurationByID updates a disk encryption configuration by its ID.

func (*Client) UpdateDiskEncryptionConfigurationByName added in v0.0.57

func (c *Client) UpdateDiskEncryptionConfigurationByName(name string, config *ResourceDiskEncryptionConfiguration) (*ResourceDiskEncryptionConfiguration, error)

UpdateDiskEncryptionConfigurationByName updates a disk encryption configuration by its name.

func (*Client) UpdateDistributionPointByID added in v0.0.58

UpdateDistributionPointByID updates a distribution point by its ID.

func (*Client) UpdateDistributionPointByName added in v0.0.58

UpdateDistributionPointByName updates a distribution point by its name.

func (*Client) UpdateDockItemByID added in v1.0.0

func (c *Client) UpdateDockItemByID(id string, dockItem *ResourceDockItem) (*ResourceDockItem, error)

UpdateDockItemByID updates a dock item by its ID.

func (*Client) UpdateDockItemByName added in v1.0.0

func (c *Client) UpdateDockItemByName(name string, dockItem *ResourceDockItem) (*ResourceDockItem, error)

UpdateDockItemByName updates a dock item by its name.

func (*Client) UpdateEbookByID added in v0.0.63

func (c *Client) UpdateEbookByID(id string, ebook ResourceEbooks) (*ResourceEbooks, error)

UpdateEbookByID updates an existing ebook by its ID.

func (*Client) UpdateEbookByName added in v0.0.63

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

UpdateEbookByName updates an existing ebook by its name.

func (*Client) UpdateEnrollmentCustomizationByID added in v1.0.4

func (c *Client) UpdateEnrollmentCustomizationByID(id string, updatedCustomization ResourceEnrollmentCustomization) (*ResourceEnrollmentCustomization, error)

Updates resource enrollment customization by id

func (*Client) UpdateExternalPatchSourceByID added in v1.5.8

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 added in v1.5.8

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

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

func (c *Client) UpdateIBeaconByID(id string, beacon *ResourceIBeacons) (*ResourceIBeacons, error)

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

func (*Client) UpdateIBeaconByName added in v0.0.66

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

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

func (*Client) UpdateJamfApiRoleByID added in v0.0.12

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

UpdateJamfApiRoleByID updates a Jamf API role by its ID

func (*Client) UpdateJamfApiRoleByName added in v0.0.12

func (c *Client) UpdateJamfApiRoleByName(name string, roleUpdate *ResourceAPIRole) (*ResourceAPIRole, error)

UpdateJamfApiRoleByName updates a Jamf API role based on its display name

func (*Client) UpdateJamfAppCatalogAppInstallerDeploymentByID added in v1.10.1

func (c *Client) UpdateJamfAppCatalogAppInstallerDeploymentByID(id string, payload *ResourceJamfAppCatalogDeployment) (*ResourceJamfAppCatalogDeployment, error)

UpdateJamfAppCatalogDeploymentByID updates Jamf App Catalog Deployment by provided ID & returns ResourceJamfAppCatalogDeployment

func (*Client) UpdateJamfProServerUrlSettings added in v1.0.4

func (c *Client) UpdateJamfProServerUrlSettings(updatedSettings ResourceJamfProServerURL) (*ResourceJamfProServerURL, error)

Updates Jamf Pro Server URL settings

func (*Client) UpdateJamfProtectIntegrationSettings added in v1.0.4

func (c *Client) UpdateJamfProtectIntegrationSettings(updatedSettings ResourceJamfProtectIntegrationSettings) (*ResourceJamfProtectIntegrationSettings, error)

func (*Client) UpdateLDAPServerByID added in v0.0.67

func (c *Client) UpdateLDAPServerByID(id string, ldapServer *ResourceLDAPServers) (*ResourceLDAPServers, error)

UpdateLDAPServerByID updates an existing LDAP server identified by its ID.

func (*Client) UpdateLDAPServerByName added in v0.0.67

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

UpdateLDAPServerByName updates an existing LDAP server identified by its name.

func (*Client) UpdateLicensedSoftwareByID added in v0.0.68

func (c *Client) UpdateLicensedSoftwareByID(id string, licensedSoftware *ResourceLicensedSoftware) (*ResourceLicensedSoftware, error)

UpdateLicensedSoftwareByID updates an existing licensed software item by its ID.

func (*Client) UpdateLicensedSoftwareByName added in v0.0.68

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

UpdateLicensedSoftwareByName updates an existing licensed software item by its name.

func (*Client) UpdateLocalAdminPasswordSettings added in v1.4.0

func (c *Client) UpdateLocalAdminPasswordSettings(settings *ResourceLocalAdminPasswordSettings) error

UpdateLocalAdminPasswordSettings updates the current Jamf Pro LAPS settings

func (*Client) UpdateLoginCustomization added in v1.7.0

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

func (c *Client) UpdateMacApplicationByID(id string, macApp ResourceMacApplications) (*ResourceMacApplications, error)

UpdateMacApplicationByID updates an existing Mac Application by its ID.

func (*Client) UpdateMacApplicationByName added in v0.0.64

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

UpdateMacApplicationByName updates an existing Mac Application by its name.

func (*Client) UpdateMacOSConfigurationProfileByID added in v0.0.11

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

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 added in v1.5.0

func (c *Client) UpdateManagedSoftwareUpdateFeatureToggle(payload *ResourceManagedSoftwareUpdateFeatureToggle) (*ResponseManagedSoftwareUpdateFeatureToggle, error)

UpdateManagedSoftwareUpdateFeatureToggle updates the feature toggle for managed software updates.

func (*Client) UpdateMobileDeviceApplicationByApplicationBundleID added in v0.0.69

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

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

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

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

func (c *Client) UpdateMobileDeviceByID(id string, attribute *ResourceMobileDevice) (*ResourceMobileDevice, error)

UpdateMobileDeviceByID updates a mobile device by its ID.

func (*Client) UpdateMobileDeviceByName added in v0.0.83

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

UpdateMobileDeviceByName updates a mobile device by its name.

func (*Client) UpdateMobileDeviceConfigurationProfileByID added in v0.0.72

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

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

func (c *Client) UpdateMobileDeviceEnrollmentProfileByID(id string, profile *ResourceMobileDeviceEnrollmentProfile) (*ResourceMobileDeviceEnrollmentProfile, error)

UpdateMobileDeviceEnrollmentProfileByID updates a mobile device enrollment profile by its ID.

func (*Client) UpdateMobileDeviceEnrollmentProfileByInvitation added in v0.0.72

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

UpdateMobileDeviceEnrollmentProfileByInvitation updates a mobile device enrollment profile by its invitation.

func (*Client) UpdateMobileDeviceEnrollmentProfileByName added in v0.0.72

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

UpdateMobileDeviceEnrollmentProfileByName updates a mobile device enrollment profile by its name.

func (*Client) UpdateMobileDeviceGroupByID added in v0.0.75

func (c *Client) UpdateMobileDeviceGroupByID(id string, group *ResourceMobileDeviceGroup) (*ResourceMobileDeviceGroup, error)

UpdateMobileDeviceGroupByID updates a mobile device group by its ID.

func (*Client) UpdateMobileDeviceGroupByName added in v0.0.75

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

UpdateMobileDeviceGroupByName updates a mobile device group by its name.

func (*Client) UpdateMobileDeviceProvisioningProfileByID added in v0.0.76

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

UpdateMobileDeviceProvisioningProfileByID updates a mobile device provisioning profile by its ID.

func (*Client) UpdateMobileDeviceProvisioningProfileByName added in v0.0.76

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

UpdateMobileDeviceProvisioningProfileByName updates a mobile device provisioning profile by its name.

func (*Client) UpdateMobileDeviceProvisioningProfileByUUID added in v0.0.76

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

UpdateMobileDeviceProvisioningProfileByUUID updates a mobile device provisioning profile by its UUID.

func (*Client) UpdateMobileExtensionAttributeByID added in v0.0.72

func (c *Client) UpdateMobileExtensionAttributeByID(id string, attribute *ResourceMobileExtensionAttribute) (*ResourceMobileExtensionAttribute, error)

UpdateMobileExtensionAttributeByID updates a mobile extension attribute by its ID.

func (*Client) UpdateMobileExtensionAttributeByName added in v0.0.72

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

UpdateMobileExtensionAttributeByName updates a mobile extension attribute by its name.

func (*Client) UpdateNetworkSegmentByID added in v0.0.74

func (c *Client) UpdateNetworkSegmentByID(id string, segment *ResourceNetworkSegment) (*ResponseNetworkSegmentCreatedAndUpdated, error)

UpdateNetworkSegmentByID updates a specific network segment by its ID.

func (*Client) UpdateNetworkSegmentByName added in v0.0.74

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

UpdateNetworkSegmentByName updates a specific network segment by its name.

func (*Client) UpdateOnboardingSettings added in v1.9.3

func (c *Client) UpdateOnboardingSettings(request ResourceUpdateOnboardingSettings) (*ResponseUpdateOnboardingSettings, error)

UpdateOnboardingSettings updates the onboarding configuration

func (*Client) UpdatePackageByID added in v1.3.0

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

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

UpdatePatchPolicy creates a new patch policy.

func (*Client) UpdatePatchSoftwareTitleConfigurationById added in v1.0.4

func (c *Client) UpdatePatchSoftwareTitleConfigurationById(id string, updatedConfiguration ResourcePatchSoftwareTitleConfiguration) (*ResponsePatchSoftwareTitleConfigurationCreate, error)

UpdatePatchSoftwareTitleConfigurationById Updates a single PatchSoftwareTitleConfiguration with given ID

func (*Client) UpdatePolicyByID added in v0.0.45

func (c *Client) UpdatePolicyByID(id string, policy *ResourcePolicy) (*ResponsePolicyCreateAndUpdate, error)

UpdatePolicyByID updates an existing policy by its ID.

func (*Client) UpdatePolicyByName added in v0.0.45

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

UpdatePolicyByName updates an existing policy by its name.

func (*Client) UpdatePrinterByID added in v0.0.73

func (c *Client) UpdatePrinterByID(id string, printer *ResourcePrinter) (*ResponsePrinterCreateAndUpdate, error)

UpdatePrinterByID updates a printer by its ID.

func (*Client) UpdatePrinterByName added in v0.0.73

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

UpdatePrinterByName updates a printer by its name.

func (*Client) UpdateRemovableMACAddressByID added in v0.0.86

func (c *Client) UpdateRemovableMACAddressByID(id string, macAddress *ResourceRemovableMacAddress) (*ResourceRemovableMacAddress, error)

UpdateRemovableMACAddressByID updates an existing removable MAC address by its ID.

func (*Client) UpdateRemovableMACAddressByName added in v0.0.86

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

UpdateRemovableMACAddressByName updates an existing removable MAC address by its name.

func (*Client) UpdateRestrictedSoftwareByID added in v0.0.86

func (c *Client) UpdateRestrictedSoftwareByID(id string, restrictedSoftware *ResourceRestrictedSoftware) (*ResponseRestrictedSoftwareCreateAndUpdate, error)

UpdateRestrictedSoftwareByID updates an existing restricted software entry by its ID.

func (*Client) UpdateRestrictedSoftwareByName added in v0.0.86

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

UpdateRestrictedSoftwareByName updates an existing restricted software entry by its name.

func (*Client) UpdateReturnToServiceConfigurationByID added in v1.7.0

func (c *Client) UpdateReturnToServiceConfigurationByID(id string, config ResourceReturnToServiceConfiguration) (*ResponseReturnToServiceConfiguration, error)

UpdateReturnToServiceConfigurationByID updates an existing Return to Service configuration by ID.

func (*Client) UpdateSMTPServerInformation added in v0.0.88

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

UpdateSMTPServerInformation updates the SMTP server settings

func (*Client) UpdateScriptByID added in v0.0.15

func (c *Client) UpdateScriptByID(id string, scriptUpdate *ResourceScript) (*ResourceScript, error)

Updates script from provided ResourceScript - only updates provided keys

func (*Client) UpdateScriptByName added in v0.0.15

func (c *Client) UpdateScriptByName(name string, scriptUpdate *ResourceScript) (*ResourceScript, error)

Leverages UpdateScriptByID and GetScripts to update script from provided ResourceScript

func (*Client) UpdateSelfServiceBrandingMacOSByID added in v0.0.49

func (c *Client) UpdateSelfServiceBrandingMacOSByID(id string, brandingUpdate *ResourceSelfServiceBrandingDetail) (*ResourceSelfServiceBrandingDetail, error)

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

func (*Client) UpdateSelfServiceBrandingMacOSByName added in v0.0.49

func (c *Client) UpdateSelfServiceBrandingMacOSByName(name string, brandingUpdate *ResourceSelfServiceBrandingDetail) (*ResourceSelfServiceBrandingDetail, error)

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

func (*Client) UpdateSelfServiceSettings added in v1.5.0

func (c *Client) UpdateSelfServiceSettings(settingsUpdate *ResourceSelfServiceSettings) (*ResourceSelfServiceSettings, error)

UpdateSelfServiceSettings updates the self service settings.

func (*Client) UpdateSiteByID added in v0.0.32

func (c *Client) UpdateSiteByID(id string, site *SharedResourceSite) (*SharedResourceSite, error)

UpdateSiteByID updates an existing site by its ID.

func (*Client) UpdateSiteByName added in v0.0.32

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

UpdateSiteByName updates an existing site by its name.

func (*Client) UpdateSmartComputerGroupByID added in v1.13.0

func (c *Client) UpdateSmartComputerGroupByID(id string, request ResourceSmartComputerGroup) (*ResourceSmartComputerGroup, error)

UpdateSmartComputerGroupByID updates an existing Smart Computer Group by ID

func (*Client) UpdateSoftwareUpdateServerByID added in v0.0.86

func (c *Client) UpdateSoftwareUpdateServerByID(id string, server *ResourceSoftwareUpdateServer) (*ResourceSoftwareUpdateServer, error)

UpdateSoftwareUpdateServerByID updates a software update server by its ID.

func (*Client) UpdateSoftwareUpdateServerByName added in v0.0.86

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

UpdateSoftwareUpdateServerByName updates a software update server by its name.

func (*Client) UpdateSsoSettings added in v1.0.4

func (c *Client) UpdateSsoSettings(updatedSettings ResourceSsoSettings) (*ResourceSsoSettings, error)

UpdateSsoSettings Updates SSO Settings with ResourceSsoSettings struct data

func (*Client) UpdateUserByEmail added in v0.0.81

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

UpdateUserByEmail updates a user's details by their email.

func (*Client) UpdateUserByID added in v0.0.81

func (c *Client) UpdateUserByID(id string, updatedUser *ResourceUser) (*ResourceUser, error)

UpdateUserByID updates a user's details by their ID.

func (*Client) UpdateUserByName added in v0.0.81

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

UpdateUserByName updates a user's details by their name.

func (*Client) UpdateUserExtensionAttributeByID added in v0.0.83

func (c *Client) UpdateUserExtensionAttributeByID(id string, attribute *ResourceUserExtensionAttribute) (*ResourceUserExtensionAttribute, error)

UpdateUserExtensionAttributeByID updates a user extension attribute by its ID.

func (*Client) UpdateUserExtensionAttributeByName added in v0.0.83

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

UpdateUserExtensionAttributeByName updates a user extension attribute by its name.

func (*Client) UpdateUserGroupByID added in v0.0.80

func (c *Client) UpdateUserGroupByID(id string, userGroup *ResourceUserGroup) (*ResponseUserGroupCreateAndUpdate, error)

UpdateUserGroupByID updates an existing user group by its ID.

func (*Client) UpdateUserGroupByName added in v0.0.80

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

UpdateUserGroupByName updates an existing user group by its name.

func (*Client) UpdateVPPAccountByID added in v1.0.0

func (c *Client) UpdateVPPAccountByID(id string, account *ResourceVPPAccount) (*ResourceVPPAccount, error)

UpdateVPPAccount updates an existing VPP account.

func (*Client) UpdateVPPAssignmentByID added in v0.0.88

func (c *Client) UpdateVPPAssignmentByID(id string, assignment *ResourceVPPAssignment) error

UpdateVPPAssignmentByID updates a VPP assignment by its ID

func (*Client) UpdateVolumePurchasingLocationByID added in v1.0.4

func (c *Client) UpdateVolumePurchasingLocationByID(id string) (*ResourceVolumePurchasingLocation, error)

UpdateVolumePurchasingLocationByID updates a specific volume purchasing location by its ID.

func (*Client) UpdateVolumePurchasingSubscriptionByID added in v0.0.52

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

UpdateVolumePurchasingSubscriptionByID updates a volume purchasing subscription by its ID

func (*Client) UpdateVolumePurchasingSubscriptionByName added in v1.0.1

func (c *Client) UpdateVolumePurchasingSubscriptionByName(name string, updateData *ResourceVolumePurchasingSubscription) (*ResourceVolumePurchasingSubscription, error)

UpdateVolumePurchasingSubscriptionByNameByID updates a volume purchasing subscription by its display name

func (*Client) UpdateWebhookByID added in v0.0.86

func (c *Client) UpdateWebhookByID(id string, webhook *ResourceWebhook) (*ResourceWebhook, error)

UpdateWebhookByID updates a specific webhook by its ID.

func (*Client) UpdateWebhookByName added in v0.0.86

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

UpdateWebhookByName updates a specific webhook by its name.

func (*Client) UploadPackage added in v1.7.0

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) ValidateCloudLdapKeystore added in v1.0.0

func (c *Client) ValidateCloudLdapKeystore(payload PayloadCloudLdapVerifyKeystore) (*ResponseCloudLdapVerifyKeystore, error)

type ClientData added in v1.7.1

type ClientData struct {
	ManagementID string `json:"managementId"`
}

ClientData represents the client data structure in the request

type CloudIdentityProviderDefaultMappingsSubsetGroupMappings added in v1.0.1

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 added in v1.0.1

type CloudIdentityProviderDefaultMappingsSubsetMembershipMappings struct {
	GroupMembershipMapping string `json:"memberOf"`
}

type CloudIdentityProviderDefaultMappingsSubsetUserMappings added in v1.0.1

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 added in v1.0.0

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

type CloudIdpServerSubsetCloudIdpServerMappings added in v0.0.96

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 CommandData added in v1.7.1

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 added in v1.0.0

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

type ComputerGroupListItem added in v0.0.24

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

type ComputerGroupSubsetComputer added in v1.0.0

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 added in v1.6.14

type ComputerGroupSubsetContainerCriteria struct {
	Size      int                     `xml:"size,omitempty"`
	Criterion *[]SharedSubsetCriteria `xml:"criterion,omitempty"`
}

type ComputerHistorySubsetApp added in v1.6.1

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 added in v1.6.1

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 added in v1.6.1

type ComputerHistorySubsetAudit struct {
	Audit ComputerHistorySubsetEventDetails `json:"audit,omitempty" xml:"audit,omitempty"`
}

ComputerHistorySubsetAudit stores audit logs.

type ComputerHistorySubsetCasperImaging added in v1.6.1

type ComputerHistorySubsetCasperImaging struct {
	CasperImagingLog ComputerHistorySubsetEventStatus `json:"casper_imaging_log,omitempty" xml:"casper_imaging_log,omitempty"`
}

ComputerHistorySubsetCasperImaging stores logs for Casper imaging actions.

type ComputerHistorySubsetCasperRemote added in v1.6.1

type ComputerHistorySubsetCasperRemote struct {
	CasperRemoteLog ComputerHistorySubsetEventStatus `json:"casper_remote_log" xml:"casper_remote_log"`
}

ComputerHistorySubsetCasperRemote stores logs for Casper remote actions.

type ComputerHistorySubsetCommand added in v1.6.1

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 added in v1.6.1

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 added in v1.6.1

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 added in v1.6.1

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 added in v1.6.1

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 added in v1.6.1

type ComputerHistorySubsetLocation struct {
	Location ComputerHistorySubsetUserLocation `json:"location,omitempty" xml:"location,omitempty"`
}

ComputerHistorySubsetLocation stores location data related to a user.

type ComputerHistorySubsetPolicyDetails added in v1.6.1

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 added in v1.6.1

type ComputerHistorySubsetPolicyLog struct {
	PolicyLog ComputerHistorySubsetPolicyDetails `json:"policy_log,omitempty" xml:"policy_log,omitempty"`
}

ComputerHistorySubsetPolicyLog stores logs related to policies.

type ComputerHistorySubsetScreenSharing added in v1.6.1

type ComputerHistorySubsetScreenSharing struct {
	ScreenSharingLog ComputerHistorySubsetScreenSharingDetails `json:"screen_sharing_log,omitempty" xml:"screen_sharing_log,omitempty"`
}

ComputerHistorySubsetScreenSharing stores logs related to screen sharing.

type ComputerHistorySubsetScreenSharingDetails added in v1.6.1

type ComputerHistorySubsetScreenSharingDetails struct {
	ComputerHistorySubsetEventStatus
	Details string `json:"details,omitempty" xml:"details,omitempty"`
}

ComputerHistorySubsetScreenSharingDetails extends event status with details specific to screen sharing.

type ComputerHistorySubsetUsageLog added in v1.6.1

type ComputerHistorySubsetUsageLog struct {
	UsageLog ComputerHistorySubsetEventDetails `json:"usage_log,omitempty" xml:"usage_log,omitempty"`
}

ComputerHistorySubsetUsageLog stores logs related to computer usage.

type ComputerHistorySubsetUserLocation added in v1.6.1

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

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

type ComputerInventoryCollectionSettingsSubsetPreferences added in v1.0.0

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

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

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

type ComputerInventorySubsetBootPartitionEncryptionDetails added in v0.0.96

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

BootPartitionEncryptionDetails represents the details of disk encryption.

type ComputerInventorySubsetCertificate added in v0.0.96

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

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

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

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

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

type ComputerInventorySubsetContentCachingDataMigrationError added in v0.0.96

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

type ComputerInventorySubsetContentCachingDataMigrationErrorUserInfo added in v1.0.0

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

type ComputerInventorySubsetContentCachingParent added in v0.0.96

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ComputerInventorySubsetDiskEncryption added in v0.0.96

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

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

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

type ComputerInventorySubsetGeneral added in v0.0.96

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 added in v1.0.0

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

type ComputerInventorySubsetGeneralMdmCapable added in v1.0.0

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

type ComputerInventorySubsetGeneralRemoteManagement added in v1.0.0

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

type ComputerInventorySubsetGroupMembership added in v0.0.96

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

type ComputerInventorySubsetHardware added in v0.0.96

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 added in v1.0.0

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

type ComputerInventorySubsetLicensedSoftware added in v0.0.96

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

type ComputerInventorySubsetLocalUserAccount added in v0.0.96

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

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

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

type ComputerInventorySubsetPlugin added in v0.0.96

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

type ComputerInventorySubsetPrinter added in v0.0.96

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

type ComputerInventorySubsetPurchasing added in v0.0.96

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

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

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

type ComputerInventorySubsetSoftwareUpdate added in v0.0.96

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

type ComputerInventorySubsetStorage added in v0.0.96

type ComputerInventorySubsetStorage struct {
	BootDriveAvailableSpaceMegabytes int                                  `json:"bootDriveAvailableSpaceMegabytes"`
	Disks                            []ComputerInventorySubsetStorageDisk `json:"disks"`
}

type ComputerInventorySubsetStorageDisk added in v1.0.0

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 added in v1.0.0

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

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 added in v1.0.0

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 added in v1.0.0

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

type ComputerPrestageSubsetAccountSettings added in v0.0.96

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

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

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 added in v1.1.4

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ComputerSubsetGeneralRemoteManagement added in v1.0.0

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

type ComputerSubsetGroupsAccounts added in v1.0.0

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 added in v1.0.0

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

type ComputerSubsetGroupsAccountsLocalAccounts added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ComputerSubsetHardwareMappedPrinters added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ComputerSubsetPeripheralsField added in v1.0.0

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

type ComputerSubsetPeripheralsPurchasing added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ComputerSubsetSoftwareAvailableUpdates added in v1.0.0

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 added in v1.0.0

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

type ComputerSubsetSoftwarePlugins added in v1.0.0

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

type ComputersListItem added in v1.0.0

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

type ConfigContainer added in v1.7.3

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 added in v1.5.0

type ConfigurationSettings struct {
	NotificationsEnabled  bool   `json:"notificationsEnabled"`
	AlertUserApprovedMdm  bool   `json:"alertUserApprovedMdm"`
	DefaultLandingPage    string `json:"defaultLandingPage,omitempty"`
	DefaultHomeCategoryId int    `json:"defaultHomeCategoryId,omitempty"`
	BookmarksName         string `json:"bookmarksName,omitempty"`
}

type CustomCookie added in v1.7.3

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

type DeviceScopeSubsetAssignmentItem added in v0.0.96

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 added in v1.0.0

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

type DiskEncryptionConfigurationInstitutionalRecoveryKey added in v1.0.0

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

type DiskEncryptionConfigurationsListItem added in v1.0.0

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

type DisplayField added in v0.0.36

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

Advanced Search DisplayField

type DistributionPointListItem added in v1.0.0

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

type DockItemListItem added in v1.0.0

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

type EBookListItem added in v1.0.0

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

type EbookSubsetGeneral added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

Building represents a building within the scope.

type EbookSubsetScopeComputer added in v1.0.0

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 added in v1.0.0

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

ComputerGroup represents a group of computers within the scope.

type EbookSubsetScopeDepartment added in v1.0.0

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

Department represents a department within the scope.

type EbookSubsetScopeExclusions added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

EbooksSubsetMobileDeviceGroup represents a group of mobile devices within the scope.

type EbookSubsetScopeUser added in v1.0.0

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

User represents a user within the scope.

type EbookSubsetScopeUserGroup added in v1.0.0

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

UserGroup represents a group of users within the scope.

type EbookSubsetSelfService added in v1.0.0

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 added in v1.0.0

type EbookSubsetSelfServiceCategories struct {
	Category []struct {
		ID   int    `xml:"id"`
		Name string `xml:"name"`
	} `xml:"category"`
}

SelfServiceCategories represent the categories within SelfService.

type EbooksSubsetScopeClass added in v1.0.0

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

Class represents a class within the scope.

type EnrollmentCustomizationSubsetBrandingSettings added in v1.0.4

type EnrollmentCustomizationSubsetBrandingSettings struct {
	TextColor       string `json:"textColor"`
	ButtonColor     string `json:"buttonColor"`
	ButtonTextColor string `json:"buttonTextColor"`
	BackgroundColor string `json:"backgroundColor"`
	IconUrl         string `json:"iconUrl"`
}

type ErrorInstance added in v1.11.0

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 added in v1.11.2

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

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

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

FileVaultInventoryList represents the paginated FileVault inventory response.

type Font added in v0.0.61

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

type FontEntry added in v1.5.0

type FontEntry struct {
	Font Font `json:"font,omitempty" xml:"font,omitempty"`
}

type GsxKeystore added in v1.7.0

type GsxKeystore struct {
	Name            string `json:"name"`
	ExpirationEpoch int64  `json:"expirationEpoch"`
	ErrorMessage    string `json:"errorMessage"`
}

type InstallSettings added in v1.5.0

type InstallSettings struct {
	InstallAutomatically bool   `json:"installAutomatically"`
	InstallLocation      string `json:"installLocation,omitempty"`
}

type JCDS2Properties added in v1.4.0

type JCDS2Properties struct {
	JCDS2Enabled              bool `json:"jcds2Enabled"`
	FileStreamEndpointEnabled bool `json:"fileStreamEndpointEnabled"`
	MaxChunkSize              int  `json:"maxChunkSize"`
}

type JamfAppCatalogAppInstallerSubsetMediaSource added in v1.7.2

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 added in v1.7.2

type JamfAppCatalogDeploymentSubsetCategory struct {
	ID       string `json:"id,omitempty"`
	Featured *bool  `json:"featured,omitempty"`
}

Category struct represents the categories within SelfServiceSettings

type JamfAppCatalogDeploymentSubsetNotificationSettings added in v1.7.2

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 added in v1.7.2

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 LDAPServerContainerMapping added in v1.0.0

type LDAPServerContainerMapping struct {
	UserMappings                LDAPServerSubsetMappingUsers                `xml:"user_mappings"`
	UserGroupMappings           LDAPServerSubsetMappingUserGroups           `xml:"user_group_mappings"`
	UserGroupMembershipMappings LDAPServerSubsetMappingUserGroupMemberships `xml:"user_group_membership_mappings"`
}

type LDAPServerSubsetConnection added in v1.0.0

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 added in v1.0.0

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

type LDAPServerSubsetMappingUserGroupMemberships added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type LapsUserPassword added in v1.12.0

type LapsUserPassword struct {
	Username string `json:"username,omitempty"`
	Password string `json:"password,omitempty"`
}

type LapsUserPasswordResponse added in v1.12.0

type LapsUserPasswordResponse struct {
	Username string `json:"username"`
}

type LicensedSoftwareListItem added in v1.0.0

type LicensedSoftwareListItem struct {
}

type LicensedSoftwareSubsetFontDefinitions added in v1.0.0

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

type LicensedSoftwareSubsetGeneral added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type LicensedSoftwareSubsetLicensePurchasing added in v1.0.0

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 added in v1.0.0

type LicensedSoftwareSubsetLicenses struct {
	Size    int                           `xml:"size"`
	License LicensedSoftwareSubsetLicense `xml:"license"`
}

type LicensedSoftwareSubsetPluginDefinitions added in v1.0.0

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

type LicensedSoftwareSubsetSoftwareDefinitions added in v1.0.0

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

type LocalAdminPasswordAccount added in v1.12.0

type LocalAdminPasswordAccount struct {
	ClientManagementID string `json:"clientManagementId"`
	GUID               string `json:"guid"`
	Username           string `json:"username"`
	UserSource         string `json:"userSource"`
}

type LocalAdminPasswordAudit added in v1.12.0

type LocalAdminPasswordAudit struct {
	ViewedBy string `json:"viewedBy"`
	DateSeen string `json:"dateSeen"`
}

type LocalAdminPasswordFullEvent added in v1.12.0

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 added in v1.12.0

type LocalAdminPasswordHistoryItem struct {
	Password       string                    `json:"password"`
	DateLastSeen   string                    `json:"dateLastSeen"`
	ExpirationTime string                    `json:"expirationTime"`
	Audits         []LocalAdminPasswordAudit `json:"audits"`
}

type LocalAdminPasswordPendingRotation added in v1.12.0

type LocalAdminPasswordPendingRotation struct {
	LapsUser    LocalAdminPasswordUser `json:"lapsUser"`
	CreatedDate string                 `json:"createdDate"`
}

type LocalAdminPasswordUser added in v1.12.0

type LocalAdminPasswordUser struct {
	ClientManagementID string `json:"clientManagementId"`
	GUID               string `json:"guid"`
	Username           string `json:"username"`
	UserSource         string `json:"userSource"`
}

type LoginSettings added in v1.5.0

type LoginSettings struct {
	UserLoginLevel  string `json:"userLoginLevel,omitempty"`
	AllowRememberMe bool   `json:"allowRememberMe"`
	AuthType        string `json:"authType,omitempty"`
}

type MacAppScopeExclusions added in v0.0.64

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

type MacAppScopeLimitations struct {
	Users           []MacAppSubsetScopeUser           `xml:"users>user"`
	UserGroups      []MacAppSubsetScopeUserGroup      `xml:"user_groups>user_group"`
	NetworkSegments []MacAppSubsetScopeNetworkSegment `xml:"network_segments>network_segment"`
}

type MacAppSubsetScopeBuilding added in v1.0.0

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

type MacAppSubsetScopeComputer added in v1.0.0

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

type MacAppSubsetScopeComputerGroup added in v1.0.0

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

type MacAppSubsetScopeDepartment added in v1.0.0

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

type MacAppSubsetScopeNetworkSegment added in v1.0.0

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

type MacAppSubsetScopeUser added in v1.0.0

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

type MacAppSubsetScopeUserGroup added in v1.0.0

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

type MacAppSubsetSelfService added in v1.0.0

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 added in v1.0.0

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

type MacAppSubsetSelfServiceVPP added in v1.0.0

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

type MacApplicationsListItem added in v1.0.0

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

type MacApplicationsSubsetGeneral added in v1.0.0

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 added in v1.0.0

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

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

type MacOSConfigurationProfileSubsetComputer added in v1.1.6

type MacOSConfigurationProfileSubsetComputer struct {
	MacOSConfigurationProfileSubsetScopeEntity
	UDID string `xml:"udid,omitempty"`
}

MacOSConfigurationProfileSubsetComputer represents the computer subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetExclusions added in v1.1.6

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 added in v1.1.6

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 added in v1.1.6

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 added in v1.1.6

type MacOSConfigurationProfileSubsetNetworkSegment struct {
	MacOSConfigurationProfileSubsetScopeEntity
	UID string `xml:"uid,omitempty"`
}

MacOSConfigurationProfileSubsetNetworkSegment represents the network segment subset of a macOS configuration profile.

type MacOSConfigurationProfileSubsetScope added in v1.1.6

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 added in v1.6.6

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 added in v1.1.6

type MacOSConfigurationProfileSubsetSelfService struct {
	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 added in v1.1.6

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 added in v1.5.0

type ManagedSoftwareUpdatePlanCreateSubsetDevice struct {
	DeviceID   string `json:"deviceId"`
	ObjectType string `json:"objectType"`
	Href       string `json:"href"`
}

type ManagedSoftwareUpdatePlanCreateSubsetPlan added in v1.5.0

type ManagedSoftwareUpdatePlanCreateSubsetPlan struct {
	Device ManagedSoftwareUpdatePlanCreateSubsetDevice `json:"device"`
	PlanID string                                      `json:"planId"`
	Href   string                                      `json:"href"`
}

type MemberUser added in v1.0.2

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

type MobileDeviceApplicationSubsetBuilding added in v1.0.0

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

type MobileDeviceApplicationSubsetDepartment added in v1.0.0

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

type MobileDeviceApplicationSubsetExclusion added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type MobileDeviceApplicationSubsetGeneralAppConfiguration struct {
	Preferences string `xml:"preferences,omitempty"`
}

type MobileDeviceApplicationSubsetGeneralIPA added in v1.0.0

type MobileDeviceApplicationSubsetGeneralIPA struct {
	Name string `xml:"name,omitempty"`
	URI  string `xml:"uri,omitempty"`
	Data string `xml:"data,omitempty"`
}

type MobileDeviceApplicationSubsetGeneralSelfService added in v1.0.0

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 added in v1.0.0

type MobileDeviceApplicationSubsetGeneralVPP struct {
	AssignVPPDeviceBasedLicenses bool `xml:"assign_vpp_device_based_licenses,omitempty"`
	VPPAdminAccountID            int  `xml:"vpp_admin_account_id,omitempty"`
}

type MobileDeviceApplicationSubsetIcon added in v1.0.0

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

type MobileDeviceApplicationSubsetJSSUser added in v1.0.0

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

type MobileDeviceApplicationSubsetJSSUserGroup added in v1.0.0

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

type MobileDeviceApplicationSubsetLimitation added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type MobileDeviceApplicationSubsetNetworkSegment added in v1.0.0

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

type MobileDeviceApplicationSubsetScope added in v1.0.0

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 added in v1.0.0

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

type MobileDeviceApplicationSubsetUserGroup added in v1.0.0

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

type MobileDeviceApplicationsListItem added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type MobileDeviceConfigurationProfileSubsetNetworkSegment struct {
	MobileDeviceConfigurationProfileSubsetScopeEntity
	UID string `xml:"uid,omitempty"`
}

Specific struct for NetworkSegment due to its unique attribute 'UID'

type MobileDeviceConfigurationProfileSubsetScope added in v1.0.0

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 added in v1.5.7

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

Generic Entity struct for common use

type MobileDeviceConfigurationProfileSubsetSelfService added in v1.0.0

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 added in v1.0.0

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

type MobileDeviceConfigurationProfilesListItem added in v1.0.0

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

type MobileDeviceEnrollmentProfileContainerAttachments added in v1.0.0

type MobileDeviceEnrollmentProfileContainerAttachments struct {
	Attachment MobileDeviceEnrollmentProfileSubsetAttachments `xml:"attachment"`
}

type MobileDeviceEnrollmentProfileSubsetAttachments added in v1.0.0

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

type MobileDeviceEnrollmentProfileSubsetGeneral added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type MobileDeviceExtensionAttributesListItem added in v1.0.0

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

type MobileDeviceGroupSubsetDeviceItem added in v1.0.0

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 added in v1.0.0

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

type MobileDeviceListItem added in v1.0.0

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 added in v1.0.4

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 added in v1.0.4

type MobileDevicePrestageSubsetNames struct {
	AssignNamesUsing    string                                `json:"assignNamesUsing"`
	PrestageDeviceNames []MobileDevicePrestageSubsetNamesName `json:"prestageDeviceNames"`
	DeviceNamePrefix    string                                `json:"deviceNamePrefix"`
	DeviceNameSuffix    string                                `json:"deviceNameSuffix"`
	SingleDeviceName    string
}

type MobileDevicePrestageSubsetNamesName added in v1.0.4

type MobileDevicePrestageSubsetNamesName struct {
	ID         string `json:"id"`
	DeviceName string `json:"deviceName"`
	Used       bool   `json:"used"`
}

type MobileDevicePrestageSubsetPurchasingInformation added in v1.0.4

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 added in v1.0.4

type MobileDevicePrestageSubsetSkipSetupItems struct {
	Location bool `json:"Location"`
	Privacy  bool `json:"Privacy"`
}

type MobileDeviceProvisioningProfileSubsetGeneral added in v1.0.0

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

type MobileDeviceProvisioningProfilesListItem added in v1.0.0

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

type MobileDeviceSubsetApplication added in v1.0.0

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

type MobileDeviceSubsetCertificate added in v1.0.0

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

type MobileDeviceSubsetConfigurationProfile added in v1.0.0

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

type MobileDeviceSubsetExtensionAttribute added in v1.0.0

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

type MobileDeviceSubsetGeneral added in v1.0.0

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 added in v1.0.0

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

type MobileDeviceSubsetLocation added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type MobileExtensionAttributeSubsetInputType struct {
	Type         string       `xml:"type,omitempty"`
	PopupChoices PopupChoices `xml:"popup_choices,omitempty"`
}

type OnboardingItem added in v1.9.3

type OnboardingItem struct {
	SelfServiceEntityType string `json:"selfServiceEntityType"`
	ID                    string `json:"id"`
	EntityId              string `json:"entityId"`
	Priority              int    `json:"priority"`
}

type OnboardingItemResponse added in v1.9.3

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 added in v1.7.1

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 PatchPoliciesContainerGeneralKillApps added in v1.0.0

type PatchPoliciesContainerGeneralKillApps struct {
	KillApp PatchPoliciesSubsetGeneralKillApp `xml:"kill_app"`
}

type PatchPoliciesSubsetBuilding added in v1.0.0

type PatchPoliciesSubsetBuilding struct {
	Building PatchPoliciesSubsetGroup `xml:"building"`
}

PatchPoliciesSubsetBuilding represents a building in the scope.

type PatchPoliciesSubsetComputerGroup added in v1.0.0

type PatchPoliciesSubsetComputerGroup struct {
	ComputerGroup PatchPoliciesSubsetGroup `xml:"computer_group"`
}

PatchPoliciesSubsetComputerGroup represents a computer group in the scope.

type PatchPoliciesSubsetComputerItem added in v1.0.0

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

PatchPoliciesSubsetComputerItem represents a computer in the scope.

type PatchPoliciesSubsetDepartment added in v1.0.0

type PatchPoliciesSubsetDepartment struct {
	Department PatchPoliciesSubsetGroup `xml:"department"`
}

PatchPoliciesSubsetDepartment represents a department in the scope.

type PatchPoliciesSubsetGeneral added in v1.0.0

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

type PatchPoliciesSubsetGeneralKillApp added in v1.0.0

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

type PatchPoliciesSubsetGroup added in v1.0.0

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

PatchPoliciesSubsetGroup is a general struct for group elements.

type PatchPoliciesSubsetIBeaconItem added in v1.0.0

type PatchPoliciesSubsetIBeaconItem struct {
	IBeacon PatchPoliciesSubsetGroup `xml:"ibeacon"`
}

PatchPoliciesSubsetIBeaconItem represents an iBeacon in limitations.

type PatchPoliciesSubsetNetworkSegmentItem added in v1.0.0

type PatchPoliciesSubsetNetworkSegmentItem struct {
	NetworkSegment PatchPoliciesSubsetGroup `xml:"network_segment"`
}

PatchPoliciesSubsetNetworkSegmentItem represents a network segment in limitations.

type PatchPoliciesSubsetScope added in v1.0.0

type PatchPoliciesSubsetScope struct {
	AllComputers   bool                                `xml:"all_computers"`
	Computers      []PatchPoliciesSubsetComputerItem   `xml:"computers>computer"`
	ComputerGroups []PatchPoliciesSubsetComputerGroup  `xml:"computer_groups>computer_group"`
	Buildings      []PatchPoliciesSubsetBuilding       `xml:"buildings>building"`
	Departments    []PatchPoliciesSubsetDepartment     `xml:"departments>department"`
	Limitations    PatchPoliciesSubsetScopeLimitations `xml:"limitations"`
	Exclusions     PatchPoliciesSubsetScopeExclusions  `xml:"exclusions"`
}

type PatchPoliciesSubsetScopeExclusions added in v1.0.0

type PatchPoliciesSubsetScopeExclusions struct {
	Computers       []PatchPoliciesSubsetComputerItem       `xml:"computers>computer"`
	ComputerGroups  []PatchPoliciesSubsetComputerGroup      `xml:"computer_groups>computer_group"`
	Buildings       []PatchPoliciesSubsetBuilding           `xml:"buildings>building"`
	Departments     []PatchPoliciesSubsetDepartment         `xml:"departments>department"`
	NetworkSegments []PatchPoliciesSubsetNetworkSegmentItem `xml:"network_segments>network_segment"`
	IBeacons        []PatchPoliciesSubsetIBeaconItem        `xml:"ibeacons>ibeacon"`
}

type PatchPoliciesSubsetScopeLimitations added in v1.0.0

type PatchPoliciesSubsetScopeLimitations struct {
	NetworkSegments []PatchPoliciesSubsetNetworkSegmentItem `xml:"network_segments>network_segment"`
	IBeacons        []PatchPoliciesSubsetIBeaconItem        `xml:"ibeacons>ibeacon"`
}

type PatchPoliciesSubsetUserInteraction added in v1.0.0

type PatchPoliciesSubsetUserInteraction struct {
	InstallButtonText      string                                          `xml:"install_button_text"`
	SelfServiceDescription string                                          `xml:"self_service_description"`
	SelfServiceIcon        SharedResourceSelfServiceIcon                   `xml:"self_service_icon"`
	Notifications          PatchPoliciesSubsetUserInteractionNotifications `xml:"notifications"`
	Deadlines              PatchPoliciesSubsetUserInteractionDeadlines     `xml:"deadlines"`
	GracePeriod            PatchPoliciesSubsetUserInteractionGracePeriod   `xml:"grace_period"`
}

type PatchPoliciesSubsetUserInteractionDeadlines added in v1.0.0

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

type PatchPoliciesSubsetUserInteractionGracePeriod added in v1.0.0

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

type PatchPoliciesSubsetUserInteractionNotifications added in v1.0.0

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

type PatchPoliciesSubsetUserInteractionNotificationsReminders added in v1.0.0

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

type PatchSoftwareTitleConfigurationSubsetExtensionAttribute added in v1.0.4

type PatchSoftwareTitleConfigurationSubsetExtensionAttribute struct {
	Accepted bool   `json:"accepted"`
	EaID     string `json:"eaId"`
}

type PatchSoftwareTitleConfigurationSubsetPackage added in v1.0.4

type PatchSoftwareTitleConfigurationSubsetPackage struct {
	PackageId   string `json:"packageId"`
	Version     string `json:"version"`
	DisplayName string `json:"displayName"`
}

type PayloadCloudLdapVerifyKeystore added in v1.0.0

type PayloadCloudLdapVerifyKeystore struct {
	Password  string `json:"password"`
	FileBytes string `json:"fileBytes"`
	FileName  string `json:"fileName"`
}

type Plugin added in v0.0.61

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

type PluginEntry added in v1.5.0

type PluginEntry struct {
	Plugin Plugin `json:"plugin,omitempty" xml:"plugin,omitempty"`
}

type PolicyLimitToUsers added in v0.0.45

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

type PolicySubsetAccountMaintenance added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type PolicySubsetAccountMaintenanceManagementAccount added in v1.0.0

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

type PolicySubsetAccountMaintenanceOpenFirmwareEfiPassword added in v1.0.0

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

type PolicySubsetBuilding added in v1.6.3

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

type PolicySubsetComputer added in v1.6.3

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

type PolicySubsetComputerGroup added in v1.6.3

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

type PolicySubsetDepartment added in v1.6.3

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

type PolicySubsetDiskEncryption added in v1.0.0

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 added in v1.0.0

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

type PolicySubsetFilesProcesses added in v1.0.0

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 added in v1.0.0

type PolicySubsetGeneral struct {
	ID      int    `xml:"id"`
	Name    string `xml:"name"`
	Enabled bool   `xml:"enabled"`
	// Trigger                    string                                  `xml:"trigger,omitempty"` // NOTE not needed
	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 added in v1.0.0

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         []PolicySubsetGeneralDateTimeLimitationsNoExecuteOn `xml:"no_execute_on>day,omitempty"`
	NoExecuteStart string `xml:"no_execute_start"`
	NoExecuteEnd   string `xml:"no_execute_end"`
}

type PolicySubsetGeneralNetworkLimitations added in v1.0.0

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

type PolicySubsetGeneralOverrideSettings added in v1.1.0

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 added in v1.6.3

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

type PolicySubsetJSSUser added in v1.6.3

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

type PolicySubsetJSSUserGroup added in v1.6.3

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

type PolicySubsetMaintenance added in v1.0.0

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 added in v1.6.3

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

type PolicySubsetPackageConfiguration added in v1.0.0

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

PolicySubsetPackageConfiguration represents the package configuration settings of a policy

type PolicySubsetPackageConfigurationPackage added in v1.0.0

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 added in v1.0.0

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

type PolicySubsetPrinters added in v1.0.0

type PolicySubsetPrinters struct {
	LeaveExistingDefault bool                  `xml:"leave_existing_default"`
	Printer              []PolicySubsetPrinter `xml:"printer"`
}

PolicySubsetPrinters represents the printers settings of a policy

type PolicySubsetReboot added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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:"re_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       []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 added in v1.0.14

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

type PolicySubsetUser added in v1.6.3

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

type PolicySubsetUserGroup added in v1.6.3

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

type PolicySubsetUserInteraction added in v1.0.0

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

PolicySubsetUserInteraction represents the user interaction settings of a policy

type PopupChoices added in v1.11.4

type PopupChoices struct {
	Choice []string `xml:"choice"`
}

type PrintersListItem added in v1.0.0

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

type ProgressReader added in v1.5.9

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

ProgressReader wraps an io.Reader to report progress on read operations

func (*ProgressReader) Read added in v1.5.9

func (r *ProgressReader) Read(p []byte) (int, error)

Read implements the io.Reader interface.

type QueuedCommand added in v1.7.1

type QueuedCommand struct {
	Device      int    `json:"device"`
	CommandUUID string `json:"commandUuid"`
}

QueuedCommand represents the details of a queued command in the response

type RequestEraseDeviceComputer added in v1.13.0

type RequestEraseDeviceComputer struct {
	Pin *string `json:"pin,omitempty"`
}

RequestEraseDeviceComputer represents the request structure for erasing a device.

type ResourcManagedSoftwareUpdatePlanConfig added in v1.11.2

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 added in v1.11.2

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 added in v1.0.4

type ResourceADUETokenSettings struct {
	Enabled                   bool `json:"enabled"`
	ExpirationIntervalDays    int  `json:"expirationIntervalDays,omitempty"`
	ExpirationIntervalSeconds int  `json:"expirationIntervalSeconds,omitempty"`
}

type ResourceAPIRole added in v0.0.96

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 added in v1.0.0

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 added in v1.4.0

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 added in v1.0.0

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 added in v1.1.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type ResourceAllowedFileExtension struct {
	ID        int    `xml:"id"`
	Extension string `xml:"extension"`
}

type ResourceApiIntegration added in v0.0.96

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

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

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

type ResourceAvailableUpdates added in v1.5.0

type ResourceAvailableUpdates struct {
	MacOS []string `json:"macOS"`
	IOS   []string `json:"iOS"`
}

type ResourceBYOProfile added in v1.0.0

type ResourceBYOProfile struct {
	General BYOProfileSubsetGeneral `xml:"general"`
}

BYOProfile represents the details of a BYO profile.

type ResourceBuilding added in v0.0.96

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

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

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

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

type ResourceClass added in v1.0.0

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 added in v1.0.0

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

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

Integration represents the details of Api client credentials

type ResourceCloudDistributionPointUploadCapability added in v1.1.0

type ResourceCloudDistributionPointUploadCapability struct {
	ID   bool `json:"principalDistributionTechnology"`
	Name bool `json:"directUploadCapable"`
}

type ResourceCloudIdp added in v0.0.96

type ResourceCloudIdp struct {
	CloudIdPCommon CloudIdpListItem       `json:"cloudIdPCommon"`
	Server         ResourceCloudIdpServer `json:"server"`
}

type ResourceCloudIdpServer added in v0.0.96

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 ResourceComputerCheckin added in v1.0.0

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

type ResourceComputerExtensionAttribute added in v1.0.0

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 added in v1.0.0

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 added in v1.6.1

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

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 added in v1.5.0

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

type ResourceComputerInventoryCollectionSettings struct {
	ComputerInventoryCollectionPreferences ComputerInventoryCollectionSettingsSubsetPreferences `json:"computerInventoryCollectionPreferences"`
	ApplicationPaths                       []ComputerInventoryCollectionSettingsSubsetPathItem  `json:"applicationPaths"`
	FontPaths                              []ComputerInventoryCollectionSettingsSubsetPathItem  `json:"fontPaths"`
	PluginPaths                            []ComputerInventoryCollectionSettingsSubsetPathItem  `json:"pluginPaths"`
}

type ResourceComputerInventoryCollectionSettingsCustomPath added in v0.0.96

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

ComputerInventoryCollectionSettingsCustomPath defines the request body for creating a custom path.

type ResourceComputerInvitation added in v1.0.0

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

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 added in v1.1.0

type ResourceConditionalAccessDeviceComplianceStatus struct {
	SharedDeviceFeatureEnabled bool `json:"sharedDeviceFeatureEnabled"`
}

ResourceConditionalAccessDeviceComplianceStatus represents the resource object.

type ResourceDSSDeclaration added in v1.9.0

type ResourceDSSDeclaration struct {
	UUID        string `json:"uuid"`
	PayloadJson string `json:"payloadJson"`
	Type        string `json:"type"`
	Group       string `json:"group"`
}

Resource

type ResourceDeclaration added in v1.9.0

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 added in v1.0.0

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

type ResourceDeployPackage added in v1.7.1

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 added in v1.0.1

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

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

DeviceEnrollment represents a single device enrollment instance.

type ResourceDiskEncryptionConfiguration added in v1.0.0

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 added in v1.0.0

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 ResourceEbooks added in v1.0.0

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 added in v1.9.3

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 ResourceEnrollmentCustomization added in v1.0.4

type ResourceEnrollmentCustomization struct {
	ID               string                                        `json:"id"`
	SiteID           string                                        `json:"siteId"`
	DisplayName      string                                        `json:"displayName"`
	Description      string                                        `json:"description"`
	BrandingSettings EnrollmentCustomizationSubsetBrandingSettings `json:"enrollmentCustomizationBrandingSettings"`
}

type ResourceFileShareDistributionPoint added in v1.1.8

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 added in v1.0.0

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 added in v1.0.0

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 ResourceJamfAppCatalogAppInstaller added in v1.7.2

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 added in v1.7.2

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 ResourceJamfProServerURL added in v1.0.4

type ResourceJamfProServerURL struct {
	URL                    string `json:"url"`
	UnsecuredEnrollmentUrl string `json:"unsecuredEnrollmentUrl"`
}

type ResourceJamfProtectHistory added in v1.9.2

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 added in v1.9.2

type ResourceJamfProtectIntegrationRequest struct {
	AutoInstall bool `json:"autoInstall"`
}

type ResourceJamfProtectIntegrationSettings added in v1.0.4

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 added in v1.9.2

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 added in v1.9.2

type ResourceJamfProtectRegisterRequest struct {
	ProtectURL string `json:"protectUrl"`
	ClientID   string `json:"clientId"`
	Password   string `json:"password"`
}

Structs for Jamf Protect API registration

type ResourceJamfProtectRegisterResponse added in v1.9.2

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 added in v1.9.2

type ResourceJamfProtectRetryRequest struct {
	IDs []string `json:"ids"`
}

type ResourceLDAPServers added in v1.0.0

type ResourceLDAPServers struct {
	Connection       LDAPServerSubsetConnection `xml:"connection"`
	MappingsForUsers LDAPServerContainerMapping `xml:"mappings_for_users"`
}

ResourceLDAPServers represents the structure of an individual LDAP server.

type ResourceLapsPasswordList added in v1.12.0

type ResourceLapsPasswordList struct {
	LapsUserPasswordList []LapsUserPassword `json:"lapsUserPasswordList"`
}

type ResourceLicensedSoftware added in v1.0.0

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 added in v1.4.0

type ResourceLocalAdminPasswordSettings struct {
	AutoDeployEnabled        bool `json:"autoDeployEnabled"`
	PasswordRotationTime     int  `json:"passwordRotationTime"`
	AutoRotateEnabled        bool `json:"autoRotateEnabled"`
	AutoRotateExpirationTime int  `json:"autoRotateExpirationTime"`
}

Resource

type ResourceLoginCustomization added in v1.7.0

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 added in v1.7.1

type ResourceMDMCommandRequest struct {
	CommandData CommandData  `json:"commandData"`
	ClientData  []ClientData `json:"clientData"`
}

ResourceMDMCommandRequest represents the overall request structure for the MDM command

type ResourceMDMProfileRenewal added in v1.7.1

type ResourceMDMProfileRenewal struct {
	UDIDs []string `json:"udids"`
}

ResourceMDMProfileRenewal represents the request structure for renewing MDM profiles

type ResourceMacApplications added in v1.0.0

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 added in v1.1.6

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 added in v1.5.0

type ResourceManagedSoftwareUpdateFeatureToggle struct {
	Toggle bool `json:"toggle"`
}

ResourceManagedSoftwareUpdateFeatureToggle represents the payload for updating the feature toggle.

type ResourceManagedSoftwareUpdatePlan added in v1.5.0

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 added in v1.0.0

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 added in v1.0.0

type ResourceMobileDeviceApplication struct {
	General MobileDeviceApplicationSubsetGeneral `xml:"general"`
}

ResourceMobileDeviceApplication represents the detailed structure of a single mobile device application.

type ResourceMobileDeviceConfigurationProfile added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.4

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 added in v1.0.0

type ResourceMobileDeviceProvisioningProfile struct {
	General MobileDeviceProvisioningProfileSubsetGeneral `xml:"general"`
}

ResourceMobileDeviceProvisioningProfile represents the detailed structure for a mobile device provisioning profile.

type ResourceMobileExtensionAttribute added in v1.0.0

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 added in v1.0.0

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 ResourceOIDCKey added in v1.12.0

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 added in v1.12.0

type ResourceOIDCRedirectURL struct {
	OriginalURL  string `json:"originalUrl"`
	EmailAddress string `json:"emailAddress"`
}

ResourceOIDCRedirectURL represents the request body for getting the OIDC redirect URL.

type ResourcePackage added in v1.3.0

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 added in v1.7.0

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 added in v1.5.8

type ResourcePatchExternalSource struct {
	HostName   string `xml:"host_name,omitempty" json:"host_name"`
	SSLEnabled bool   `xml:"ssl_enabled" json:"ssl_enabled"`
	Port       int    `xml:"port" json:"port"`
	ID         int    `xml:"id" json:"id"`
	Name       string `xml:"name,omitempty" json:"name"`
}

ResourcePatchExternalSource represents the root element of the patch external source.

type ResourcePatchPolicies added in v1.0.0

type ResourcePatchPolicies struct {
	General                      PatchPoliciesSubsetGeneral         `xml:"general"`
	Scope                        PatchPoliciesSubsetScope           `xml:"scope"`
	UserInteraction              PatchPoliciesSubsetUserInteraction `xml:"user_interaction"`
	SoftwareTitleConfigurationID int                                `xml:"software_title_configuration_id"`
}

ResourcePatchPolicies represents the root element of the patch policy XML.

type ResourcePatchPolicy added in v1.4.1

type ResourcePatchPolicy 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 added in v1.0.4

type ResourcePatchSoftwareTitleConfiguration struct {
	DisplayName            string                                                    `json:"displayName"`
	CategoryID             string                                                    `json:"categoryId"`
	SiteID                 string                                                    `json:"siteId"`
	UiNotifications        bool                                                      `json:"uiNotifications"`
	EmailNotifications     bool                                                      `json:"emailNotifications"`
	SoftwareTitleID        string                                                    `json:"softwareTitleId"`
	ExtensionAttributes    []PatchSoftwareTitleConfigurationSubsetExtensionAttribute `json:"extensionAttributes"`
	SoftwareTitleName      string                                                    `json:"softwareTitleName"`
	SoftwareTitleNameId    string                                                    `json:"softwareTitleNameId"`
	SoftwareTitlePublisher string                                                    `json:"softwareTitlePublisher"`
	ID                     string                                                    `json:"id"`
	Packages               []PatchSoftwareTitleConfigurationSubsetPackage            `json:"packages"`
}

type ResourcePolicy added in v1.0.0

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 ResourcePrinter added in v1.0.0

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 added in v1.0.0

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

type ResourceRestrictedSoftware added in v1.0.0

type ResourceRestrictedSoftware struct {
	General RestrictedSoftwareSubsetGeneral `xml:"general"`
	Scope   RestrictedSoftwareSubsetScope   `xml:"scope"`
}

Structs for individual Restricted Software

type ResourceReturnToServiceConfiguration added in v1.7.0

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 added in v1.0.0

type ResourceSMTPServer struct {
	Enabled                bool   `json:"enabled"`
	Server                 string `json:"server,omitempty"`
	Port                   int    `json:"port,omitempty"`
	EncryptionType         string `json:"encryptionType,omitempty"`
	ConnectionTimeout      int    `json:"connectionTimeout,omitempty"`
	SenderDisplayName      string `json:"senderDisplayName,omitempty"`
	SenderEmailAddress     string `json:"senderEmailAddress,omitempty"`
	RequiresAuthentication bool   `json:"requiresAuthentication"`
	Username               string `json:"username,omitempty"`
}

Updated struct for the SMTP server settings based on the new JSON data model

type ResourceScript added in v0.0.96

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 ResourceSelfServiceBrandingDetail added in v0.0.96

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 added in v1.5.0

type ResourceSelfServiceSettings struct {
	InstallSettings       InstallSettings       `json:"installSettings"`
	LoginSettings         LoginSettings         `json:"loginSettings"`
	ConfigurationSettings ConfigurationSettings `json:"configurationSettings"`
}

type ResourceSmartComputerGroup added in v1.13.0

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 added in v1.13.0

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 added in v1.0.0

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 added in v1.0.4

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 ResourceUpdateOnboardingSettings added in v1.9.3

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type ResourceUserExtensionAttributeSubsetInputType struct {
	Type string `xml:"type"`
}

type ResourceUserGroup added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.4

type ResourceVolumePurchasingLocation struct {
	VolumePurchasingLocationSubsetBody                                 // 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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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

type ResponseAccountCreatedAndUpdated added in v1.0.0

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

type ResponseAccountDrivenUserEnrollmentAccessGroupCreateAndUpdate added in v1.4.0

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

type ResponseAccountDrivenUserEnrollmentAccessGroupsList added in v1.4.0

type ResponseAccountDrivenUserEnrollmentAccessGroupsList struct {
	TotalCount int                                              `json:"totalCount"`
	Results    []ResourceAccountDrivenUserEnrollmentAccessGroup `json:"results"`
}

type ResponseAccountGroupCreated added in v1.0.0

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

type ResponseActiveCertificateAuthority struct {
	SubjectX500Principal string                                    `json:"subjectX500Principal"`
	IssuerX500Principal  string                                    `json:"issuerX500Principal"`
	SerialNumber         string                                    `json:"serialNumber"`
	Version              int                                       `json:"version"`
	NotAfter             int64                                     `json:"notAfter"`
	NotBefore            int64                                     `json:"notBefore"`
	Signature            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 added in v1.0.0

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

type ResponseAdvancedComputerSearchesList added in v0.0.78

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

ResponseAdvancedComputerSearchesList represents the structure for multiple advanced computer searches.

type ResponseAdvancedMobileDeviceSearchChoices added in v1.13.0

type ResponseAdvancedMobileDeviceSearchChoices struct {
	Choices []string `json:"choices"`
}

ResponseAdvancedMobileDeviceSearchChoices represents the response for Advanced Mobile Device Search Choices

type ResponseAdvancedMobileDeviceSearchCreate added in v1.13.1

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

ResponseAdvancedMobileDeviceSearchCreate represents the response structure for creating a Smart Computer Group

type ResponseAdvancedMobileDeviceSearchesList added in v0.0.48

type ResponseAdvancedMobileDeviceSearchesList struct {
	TotalCount int                                  `json:"totalCount"`
	Results    []ResourceAdvancedMobileDeviceSearch `json:"results"`
}

ResponseAdvancedMobileDeviceSearchesList represents the response for Advanced Mobile Device Searches

type ResponseAdvancedUserSearchCreatedAndUpdated added in v1.5.6

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

type ResponseAdvancedUserSearchesList added in v0.0.44

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

Response structure for the list of advanced user searches

type ResponseAllowedFileExtensionsList added in v0.0.9

type ResponseAllowedFileExtensionsList struct {
	Size                  int                            `xml:"size"`
	AllowedFileExtensions []ResourceAllowedFileExtension `xml:"allowed_file_extension"`
}

Response structure for the list of allowed file extensions

type ResponseApiIntegrationsList added in v0.0.96

type ResponseApiIntegrationsList struct {
	TotalCount int                      `json:"totalCount"`
	Results    []ResourceApiIntegration `json:"results"`
}

ResponseApiIntegrations represents the structure of the response for fetching API integrations

type ResponseApiRolesList added in v0.0.96

type ResponseApiRolesList struct {
	TotalCount int               `json:"totalCount"`
	Results    []ResourceAPIRole `json:"results"`
}

ResponseApiRoles represents the structure of the response for fetching API roles

type ResponseBYOProfilesList added in v0.0.50

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

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

type ResponseBuildingCreate added in v0.0.79

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

ResponseBuildingCreate represents the response structure for creating a building.

type ResponseBuildingResourceHistoryList added in v0.0.79

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

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

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

type ResponseCSATenantID added in v1.9.0

type ResponseCSATenantID struct {
	TenantID string `json:"tenantId"`
}

ResponseCSATenantID represents the response structure for the CSA tenant ID.

type ResponseCSATokenExchangeDetails added in v1.9.0

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

type ResponseCategoriesList struct {
	TotalCount int                `json:"totalCount"`
	Results    []ResourceCategory `json:"results"`
}

type ResponseCategoryCreateAndUpdate added in v1.3.8

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

ResponseCategoryCreateAndUpdate represents the response structure for creating a category.

type ResponseClassesList added in v0.0.51

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

ResponseClassesList represents the XML response for a list of classes.

type ResponseCloudDistributionPointCreate added in v1.1.0

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

type ResponseCloudIdentityProviderDefaultMappings added in v1.0.1

type ResponseCloudIdentityProviderDefaultMappings struct {
	CloudIdentityProviderDefaultMappingsSubsetUserMappings       CloudIdentityProviderDefaultMappingsSubsetUserMappings       `json:"userMappings"`
	CloudIdentityProviderDefaultMappingsSubsetGroupMappings      CloudIdentityProviderDefaultMappingsSubsetGroupMappings      `json:"groupMappings"`
	CloudIdentityProviderDefaultMappingsSubsetMembershipMappings CloudIdentityProviderDefaultMappingsSubsetMembershipMappings `json:"membershipMappings"`
}

type ResponseCloudIdpCreate added in v0.0.96

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

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

type ResponseCloudLdapVerifyKeystore added in v1.0.0

type ResponseCloudLdapVerifyKeystore struct {
	Type           string `json:"type"`
	ExpirationDate string `json:"expirationDate"`
	Subject        string `json:"subject"`
	FileName       string `json:"fileName"`
}

type ResponseComputer added in v0.0.61

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 added in v1.11.0

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

ResponseComputerExtensionAttributeCreated represents the response for a created computer extension attribute

type ResponseComputerExtensionAttributesList added in v0.0.37

type ResponseComputerExtensionAttributesList struct {
	TotalCount int                                  `json:"totalCount"`
	Results    []ResourceComputerExtensionAttribute `json:"results"`
}

ResponseComputerExtensionAttributesList represents the paginated response for computer extension attributes

type ResponseComputerGroupreatedAndUpdated added in v1.6.14

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

type ResponseComputerGroupsList added in v0.0.78

type ResponseComputerGroupsList struct {
	Size    int                     `xml:"size"`
	Results []ComputerGroupListItem `xml:"computer_group"`
}

type ResponseComputerInventoryList added in v0.0.84

type ResponseComputerInventoryList struct {
	TotalCount int                         `json:"totalCount"`
	Results    []ResourceComputerInventory `json:"results"`
}

ResponseComputerInventoryList represents the top-level JSON response structure.

type ResponseComputerInvitationsList added in v0.0.56

type ResponseComputerInvitationsList struct {
	Size               int                          `xml:"size"`
	ComputerInvitation []ComputerInvitationListItem `xml:"computer_invitation"`
}

type ResponseComputerPrestageCreate added in v0.0.97

type ResponseComputerPrestageCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

ResponseComputerPrestageCreate represents the response structure for creating a building.

type ResponseComputerPrestagesList added in v0.0.96

type ResponseComputerPrestagesList struct {
	TotalCount *int                       `json:"totalCount"`
	Results    []ResourceComputerPrestage `json:"results"`
}

type ResponseComputersList added in v0.0.61

type ResponseComputersList struct {
	TotalCount int                 `xml:"size"`
	Results    []ComputersListItem `xml:"computer"`
}

Response structure for the list of computers

type ResponseDSSDeclaration added in v1.9.0

type ResponseDSSDeclaration struct {
	Declarations []ResourceDSSDeclaration `json:"declarations"`
}

Responses

type ResponseDeclarationsList added in v1.9.0

type ResponseDeclarationsList struct {
	Declarations []ResourceDeclaration `json:"declarations"`
}

ResponseDeclarationsList represents the response structure for the list of declarations.

type ResponseDepartmentCreate added in v1.0.1

type ResponseDepartmentCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

type ResponseDepartmentsList added in v0.0.34

type ResponseDepartmentsList struct {
	TotalCount int                  `json:"totalCount"`
	Results    []ResourceDepartment `json:"results"`
}

type ResponseDeployPackage added in v1.7.1

type ResponseDeployPackage struct {
	QueuedCommands []QueuedCommand             `json:"queuedCommands"`
	Errors         []SharedResourceErrorDetail `json:"errors"`
}

ResponseDeployPackage represents the response structure for deploying a package

type ResponseDeviceEnrollmentsList added in v0.0.96

type ResponseDeviceEnrollmentsList struct {
	TotalCount int                        `json:"totalCount"`
	Results    []ResourceDeviceEnrollment `json:"results"`
}

ResponseDeviceEnrollmentList represents the response for device enrollments list.

type ResponseDeviceScope added in v0.0.49

type ResponseDeviceScope struct {
	PrestageId  string                            `json:"prestageId"`
	Assignments []DeviceScopeSubsetAssignmentItem `json:"assignments"`
	VersionLock int                               `json:"versionLock"`
}

ResponseDeviceScope represents the structure of the response for a specific computer prestage scope.

type ResponseDirectoryBinding added in v0.0.59

type ResponseDirectoryBinding struct {
	ID         int    `xml:"id"`
	Name       string `xml:"name"`
	Priority   int    `xml:"priority"`
	Domain     string `xml:"domain"`
	Username   string `xml:"username"`
	Password   string `xml:"password"`
	ComputerOU string `xml:"computer_ou"`
	Type       string `xml:"type"`
}

Struct to capture the XML response for a single directory binding

type ResponseDirectoryBindingsList added in v0.0.59

type ResponseDirectoryBindingsList struct {
	Size             int                         `xml:"size"`
	DirectoryBinding []DirectoryBindingsListItem `xml:"directory_binding"`
}

Struct to capture the XML response for directory bindings

type ResponseDiskEncryptionConfigurationCreatedAndUpdated added in v1.1.3

type ResponseDiskEncryptionConfigurationCreatedAndUpdated struct {
	ID int `xml:"id"`
}

type ResponseDiskEncryptionConfigurationsList added in v0.0.57

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 added in v0.0.58

type ResponseDistributionPointsList struct {
	Size              int                       `xml:"size"`
	DistributionPoint DistributionPointListItem `xml:"distribution_point"`
}

Struct to capture the XML response for distribution points list

type ResponseDockItemsList added in v0.0.62

type ResponseDockItemsList struct {
	Size      int                `xml:"size"`
	DockItems []DockItemListItem `xml:"dock_item"`
}

Struct to capture the XML response for dock items list

type ResponseEbooksList added in v0.0.63

type ResponseEbooksList struct {
	Size   int           `xml:"size"`
	Ebooks EBookListItem `xml:"ebook"`
}

Struct to capture the XML response for ebooks list

type ResponseEligiblilityForOnboardingList added in v1.9.3

type ResponseEligiblilityForOnboardingList struct {
	TotalCount int                                     `json:"totalCount"`
	Results    []ResourceEligiblilityForOnboardingList `json:"results"`
}

ResponseEligiblilityForOnboardingList represents the paginated response for eligible apps

type ResponseEnrollmentCustomizationCreate added in v1.0.4

type ResponseEnrollmentCustomizationCreate struct {
	Id   string `json:"id"`
	Href string `json:"href"`
}

type ResponseEnrollmentCustomizationList added in v1.0.4

type ResponseEnrollmentCustomizationList struct {
	TotalCount int `json:"totalCount"`
	Results    []ResourceEnrollmentCustomization
}

type ResponseError added in v1.11.0

type ResponseError struct {
	HTTPStatus int             `json:"httpStatus"`
	Errors     []ErrorInstance `json:"errors"`
}

ResponseError represents the structure of an error response from the API

type ResponseFileShareDistributionPointCreatedAndUpdated added in v1.3.4

type ResponseFileShareDistributionPointCreatedAndUpdated struct {
	ID int `json:"id,omitempty" xml:"id,omitempty"`
}

type ResponseGSXConnectionHistory added in v1.7.0

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 added in v1.7.0

type ResponseGSXConnectionHistoryList struct {
	TotalCount *int                           `json:"totalCount,omitempty"`
	Results    []ResponseGSXConnectionHistory `json:"results,omitempty"`
}

type ResponseIBeaconsList added in v0.0.66

type ResponseIBeaconsList struct {
	Size     int                `xml:"size"`
	IBeacons []ResourceIBeacons `xml:"ibeacon"`
}

ResponseIBeaconsList represents the response structure for a list of iBeacons.

type ResponseJCDS2File added in v1.3.0

type ResponseJCDS2File struct {
	URI string `json:"uri"`
}

type ResponseJCDS2List added in v1.0.0

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 added in v1.3.0

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 added in v1.7.2

type ResponseJamfAppCatalogDeploymentCreateAndUpdate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

type ResponseJamfAppCatalogDeploymentTermsAndConditionsStatus added in v1.10.0

type ResponseJamfAppCatalogDeploymentTermsAndConditionsStatus struct {
	Accepted       bool   `json:"accepted"`
	AcceptanceTime string `json:"acceptanceTime"`
}

type ResponseJamfAppCatalogTitleList added in v1.7.2

type ResponseJamfAppCatalogTitleList struct {
	Size    int                                  `json:"totalCount"`
	Results []ResourceJamfAppCatalogAppInstaller `json:"results"`
}

Struct for paginated response for app installers

type ResponseJamfProInformation added in v0.0.53

type ResponseJamfProInformation struct {
	VppTokenEnabled         *bool `json:"vppTokenEnabled,omitempty"`
	DepAccountEnabled       *bool `json:"depAccountEnabled,omitempty"`
	ByodEnabled             *bool `json:"byodEnabled,omitempty"`
	UserMigrationEnabled    *bool `json:"userMigrationEnabled,omitempty"`
	CloudDeploymentsEnabled *bool `json:"cloudDeploymentsEnabled,omitempty"`
	PatchEnabled            *bool `json:"patchEnabled,omitempty"`
	SsoSamlEnabled          *bool `json:"ssoSamlEnabled,omitempty"`
	SmtpEnabled             *bool `json:"smtpEnabled,omitempty"`
}

type ResponseJamfProVersion added in v0.0.10

type ResponseJamfProVersion struct {
	Version *string `json:"Version,omitempty"`
}

type ResponseJamfProtectHistoryList added in v1.9.2

type ResponseJamfProtectHistoryList struct {
	TotalCount int                          `json:"totalCount"`
	Results    []ResourceJamfProtectHistory `json:"results"`
}

Response Structs

type ResponseJamfProtectPlansList added in v1.9.2

type ResponseJamfProtectPlansList struct {
	TotalCount int                       `json:"totalCount"`
	Results    []ResourceJamfProtectPlan `json:"results"`
}

type ResponseLDAPServersList added in v0.0.67

type ResponseLDAPServersList struct {
	Size        int                   `xml:"size"`
	LDAPServers []LDAPServersListItem `xml:"ldap_server"`
}

type ResponseLapsPasswordSet added in v1.12.0

type ResponseLapsPasswordSet struct {
	LapsUserPasswordList []LapsUserPasswordResponse `json:"lapsUserPasswordList"`
}

ResponseLapsPasswordSet represents the response after setting LAPS passwords

type ResponseLicensedSoftwareList added in v0.0.68

type ResponseLicensedSoftwareList struct {
	LicensedSoftware []LicensedSoftwareListItem `xml:"licensed_software"`
}

ResponseLicensedSoftwareList represents the response for a list of licensed software.

type ResponseLocalAdminCurrentPassword added in v1.12.0

type ResponseLocalAdminCurrentPassword struct {
	Password string `json:"password"`
}

Resoponse struct for current password

type ResponseLocalAdminPasswordCapableAccounts added in v1.12.0

type ResponseLocalAdminPasswordCapableAccounts struct {
	TotalCount int                         `json:"totalCount"`
	Results    []LocalAdminPasswordAccount `json:"results"`
}

Response structs for LAPS capable accounts

type ResponseLocalAdminPasswordFullHistory added in v1.12.0

type ResponseLocalAdminPasswordFullHistory struct {
	TotalCount int                           `json:"totalCount"`
	Results    []LocalAdminPasswordFullEvent `json:"results"`
}

Response structs for full LAPS history

type ResponseLocalAdminPasswordHistory added in v1.12.0

type ResponseLocalAdminPasswordHistory struct {
	TotalCount int                             `json:"totalCount"`
	Results    []LocalAdminPasswordHistoryItem `json:"results"`
}

Response structs for password history

type ResponseLocalAdminPasswordPendingRotations added in v1.12.0

type ResponseLocalAdminPasswordPendingRotations struct {
	TotalCount int                                 `json:"totalCount"`
	Results    []LocalAdminPasswordPendingRotation `json:"results"`
}

Response structs for pending rotations

type ResponseMDMCommand added in v1.7.1

type ResponseMDMCommand struct {
	ID   string `json:"id,omitempty"`
	Href string `json:"href"`
}

ResponseMDMCommand represents the response structure for the MDM command

type ResponseMDMProfileRenewal added in v1.7.1

type ResponseMDMProfileRenewal struct {
	UDIDsNotProcessed struct {
		UDIDs []string `json:"udids"`
	} `json:"udidsNotProcessed"`
}

ResponseMDMProfileRenewal represents the response structure for renewing MDM profiles

type ResponseMacApplicationsList added in v0.0.64

type ResponseMacApplicationsList struct {
	MacApplications []MacApplicationsListItem `xml:"mac_application"`
}

type ResponseMacOSConfigurationProfileCreationUpdate added in v1.0.0

type ResponseMacOSConfigurationProfileCreationUpdate struct {
	ID int `xml:"id"`
}

ResponseMacOSConfigurationProfileCreation represents the response structure for a new macOS configuration profile.

type ResponseMacOSConfigurationProfileList added in v0.0.11

type ResponseMacOSConfigurationProfileList struct {
	Results []MacOSConfigurationProfileListItem `xml:"os_x_configuration_profile,omitempty"`
}

ResponseMacOSConfigurationProfileList represents the response structure for a list of macOS configuration profiles.

type ResponseManagedSoftwareUpdateFeatureToggle added in v1.5.0

type ResponseManagedSoftwareUpdateFeatureToggle struct {
	Toggle                       bool `json:"toggle"`
	ForceInstallLocalDateEnabled bool `json:"forceInstallLocalDateEnabled"`
	DssEnabled                   bool `json:"dssEnabled"`
	RecipeEnabled                bool `json:"recipeEnabled"`
}

type ResponseManagedSoftwareUpdateList added in v1.5.0

type ResponseManagedSoftwareUpdateList struct {
	AvailableUpdates ResourceAvailableUpdates `json:"availableUpdates"`
}

type ResponseManagedSoftwareUpdatePlan added in v1.11.2

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 added in v1.5.0

type ResponseManagedSoftwareUpdatePlanCreate struct {
	Plans []ManagedSoftwareUpdatePlanCreateSubsetPlan `json:"plans"`
}

type ResponseManagedSoftwareUpdatePlanList added in v1.5.0

type ResponseManagedSoftwareUpdatePlanList struct {
	TotalCount int                                 `json:"totalCount"`
	Results    []ResponseManagedSoftwareUpdatePlan `json:"results"`
}

type ResponseManagedSoftwareUpdatePlanSubsetDevice added in v1.11.2

type ResponseManagedSoftwareUpdatePlanSubsetDevice struct {
	DeviceId   string `json:"deviceId,omitempty"`
	ObjectType string `json:"objectType,omitempty"`
	Href       string `json:"href,omitempty"`
}

type ResponseManagedSoftwareUpdatePlanSubsetStatus added in v1.11.2

type ResponseManagedSoftwareUpdatePlanSubsetStatus struct {
	State        string   `json:"state,omitempty"`
	ErrorReasons []string `json:"errorReasons"`
}

type ResponseManagedSoftwareUpdatePlansFeatureToggleStatus added in v1.9.0

type ResponseManagedSoftwareUpdatePlansFeatureToggleStatus struct {
	ToggleOn  *FeatureEnablementToggleStatus `json:"toggleOn"`
	ToggleOff *FeatureEnablementToggleStatus `json:"toggleOff"`
}

ResponseManagedSoftwareUpdatePlansFeatureToggleStatus represents the response structure for the feature toggle status.

type ResponseMobileDeviceApplicationsList added in v0.0.69

type ResponseMobileDeviceApplicationsList struct {
	MobileDeviceApplications []MobileDeviceApplicationsListItem `xml:"mobile_device_application"`
}

ResponseMobileDeviceApplicationsList represents the response for a list of mobile device applications.

type ResponseMobileDeviceConfigurationProfileCreateAndUpdate added in v1.5.6

type ResponseMobileDeviceConfigurationProfileCreateAndUpdate struct {
	ID int `xml:"id"`
}

ResponseMacOSConfigurationProfileCreation represents the response structure for a new macOS configuration profile.

type ResponseMobileDeviceConfigurationProfilesList added in v0.0.72

type ResponseMobileDeviceConfigurationProfilesList struct {
	ConfigurationProfiles []MobileDeviceConfigurationProfilesListItem `xml:"configuration_profile"`
}

ResponseMobileDeviceConfigurationProfilesList represents the response for a list of mobile device configuration profiles.

type ResponseMobileDeviceEnrollmentProfilesList added in v0.0.72

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 added in v0.0.72

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 added in v0.0.75

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 added in v1.0.0

type ResponseMobileDeviceList struct {
	MobileDevices []MobileDeviceListItem `xml:"mobile_device"`
}

ResponseMobileDevicesList represents the structure for a list of mobile devices.

type ResponseMobileDevicePrestageCreate added in v1.0.4

type ResponseMobileDevicePrestageCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

type ResponseMobileDevicePrestagesList added in v1.0.4

type ResponseMobileDevicePrestagesList struct {
	TotalCount int                            `json:"totalCount"`
	Results    []ResourceMobileDevicePrestage `json:"results"`
}

type ResponseMobileDeviceProvisioningProfilesList added in v0.0.76

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 added in v1.3.0

type ResponseNetworkSegmentCreatedAndUpdated struct {
	ID int `json:"id,omitempty" xml:"id,omitempty"`
}

type ResponseNetworkSegmentList added in v0.0.78

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 ResponseOIDCPublicKey added in v1.12.0

type ResponseOIDCPublicKey struct {
	Keys []ResourceOIDCKey `json:"keys"`
}

ResponseOIDCPublicKeyrepresents the response structure for the OIDC public key.

type ResponseOIDCRedirectURL added in v1.12.0

type ResponseOIDCRedirectURL struct {
	RedirectURL string `json:"redirectUrl"`
}

ResponseOIDCRedirectURL represents the response structure for the OIDC redirect URL.

type ResponseOnboardingSettings added in v1.9.3

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 added in v1.3.0

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 added in v1.7.0

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 added in v1.3.0

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 ResponsePatchExternalSourcesList added in v1.5.8

type ResponsePatchExternalSourcesList struct {
	PatchExternalSources []ResponsePatchExternalSourcesListItem `xml:"patch_external_source" json:"patch_external_source"`
}

ResponsePatchExternalSourcesList represents the list of patch external sources.

type ResponsePatchExternalSourcesListItem added in v1.5.8

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 added in v1.4.1

type ResponsePatchPoliciesList struct {
	TotalCount int                   `json:"totalCount"`
	Results    []ResourcePatchPolicy `json:"results"`
}

ResponsePatchPoliciesList represents the paginated response for patch policies

type ResponsePatchPolicyCreate added in v1.4.1

type ResponsePatchPolicyCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

ResponsePatchPolicyCreate represents the response when creating a patch policy

type ResponsePatchPolicyDashboardStatus added in v1.9.3

type ResponsePatchPolicyDashboardStatus struct {
	OnDashboard bool `json:"onDashboard"`
}

ResponsePatchPolicyDashboardStatus represents the response for checking if a patch policy is on the dashboard

type ResponsePatchSoftwareTitleConfigurationCreate added in v1.0.4

type ResponsePatchSoftwareTitleConfigurationCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

type ResponsePatchSoftwareTitleConfigurationList added in v1.0.4

type ResponsePatchSoftwareTitleConfigurationList struct {
	Results []ResourcePatchSoftwareTitleConfiguration
}

type ResponsePoliciesList added in v0.0.45

type ResponsePoliciesList struct {
	Size   int                      `xml:"size"`
	Policy []ResponsePolicyListItem `xml:"policy"`
}

Policies List Structs

type ResponsePolicyCreateAndUpdate added in v0.0.92

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 added in v1.5.10

type ResponsePolicyListItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type ResponsePrinterCreateAndUpdate added in v1.1.5

type ResponsePrinterCreateAndUpdate struct {
	ID int `xml:"id"`
}

type ResponsePrintersList added in v0.0.73

type ResponsePrintersList struct {
	Size    int                `xml:"size"`
	Printer []PrintersListItem `xml:"printer"`
}

ResponsePrintersList represents the response for a list of printers.

type ResponseRecoveryLockPassword added in v0.0.84

type ResponseRecoveryLockPassword struct {
	RecoveryLockPassword string `json:"recoveryLockPassword"`
}

ResponseRecoveryLockPassword represents the response structure for a recovery lock password.

type ResponseRemovableMacAddressesList added in v0.0.86

type ResponseRemovableMacAddressesList struct {
	Size         int                           `xml:"size"`
	RemovableMac []ResourceRemovableMacAddress `xml:"removable_mac_address"`
}

Structs for Removable MAC Addresses List

type ResponseRemoveMDMProfile added in v1.12.0

type ResponseRemoveMDMProfile struct {
	DeviceID    string `json:"deviceId"`
	CommandUUID string `json:"commandUuid"`
}

ResponseRemoveMDMProfile represents the response structure for removing an MDM profile.

type ResponseRestrictedSoftwareCreateAndUpdate added in v1.6.5

type ResponseRestrictedSoftwareCreateAndUpdate struct {
	ID int `xml:"id"`
}

type ResponseRestrictedSoftwaresList added in v0.0.86

type ResponseRestrictedSoftwaresList struct {
	Size               int                          `xml:"size"`
	RestrictedSoftware []RestrictedSoftwareListItem `xml:"restricted_software_title"`
}

Structs for Restricted Software List

type ResponseReturnToServiceConfiguration added in v1.9.3

type ResponseReturnToServiceConfiguration struct {
	ID            string `json:"id"`
	DisplayName   string `json:"displayName"`
	WifiProfileID string `json:"wifiProfileId"`
}

Response

type ResponseReturnToServiceCreate added in v1.9.3

type ResponseReturnToServiceCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

type ResponseReturnToServiceList added in v1.7.0

type ResponseReturnToServiceList struct {
	TotalCount int                                    `json:"totalCount"`
	Results    []ResponseReturnToServiceConfiguration `json:"results"`
}

Structs to support JSON data structure

type ResponseSLASAStatus added in v1.9.0

type ResponseSLASAStatus struct {
	SLASAAcceptanceStatus string `json:"slasaAcceptanceStatus"`
}

ResponseSLASAStatus represents the response structure for the SLASA acceptance status.

type ResponseSSOFailover added in v0.0.96

type ResponseSSOFailover struct {
	FailoverURL    string `json:"failoverUrl"`
	GenerationTime int64  `json:"generationTime"`
}

type ResponseScriptCreate added in v0.0.96

type ResponseScriptCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

Response format struct for create function

type ResponseScriptsList added in v0.0.15

type ResponseScriptsList struct {
	Size    int              `json:"totalCount"`
	Results []ResourceScript `json:"results"`
}

Struct for paginated response for scripts

type ResponseSelfServiceBrandingList added in v0.0.96

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 added in v0.0.78

type ResponseSitesList struct {
	Size int                  `xml:"size"`
	Site []SharedResourceSite `xml:"site"`
}

type ResponseSmartComputerGroupCreate added in v1.13.0

type ResponseSmartComputerGroupCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

ResponseSmartComputerGroupCreate represents the response structure for creating a Smart Computer Group

type ResponseSmartComputerGroupListItem added in v1.13.0

type ResponseSmartComputerGroupListItem struct {
	ID         string `json:"id"`
	Name       string `json:"name"`
	SmartGroup bool   `json:"smartGroup"`
}

ResponseSmartComputerGroupListItem represents individual Smart Computer Group items

type ResponseSmartComputerGroupMembership added in v1.13.0

type ResponseSmartComputerGroupMembership struct {
	Members []int `json:"members"`
}

ResponseSmartComputerGroupMembership represents the membership response for a Smart Computer Group

type ResponseSmartComputerGroupsList added in v1.13.0

type ResponseSmartComputerGroupsList []ResponseSmartComputerGroupListItem

ResponseSmartComputerGroupsList represents the response for list of Smart Computer Groups

type ResponseSmartComputerGroupsListV2 added in v1.13.0

type ResponseSmartComputerGroupsListV2 struct {
	TotalCount int                            `json:"totalCount"`
	Results    []ResourceSmartComputerGroupV2 `json:"results"`
}

ResponseSmartComputerGroupsListV2 represents the paginated response for Smart Computer Groups v2

type ResponseSoftwareUpdateServersList added in v0.0.86

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 added in v1.0.4

type ResponseSsoSubsetEnrollmentCustomizationDependencyList struct {
	Dependencies []SsoSubsetSubsetEnrollmentCustomizationDependency
}

type ResponseStatusItems added in v1.12.0

type ResponseStatusItems struct {
	StatusItems []StatusItem `json:"statusItems"`
}

ResponseStatusItems represents the response structure for status items.

type ResponseUpdateOnboardingSettings added in v1.9.3

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 added in v0.0.84

type ResponseUploadAttachment struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

ResponseUploadAttachment represents the response structure for uploading an attachment.

type ResponseUserExtensionAttributesList added in v0.0.83

type ResponseUserExtensionAttributesList struct {
	XMLName                 xml.Name                          `xml:"user_extension_attributes"`
	Size                    int                               `xml:"size"`
	UserExtensionAttributes []UserExtensionAttributesListItem `xml:"user_extension_attribute"`
}

type ResponseUserGroupCreateAndUpdate added in v1.3.18

type ResponseUserGroupCreateAndUpdate struct {
	ID int `xml:"id"`
}

type ResponseUserGroupsList added in v0.0.80

type ResponseUserGroupsList struct {
	Size      int                  `xml:"size"`
	UserGroup []UserGroupsListItem `xml:"user_group"`
}

ResponseUserGroupsList represents the structure for a list of user groups.

type ResponseUsersList added in v0.0.81

type ResponseUsersList struct {
	Size  int             `xml:"size"`
	Users []UsersListItem `xml:"user"`
}

type ResponseVPPAccountsList added in v0.0.86

type ResponseVPPAccountsList struct {
	Size     int                   `xml:"size"`
	Accounts []VPPAccountsListItem `xml:"vpp_account"`
}

Structs for VPP Accounts Response

type ResponseVPPAssignmentsList added in v0.0.88

type ResponseVPPAssignmentsList struct {
	VPPAssignments []VPPAssignmentsListItem `xml:"vpp_assignment"`
}

Struct for the list of VPP assignments

type ResponseVolumePurchasingContentList added in v0.0.86

type ResponseVolumePurchasingContentList struct {
	TotalCount int                             `json:"totalCount"`
	Results    []VolumePurchasingSubsetContent `json:"results"`
}

type ResponseVolumePurchasingList added in v0.0.86

type ResponseVolumePurchasingList struct {
	TotalCount int                                `json:"totalCount"`
	Results    []ResourceVolumePurchasingLocation `json:"results"`
}

ResponseVolumePurchasingList represents the paginated response for volume purchasing locations.

type ResponseVolumePurchasingLocationCreate added in v1.0.4

type ResponseVolumePurchasingLocationCreate struct {
	ID   string `json:"id"`
	Href string `json:"href"`
}

VolumePurchasingLocationCreateResponse represents the response for creating a volume purchasing location.

type ResponseVolumePurchasingSubscriptionsList added in v0.0.52

type ResponseVolumePurchasingSubscriptionsList struct {
	TotalCount *int                                   `json:"totalCount,omitempty"`
	Results    []ResourceVolumePurchasingSubscription `json:"results,omitempty"`
}

type ResponseWebhooksList added in v0.0.86

type ResponseWebhooksList struct {
	Size     int                `xml:"size"`
	Webhooks []WebhooksListItem `xml:"webhook"`
}

Structs for Webhooks Response

type RestrictedSoftwareListItem added in v1.0.0

type RestrictedSoftwareListItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type RestrictedSoftwareSubsetGeneral added in v1.0.0

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 added in v1.0.0

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 added in v1.6.3

type RestrictedSoftwareSubsetScopeEntity struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type RestrictedSoftwareSubsetScopeExclusions added in v1.0.0

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 added in v1.7.1

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 added in v1.0.0

type SharedAdvancedSearchSubsetDisplayField struct {
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type SharedContainerCriteria added in v1.0.0

type SharedContainerCriteria struct {
	Size      int                    `json:"size,omitempty" xml:"size,omitempty"`
	Criterion []SharedSubsetCriteria `json:"criterion,omitempty" xml:"criterion,omitempty"`
}

type SharedDeviceConfiguration added in v1.7.1

type SharedDeviceConfiguration struct {
	QuotaSize     int `json:"quotaSize"`
	ResidentUsers int `json:"residentUsers"`
}

SharedDeviceConfiguration represents the shared device configuration structure in the settings command

type SharedResourcResponseError added in v1.9.0

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 added in v1.0.0

type SharedResourceCategory struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type SharedResourceErrorDetail added in v1.9.0

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 added in v1.7.9

type SharedResourceLdapServer struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type SharedResourceSelfServiceCategories added in v1.0.0

type SharedResourceSelfServiceCategories struct {
	Category []SharedResourceSelfServiceCategory
}

type SharedResourceSelfServiceCategory added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type SharedResourceSite struct {
	ID   int    `json:"id,omitempty" xml:"id,omitempty"`
	Name string `json:"name,omitempty" xml:"name,omitempty"`
}

type SharedResourceSiteProAPI added in v1.1.0

type SharedResourceSiteProAPI struct {
	ID   string `json:"id,omitempty"`
	Name string `json:"name,omitempty"`
}

type SharedSubsetCriteria added in v1.0.0

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 added in v1.13.0

type SharedSubsetCriteriaJamfProAPI struct {
	Name         string `json:"name"`
	Priority     int    `json:"priority,omitempty"`
	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 added in v1.0.0

type SoftwareUpdateServersListItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type SoftwareUpdateSettings added in v1.7.1

type SoftwareUpdateSettings struct {
	RecommendationCadence string `json:"recommendationCadence"`
}

SoftwareUpdateSettings represents the software update settings structure in the settings command

type SsoSettingsSubsetEnrollmentSsoConfig added in v1.0.4

type SsoSettingsSubsetEnrollmentSsoConfig struct {
	Hosts          []string `json:"hosts"`
	ManagementHint string   `json:"managementHint"`
}

type SsoSubsetSubsetEnrollmentCustomizationDependency added in v1.0.4

type SsoSubsetSubsetEnrollmentCustomizationDependency struct {
	Name              string `json:"name"`
	HumanReadableName string `json:"humanReadableName"`
	Hyperlink         string `json:"hyperlink"`
}

type StandardPaginatedResponse added in v0.0.96

type StandardPaginatedResponse struct {
	Size    int           `json:"totalCount"`
	Results []interface{} `json:"results"`
}

type StatusItem added in v1.12.0

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 added in v1.9.3

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 added in v1.0.0

type UserExtensionAttributesListItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type UserGroupSubsetUserItem added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type UserSubsetExtensionAttribute struct {
	ID    int    `xml:"id"`
	Name  string `xml:"name"`
	Type  string `xml:"type"`
	Value string `xml:"value"`
}

type UserSubsetExtensionAttributes added in v1.0.0

type UserSubsetExtensionAttributes struct {
	Attributes []UserSubsetExtensionAttribute `xml:"extension_attribute"`
}

type UserSubsetLDAPServer added in v1.0.0

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 added in v1.0.0

type UserSubsetLinksListItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type UsersListItem added in v1.0.0

type UsersListItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type VPPAccountsListItem added in v1.0.0

type VPPAccountsListItem struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

type VPPAssignmentSubsetGeneral added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

type VPPAssignmentSubsetScopeLimitations struct {
	UserGroups []VPPSubsetVPPUserGroup `xml:"user_groups>user_group"`
}

type VPPAssignmentsListItem added in v1.0.0

type VPPAssignmentsListItem struct {
	ID                int    `xml:"id"`
	VPPAdminAccountID int    `xml:"vpp_admin_account_id"`
	Name              string `xml:"name"`
}

type VPPSubsetVPPApp added in v1.0.0

type VPPSubsetVPPApp struct {
	AdamID int    `xml:"adam_id"`
	Name   string `xml:"name"`
}

type VPPSubsetVPPUser added in v1.0.0

type VPPSubsetVPPUser struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

Struct for VPP user

type VPPSubsetVPPUserGroup added in v1.0.0

type VPPSubsetVPPUserGroup struct {
	ID   int    `xml:"id"`
	Name string `xml:"name"`
}

Struct for VPP user group

type VolumePurchasingLocationSubsetBody added in v1.0.4

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 added in v1.0.0

type VolumePurchasingSubscriptionSubsetExternalRecipients struct {
	Name  string `json:"name,omitempty"`
	Email string `json:"email,omitempty"`
}

type VolumePurchasingSubscriptionSubsetInternalRecipients added in v1.0.0

type VolumePurchasingSubscriptionSubsetInternalRecipients struct {
	AccountId string `json:"accountId,omitempty"`
	Frequency string `json:"frequency,omitempty"`
}

type VolumePurchasingSubsetContent added in v1.0.4

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 added in v1.0.0

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