Documentation
¶
Overview ¶
classicapi_computer_groups.go Jamf Pro Classic Api - Computer Groups api reference: https://developer.jamf.com/jamf-pro/reference/computergroups Classic API requires the structs to support an XML data structure.
http_logging.go
Index ¶
- func LoadClientAuthConfig(filename string) (*http_client.ClientAuthConfig, error)
- type AccountDataSubsetGroup
- type AccountDataSubsetGroups
- type AccountDataSubsetLdapServer
- type AccountDataSubsetMembers
- type AccountDataSubsetPrivileges
- type AccountDataSubsetSite
- type AccountDataSubsetUser
- type AccountDataSubsetUserItem
- type AccountDataSubsetUsers
- type AccountUser
- type AllowedFileExtensionDetail
- type ApiIntegration
- type BeaconDetail
- type Building
- type BuildingAssignment
- type BuildingDetail
- type BuildingInfo
- type BuildingScope
- type Category
- type CategoryInfo
- type Client
- func (c *Client) CreateAccountByID(account *ResponseAccount) (*ResponseAccount, error)
- func (c *Client) CreateAccountGroupByID(accountGroup *ResponseAccountGroup) (*ResponseAccountGroup, error)
- func (c *Client) CreateAllowedFileExtension(extension *AllowedFileExtensionDetail) (*AllowedFileExtensionDetail, error)
- func (c *Client) CreateApiIntegration(integration *ApiIntegration) (*ApiIntegration, error)
- func (c *Client) CreateBuilding(building *Building) (*Building, error)
- func (c *Client) CreateClientCredentialsByApiRoleID(id string) (*ClientCredentials, error)
- func (c *Client) CreateComputerGroup(group *ComputerGroupRequest) (*ComputerGroup, error)
- func (c *Client) CreateDepartment(departmentName string) (*Department, error)
- func (c *Client) CreateJamfApiRole(role *Role) (*Role, error)
- func (c *Client) CreateMacOSConfigurationProfile(profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)
- func (c *Client) CreateScriptByID(script *ResponseScript) (*ResponseScript, error)
- func (c *Client) DeleteAccountByID(id int) error
- func (c *Client) DeleteAccountByName(name string) error
- func (c *Client) DeleteAccountGroupByID(id int) error
- func (c *Client) DeleteAccountGroupByName(name string) error
- func (c *Client) DeleteAllowedFileExtensionByID(id int) error
- func (c *Client) DeleteAllowedFileExtensionByName(extensionName string) error
- func (c *Client) DeleteApiIntegrationByID(id string) error
- func (c *Client) DeleteApiIntegrationByName(name string) error
- func (c *Client) DeleteBuildingByID(id int) error
- func (c *Client) DeleteBuildingByName(name string) error
- func (c *Client) DeleteComputerGroupByID(id int) error
- func (c *Client) DeleteComputerGroupByName(name string) error
- func (c *Client) DeleteDepartmentByID(id int) error
- func (c *Client) DeleteDepartmentByName(name string) error
- func (c *Client) DeleteJamfApiRoleByID(id string) error
- func (c *Client) DeleteJamfApiRoleByName(name string) error
- func (c *Client) DeleteMacOSConfigurationProfileByID(id int) error
- func (c *Client) DeleteMacOSConfigurationProfileByName(name string) error
- func (c *Client) DeleteScriptByID(id int) error
- func (c *Client) DeleteScriptByName(name string) error
- func (c *Client) GetAccountByID(id int) (*ResponseAccount, error)
- func (c *Client) GetAccountByName(name string) (*ResponseAccount, error)
- func (c *Client) GetAccountGroupByID(id int) (*ResponseAccountGroup, error)
- func (c *Client) GetAccountGroupByName(name string) (*ResponseAccount, error)
- func (c *Client) GetAccounts() (*ResponseAccountsList, error)
- func (c *Client) GetAllowedFileExtensionByID(id int) (*AllowedFileExtensionDetail, error)
- func (c *Client) GetAllowedFileExtensionByName(extensionName string) (*AllowedFileExtensionDetail, error)
- func (c *Client) GetAllowedFileExtensions() (*ResponseAllowedFileExtensionsList, error)
- func (c *Client) GetApiIntegrationByID(id string) (*ApiIntegration, error)
- func (c *Client) GetApiIntegrationNameByID(name string) (*ApiIntegration, error)
- func (c *Client) GetApiIntegrations() (*ResponseApiIntegrations, error)
- func (c *Client) GetBuildingByID(id string) (*BuildingDetail, error)
- func (c *Client) GetBuildingByName(name string) (*Building, error)
- func (c *Client) GetBuildingIdByName(name string) (string, error)
- func (c *Client) GetBuildings() (*ResponseBuildings, error)
- func (c *Client) GetComputerGroupByID(id int) (*ComputerGroup, error)
- func (c *Client) GetComputerGroupByName(name string) (*ComputerGroup, error)
- func (c *Client) GetComputerGroups() (*ComputerGroupsResponse, error)
- func (c *Client) GetDepartmentByID(id int) (*Department, error)
- func (c *Client) GetDepartmentByName(name string) (*Department, error)
- func (c *Client) GetDepartmentIdByName(name string) (int, error)
- func (c *Client) GetDepartments() (*ResponseDepartments, error)
- func (c *Client) GetJamfAPIRoles() (*ResponseApiRoles, error)
- func (c *Client) GetJamfApiRolesByID(id string) (*Role, error)
- func (c *Client) GetJamfApiRolesNameById(name string) (*Role, error)
- func (c *Client) GetJamfProVersion() (*ResponseJamfProVersion, error)
- func (c *Client) GetMacOSConfigurationProfileByID(id int) (*ResponseMacOSConfigurationProfile, error)
- func (c *Client) GetMacOSConfigurationProfileByName(name string) (*ResponseMacOSConfigurationProfile, error)
- func (c *Client) GetMacOSConfigurationProfileNameByID(id int) (string, error)
- func (c *Client) GetMacOSConfigurationProfiles() (*ResponseMacOSConfigurationProfileList, error)
- func (c *Client) GetSSOFailoverSettings() (*SSOFailoverResponse, error)
- func (c *Client) GetScripts() (*ResponseScriptsList, error)
- func (c *Client) GetScriptsByID(id int) (*ResponseScript, error)
- func (c *Client) GetScriptsByName(name string) (*ResponseScript, error)
- func (c *Client) SetAuthenticationCredentials(creds map[string]string)
- func (c *Client) SetClientOAuthCredentials(creds http_client.OAuthCredentials)
- func (c *Client) UpdateAccountByID(id int, account *ResponseAccount) (*ResponseAccount, error)
- func (c *Client) UpdateAccountByName(name string, account *ResponseAccount) (*ResponseAccount, error)
- func (c *Client) UpdateAccountGroupByID(id int, group *ResponseAccountGroup) (*ResponseAccountGroup, error)
- func (c *Client) UpdateAccountGroupByName(name string, group *ResponseAccountGroup) (*ResponseAccountGroup, error)
- func (c *Client) UpdateApiIntegrationByID(id string, integrationUpdate *ApiIntegration) (*ApiIntegration, error)
- func (c *Client) UpdateApiIntegrationByName(name string, updatedIntegration *ApiIntegration) (*ApiIntegration, error)
- func (c *Client) UpdateBuildingByID(building *Building) (*Building, error)
- func (c *Client) UpdateBuildingByName(building *Building) (*Building, error)
- func (c *Client) UpdateClientCredentialsByApiIntegrationID(id string) (*ClientCredentials, error)
- func (c *Client) UpdateComputerGroupByID(id int, group *ComputerGroupRequest) (*ComputerGroup, error)
- func (c *Client) UpdateComputerGroupByName(name string, group *ComputerGroupRequest) (*ComputerGroup, error)
- func (c *Client) UpdateDepartmentByID(id int, departmentName string) (*Department, error)
- func (c *Client) UpdateDepartmentByName(oldName string, newName string) (*Department, error)
- func (c *Client) UpdateFailoverUrl() (*SSOFailoverResponse, error)
- func (c *Client) UpdateJamfApiRoleByID(id string, roleUpdate *Role) (*Role, error)
- func (c *Client) UpdateJamfApiRoleByName(name string, updatedRole *Role) (*Role, error)
- func (c *Client) UpdateMacOSConfigurationProfileByID(id int, profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)
- func (c *Client) UpdateMacOSConfigurationProfileByName(name string, profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)
- func (c *Client) UpdateScriptByID(script *ResponseScript) (*ResponseScript, error)
- func (c *Client) UpdateScriptByName(script *ResponseScript) (*ResponseScript, error)
- type ClientCredentials
- type Computer
- type ComputerAssignment
- type ComputerDataSubsetCertificates
- type ComputerDataSubsetConfigurationProfiles
- type ComputerDataSubsetExtensionAttributes
- type ComputerDataSubsetGeneral
- type ComputerDataSubsetGroupAccounts
- type ComputerDataSubsetHardware
- type ComputerDataSubsetIPhones
- type ComputerDataSubsetLocation
- type ComputerDataSubsetName
- type ComputerDataSubsetPeripherals
- type ComputerDataSubsetPurchasing
- type ComputerDataSubsetSecurity
- type ComputerDataSubsetSoftware
- type ComputerGroup
- type ComputerGroupComputerEntry
- type ComputerGroupCriterion
- type ComputerGroupInfo
- type ComputerGroupListResponse
- type ComputerGroupRequest
- type ComputerGroupsResponse
- type ComputerInfo
- type ComputerLink
- type ComputerListResponse
- type ComputerScope
- type ComputersResponse
- type Config
- type Department
- type DepartmentAssignment
- type DepartmentInfo
- type DepartmentScope
- type DeviceGroupAndOr
- type ExclusionConfig
- type ExtensionAttributeItem
- type GeneralCategory
- type GeneralConfig
- type GroupAssignmentDataSubsetGroupDetail
- type Groups
- type IBeaconInfo
- type IBeaconScope
- type IbeaconListItem
- type JSSUserConfig
- type JSSUserGroupInfo
- type JamfUserScope
- type Logger
- type MacOSConfigurationProfileListItem
- type MobileDeviceLink
- type NetworkDetail
- type NetworkLimitation
- type NetworkSegmentInfo
- type NetworkSegmentList
- type NetworkSegmentScope
- type Parameters
- type PeripheralLink
- type ResponseAccount
- type ResponseAccountGroup
- type ResponseAccountsList
- type ResponseAllowedFileExtensionsList
- type ResponseApiIntegrations
- type ResponseApiRoles
- type ResponseBuilding
- type ResponseBuildings
- type ResponseCategories
- type ResponseDepartments
- type ResponseIbeacon
- type ResponseIbeaconList
- type ResponseJamfProVersion
- type ResponseMacOSConfigurationProfile
- type ResponseMacOSConfigurationProfileList
- type ResponseNetworkSegment
- type ResponseScript
- type ResponseScriptsList
- type ResponseUser
- type ResponseUserGroup
- type ResponseUserList
- type ResponseUsers
- type Role
- type SSOFailoverResponse
- type ScopeConfig
- type ScriptItem
- type SelfServiceCategory
- type SelfServiceConfig
- type SelfServiceIcon
- type SelfServiceIconDetail
- type Site
- type SiteInfo
- type User
- type UserAssignment
- type UserGroupAssignment
- type UserGroupCriteria
- type UserGroupCriterion
- type UserGroupScope
- type UserGroupUser
- type UserInfo
- type UserListItem
- type UserScope
- type Users
- type UsersDataSubsetExtensionAttribute
- type UsersDataSubsetItem
- type UsersDataSubsetLDAPServer
- type UsersDataSubsetUserLinks
- type UsersDataSubsetUserSite
- type VPPAssignmentLink
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func LoadClientAuthConfig ¶ added in v0.0.21
func LoadClientAuthConfig(filename string) (*http_client.ClientAuthConfig, error)
LoadClientAuthConfig reads a JSON configuration file and decodes it into a ClientAuthConfig struct.
Types ¶
type AccountDataSubsetGroup ¶
type AccountDataSubsetGroup struct {
ID int `json:"id,omitempty" xml:"id,omitempty"`
Name string `json:"name" xml:"name"`
Site AccountDataSubsetSite `json:"site,omitempty" xml:"site,omitempty"`
Privileges AccountDataSubsetPrivileges `json:"privileges,omitempty" xml:"privileges,omitempty"`
}
type AccountDataSubsetGroups ¶ added in v0.0.14
type AccountDataSubsetGroups struct {
Group []AccountDataSubsetGroup `xml:"group,omitempty"`
}
type AccountDataSubsetMembers ¶ added in v0.0.14
type AccountDataSubsetPrivileges ¶
type AccountDataSubsetPrivileges struct {
JSSObjects []string `json:"jss_objects,omitempty" xml:"jss_objects>privilege"`
JSSSettings []string `json:"jss_settings,omitempty" xml:"jss_settings>privilege"`
JSSActions []string `json:"jss_actions,omitempty" xml:"jss_actions>privilege"`
Recon []string `json:"recon,omitempty" xml:"recon>privilege"`
CasperAdmin []string `json:"casper_admin,omitempty" xml:"casper_admin>privilege"`
CasperRemote []string `json:"casper_remote,omitempty" xml:"casper_remote>privilege"`
CasperImaging []string `json:"casper_imaging,omitempty" xml:"casper_imaging>privilege"`
}
type AccountDataSubsetSite ¶
type AccountDataSubsetUser ¶
type AccountDataSubsetUserItem ¶ added in v0.0.14
type AccountDataSubsetUsers ¶ added in v0.0.14
type AccountDataSubsetUsers struct {
User []AccountDataSubsetUserItem `xml:"user,omitempty"`
}
type AccountUser ¶
type AllowedFileExtensionDetail ¶ added in v0.0.9
type ApiIntegration ¶ added in v0.0.13
type ApiIntegration struct {
ID int `json:"id,omitempty"`
AuthorizationScopes []string `json:"authorizationScopes,omitempty"`
DisplayName string `json:"displayName,omitempty"`
Enabled bool `json:"enabled,omitempty"`
AccessTokenLifetimeSeconds int `json:"accessTokenLifetimeSeconds,omitempty"`
AppType string `json:"appType,omitempty"`
ClientID string `json:"clientId,omitempty"`
}
Integration represents the details of an individual API integration
type BeaconDetail ¶ added in v0.0.11
type BuildingAssignment ¶ added in v0.0.11
type BuildingAssignment struct {
Building BuildingInfo `json:"building,omitempty" xml:"building,omitempty"`
}
type BuildingDetail ¶ added in v0.0.8
type BuildingDetail struct {
ID int `json:"id,omitempty" xml:"id"`
Name string `json:"name,omitempty" xml:"name"`
StreetAddress1 string `json:"streetAddress1,omitempty" xml:"streetAddress1,omitempty"`
StreetAddress2 string `json:"streetAddress2,omitempty" xml:"streetAddress2,omitempty"`
City string `json:"city,omitempty" xml:"city,omitempty"`
StateProvince string `json:"stateProvince,omitempty" xml:"stateProvince,omitempty"`
ZipPostalCode string `json:"zipPostalCode,omitempty" xml:"zipPostalCode,omitempty"`
Country string `json:"country,omitempty" xml:"country,omitempty"`
Href string `json:"href,omitempty" xml:"href,omitempty"`
}
type BuildingInfo ¶ added in v0.0.11
type BuildingScope ¶ added in v0.0.11
type CategoryInfo ¶ added in v0.0.11
type Client ¶
type Client struct {
HTTP *http_client.Client
}
func (*Client) CreateAccountByID ¶
func (c *Client) CreateAccountByID(account *ResponseAccount) (*ResponseAccount, error)
CreateAccountByID creates an Account using its ID
func (*Client) CreateAccountGroupByID ¶ added in v0.0.14
func (c *Client) CreateAccountGroupByID(accountGroup *ResponseAccountGroup) (*ResponseAccountGroup, error)
CreateAccountGroupByID creates an Account Group using its ID
func (*Client) CreateAllowedFileExtension ¶ added in v0.0.9
func (c *Client) CreateAllowedFileExtension(extension *AllowedFileExtensionDetail) (*AllowedFileExtensionDetail, error)
CreateAllowedFileExtension creates a new allowed file extension
func (*Client) CreateApiIntegration ¶ added in v0.0.13
func (c *Client) CreateApiIntegration(integration *ApiIntegration) (*ApiIntegration, error)
CreateApiIntegration creates a new API integration
func (*Client) CreateBuilding ¶ added in v0.0.9
CreateBuilding creates a new building
func (*Client) CreateClientCredentialsByApiRoleID ¶ added in v0.0.13
func (c *Client) CreateClientCredentialsByApiRoleID(id string) (*ClientCredentials, error)
CreateClientCredentialsByApiRoleID creates new client credentials for an API integration by its ID
func (*Client) CreateComputerGroup ¶ added in v0.0.16
func (c *Client) CreateComputerGroup(group *ComputerGroupRequest) (*ComputerGroup, error)
CreateComputerGroup creates a new computer group.
func (*Client) CreateDepartment ¶ added in v0.0.10
func (c *Client) CreateDepartment(departmentName string) (*Department, error)
CreateDepartment creates a new department
func (*Client) CreateJamfApiRole ¶ added in v0.0.12
CreateJamfApiRole creates a new Jamf API role
func (*Client) CreateMacOSConfigurationProfile ¶ added in v0.0.11
func (c *Client) CreateMacOSConfigurationProfile(profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)
func (*Client) CreateScriptByID ¶ added in v0.0.15
func (c *Client) CreateScriptByID(script *ResponseScript) (*ResponseScript, error)
CreateScriptByID creates a new script by its ID.
func (*Client) DeleteAccountByID ¶
DeleteAccountByID deletes an Account using its ID
func (*Client) DeleteAccountByName ¶ added in v0.0.14
DeleteAccountByName deletes an Account using its name.
func (*Client) DeleteAccountGroupByID ¶ added in v0.0.14
DeleteAccountGroupByID deletes an Account Group using its ID.
func (*Client) DeleteAccountGroupByName ¶ added in v0.0.14
DeleteAccountGroupByName deletes an Account Group using its name.
func (*Client) DeleteAllowedFileExtensionByID ¶ added in v0.0.9
DeleteAllowedFileExtensionByID deletes an existing allowed file extension by ID
func (*Client) DeleteAllowedFileExtensionByName ¶ added in v0.0.9
DeleteAllowedFileExtensionByNameByID deletes an existing allowed file extension by resolving its name to an ID
func (*Client) DeleteApiIntegrationByID ¶ added in v0.0.13
DeleteApiIntegrationByID deletes an API integration by its ID
func (*Client) DeleteApiIntegrationByName ¶ added in v0.0.13
DeleteApiIntegrationByName deletes an API integration by its display name
func (*Client) DeleteBuildingByID ¶ added in v0.0.12
DeleteBuildingByID deletes an existing building by its ID
func (*Client) DeleteBuildingByName ¶ added in v0.0.12
DeleteBuildingByName deletes an existing building by its name
func (*Client) DeleteComputerGroupByID ¶ added in v0.0.16
DeleteComputerGroupByID deletes a computer group by its ID.
func (*Client) DeleteComputerGroupByName ¶ added in v0.0.16
DeleteComputerGroupByName deletes a computer group by its name.
func (*Client) DeleteDepartmentByID ¶ added in v0.0.10
DeleteDepartmentByID deletes an existing department by its ID
func (*Client) DeleteDepartmentByName ¶ added in v0.0.10
DeleteDepartmentByName deletes an existing department by its name
func (*Client) DeleteJamfApiRoleByID ¶ added in v0.0.12
DeleteJamfApiRoleByID deletes a Jamf API role by its ID
func (*Client) DeleteJamfApiRoleByName ¶ added in v0.0.12
DeleteJamfApiRoleByName deletes a Jamf API role by its display name
func (*Client) DeleteMacOSConfigurationProfileByID ¶ added in v0.0.11
func (*Client) DeleteMacOSConfigurationProfileByName ¶ added in v0.0.11
func (*Client) DeleteScriptByID ¶ added in v0.0.15
DeleteScriptByID deletes a script by its ID.
func (*Client) DeleteScriptByName ¶ added in v0.0.15
DeleteScriptByName deletes a script by its name.
func (*Client) GetAccountByID ¶
func (c *Client) GetAccountByID(id int) (*ResponseAccount, error)
GetAccountByID retrieves the Account by its ID
func (*Client) GetAccountByName ¶
func (c *Client) GetAccountByName(name string) (*ResponseAccount, error)
GetAccountByName retrieves the Account by its name
func (*Client) GetAccountGroupByID ¶ added in v0.0.14
func (c *Client) GetAccountGroupByID(id int) (*ResponseAccountGroup, error)
GetAccountGroupByID gets an account group using its ID and returns a response.
func (*Client) GetAccountGroupByName ¶ added in v0.0.14
func (c *Client) GetAccountGroupByName(name string) (*ResponseAccount, error)
GetAccountByName retrieves the Account by its name
func (*Client) GetAccounts ¶ added in v0.0.14
func (c *Client) GetAccounts() (*ResponseAccountsList, error)
GetAccounts retrieves a list of all accounts (both users and groups).
func (*Client) GetAllowedFileExtensionByID ¶ added in v0.0.9
func (c *Client) GetAllowedFileExtensionByID(id int) (*AllowedFileExtensionDetail, error)
GetAllowedFileExtensionByID retrieves the allowed file extension by its ID
func (*Client) GetAllowedFileExtensionByName ¶ added in v0.0.9
func (c *Client) GetAllowedFileExtensionByName(extensionName string) (*AllowedFileExtensionDetail, error)
GetAllowedFileExtensionByName retrieves the allowed file extension by its name
func (*Client) GetAllowedFileExtensions ¶ added in v0.0.9
func (c *Client) GetAllowedFileExtensions() (*ResponseAllowedFileExtensionsList, error)
GetAllowedFileExtensions retrieves all allowed file extensions
func (*Client) GetApiIntegrationByID ¶ added in v0.0.13
func (c *Client) GetApiIntegrationByID(id string) (*ApiIntegration, error)
GetApiIntegrationByID fetches an API integration by its ID
func (*Client) GetApiIntegrationNameByID ¶ added in v0.0.13
func (c *Client) GetApiIntegrationNameByID(name string) (*ApiIntegration, error)
GetApiIntegrationNameByID fetches an API integration by its display name and then retrieves its details using its ID
func (*Client) GetApiIntegrations ¶ added in v0.0.13
func (c *Client) GetApiIntegrations() (*ResponseApiIntegrations, error)
GetApiIntegrations fetches all API integrations
func (*Client) GetBuildingByID ¶ added in v0.0.8
func (c *Client) GetBuildingByID(id string) (*BuildingDetail, error)
GetBuildingByID retrieves the building by its ID
func (*Client) GetBuildingByName ¶ added in v0.0.12
GetBuildingByName retrieves the building by its name
func (*Client) GetBuildingIdByName ¶ added in v0.0.12
GetBuildingIdByName retrieves the building ID by its name
func (*Client) GetBuildings ¶ added in v0.0.9
func (c *Client) GetBuildings() (*ResponseBuildings, error)
GetBuildings retrieves all buildings
func (*Client) GetComputerGroupByID ¶ added in v0.0.16
func (c *Client) GetComputerGroupByID(id int) (*ComputerGroup, error)
GetComputerGroupByID retrieves a computer group by its ID.
func (*Client) GetComputerGroupByName ¶ added in v0.0.16
func (c *Client) GetComputerGroupByName(name string) (*ComputerGroup, error)
GetComputerGroupByName retrieves a computer group by its name.
func (*Client) GetComputerGroups ¶ added in v0.0.16
func (c *Client) GetComputerGroups() (*ComputerGroupsResponse, error)
GetComputerGroups gets a list of all computer groups
func (*Client) GetDepartmentByID ¶ added in v0.0.10
func (c *Client) GetDepartmentByID(id int) (*Department, error)
GetDepartmentByID retrieves the department by its ID
func (*Client) GetDepartmentByName ¶ added in v0.0.10
func (c *Client) GetDepartmentByName(name string) (*Department, error)
GetDepartmentByName retrieves the department by its name
func (*Client) GetDepartmentIdByName ¶ added in v0.0.10
GetDepartmentIdByName retrieves the department ID by its name
func (*Client) GetDepartments ¶ added in v0.0.10
func (c *Client) GetDepartments() (*ResponseDepartments, error)
GetDepartments retrieves all departments
func (*Client) GetJamfAPIRoles ¶ added in v0.0.12
func (c *Client) GetJamfAPIRoles() (*ResponseApiRoles, error)
GetJamfAPIRoles fetches all API roles
func (*Client) GetJamfApiRolesByID ¶ added in v0.0.12
GetMacOSConfigurationProfileByID fetches a macOS configuration profile by its ID
func (*Client) GetJamfApiRolesNameById ¶ added in v0.0.13
GetJamfApiRolesNameById fetches a Jamf API role by its display name and then retrieves its details using its ID
func (*Client) GetJamfProVersion ¶ added in v0.0.10
func (c *Client) GetJamfProVersion() (*ResponseJamfProVersion, error)
func (*Client) GetMacOSConfigurationProfileByID ¶ added in v0.0.11
func (c *Client) GetMacOSConfigurationProfileByID(id int) (*ResponseMacOSConfigurationProfile, error)
func (*Client) GetMacOSConfigurationProfileByName ¶ added in v0.0.11
func (c *Client) GetMacOSConfigurationProfileByName(name string) (*ResponseMacOSConfigurationProfile, error)
func (*Client) GetMacOSConfigurationProfileNameByID ¶ added in v0.0.11
func (*Client) GetMacOSConfigurationProfiles ¶ added in v0.0.11
func (c *Client) GetMacOSConfigurationProfiles() (*ResponseMacOSConfigurationProfileList, error)
func (*Client) GetSSOFailoverSettings ¶
func (c *Client) GetSSOFailoverSettings() (*SSOFailoverResponse, error)
GetSSOFailoverSettings fetches SSO failover settings from Jamf Pro
func (*Client) GetScripts ¶ added in v0.0.15
func (c *Client) GetScripts() (*ResponseScriptsList, error)
GetScripts retrieves a list of all scripts.
func (*Client) GetScriptsByID ¶ added in v0.0.15
func (c *Client) GetScriptsByID(id int) (*ResponseScript, error)
GetScriptsByID retrieves the details of a script by its ID.
func (*Client) GetScriptsByName ¶ added in v0.0.15
func (c *Client) GetScriptsByName(name string) (*ResponseScript, error)
GetScriptsByName retrieves the details of a script by its name.
func (*Client) SetAuthenticationCredentials ¶ added in v0.0.21
func (*Client) SetClientOAuthCredentials ¶ added in v0.0.19
func (c *Client) SetClientOAuthCredentials(creds http_client.OAuthCredentials)
func (*Client) UpdateAccountByID ¶
func (c *Client) UpdateAccountByID(id int, account *ResponseAccount) (*ResponseAccount, error)
UpdateAccountByID updates an Account using its ID
func (*Client) UpdateAccountByName ¶
func (c *Client) UpdateAccountByName(name string, account *ResponseAccount) (*ResponseAccount, error)
UpdateAccountByName updates an Account using its name.
func (*Client) UpdateAccountGroupByID ¶ added in v0.0.14
func (c *Client) UpdateAccountGroupByID(id int, group *ResponseAccountGroup) (*ResponseAccountGroup, error)
UpdateAccountGroupByID updates an Account Group using its ID
func (*Client) UpdateAccountGroupByName ¶ added in v0.0.14
func (c *Client) UpdateAccountGroupByName(name string, group *ResponseAccountGroup) (*ResponseAccountGroup, error)
UpdateAccountGroupByName updates an Account Group using its name.
func (*Client) UpdateApiIntegrationByID ¶ added in v0.0.13
func (c *Client) UpdateApiIntegrationByID(id string, integrationUpdate *ApiIntegration) (*ApiIntegration, error)
UpdateApiIntegrationByID updates an API integration by its ID
func (*Client) UpdateApiIntegrationByName ¶ added in v0.0.13
func (c *Client) UpdateApiIntegrationByName(name string, updatedIntegration *ApiIntegration) (*ApiIntegration, error)
UpdateApiIntegrationByName updates an API integration based on its display name
func (*Client) UpdateBuildingByID ¶ added in v0.0.12
UpdateBuildingByID updates an existing building
func (*Client) UpdateBuildingByName ¶ added in v0.0.12
UpdateBuildingByName updates an existing building by its name
func (*Client) UpdateClientCredentialsByApiIntegrationID ¶ added in v0.0.15
func (c *Client) UpdateClientCredentialsByApiIntegrationID(id string) (*ClientCredentials, error)
UpdateClientCredentialsByApiIntegrationID updates client credentials for an API integration by its ID
func (*Client) UpdateComputerGroupByID ¶ added in v0.0.16
func (c *Client) UpdateComputerGroupByID(id int, group *ComputerGroupRequest) (*ComputerGroup, 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 *ComputerGroupRequest) (*ComputerGroup, error)
UpdateComputerGroupByName updates a computer group by its name.
func (*Client) UpdateDepartmentByID ¶ added in v0.0.10
func (c *Client) UpdateDepartmentByID(id int, departmentName string) (*Department, error)
UpdateDepartmentByID updates an existing department
func (*Client) UpdateDepartmentByName ¶ added in v0.0.10
func (c *Client) UpdateDepartmentByName(oldName string, newName string) (*Department, error)
UpdateDepartmentByName updates an existing department by its name
func (*Client) UpdateFailoverUrl ¶
func (c *Client) UpdateFailoverUrl() (*SSOFailoverResponse, error)
UpdateFailoverUrl regenerates the failover URL by changing the failover key to a new one and returns the new failover settings.
func (*Client) UpdateJamfApiRoleByID ¶ added in v0.0.12
UpdateJamfApiRoleByID updates a Jamf API role by its ID
func (*Client) UpdateJamfApiRoleByName ¶ added in v0.0.12
UpdateJamfApiRoleByName updates a Jamf API role based on its display name
func (*Client) UpdateMacOSConfigurationProfileByID ¶ added in v0.0.11
func (c *Client) UpdateMacOSConfigurationProfileByID(id int, profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)
func (*Client) UpdateMacOSConfigurationProfileByName ¶ added in v0.0.11
func (c *Client) UpdateMacOSConfigurationProfileByName(name string, profile *ResponseMacOSConfigurationProfile) (*ResponseMacOSConfigurationProfile, error)
func (*Client) UpdateScriptByID ¶ added in v0.0.15
func (c *Client) UpdateScriptByID(script *ResponseScript) (*ResponseScript, error)
UpdateScriptByID updates an existing script by its ID.
func (*Client) UpdateScriptByName ¶ added in v0.0.15
func (c *Client) UpdateScriptByName(script *ResponseScript) (*ResponseScript, error)
UpdateScriptByName updates an existing script by its name.
type ClientCredentials ¶ added in v0.0.13
type ClientCredentials struct {
ClientID string `json:"clientId"`
ClientSecret string `json:"clientSecret"`
}
Integration represents the details of Api client credentials
type Computer ¶ added in v0.0.11
type Computer struct {
General ComputerDataSubsetGeneral `json:"general,omitempty" xml:"general,omitempty"`
Location ComputerDataSubsetLocation `json:"location,omitempty" xml:"location,omitempty"`
Purchasing ComputerDataSubsetPurchasing `json:"purchasing,omitempty" xml:"purchasing,omitempty"`
Peripherals ComputerDataSubsetPeripherals `json:"peripherals,omitempty" xml:"peripherals,omitempty"`
Hardware ComputerDataSubsetHardware `json:"hardware,omitempty" xml:"hardware,omitempty"`
Certificates ComputerDataSubsetCertificates `json:"certificates,omitempty" xml:"certificates,omitempty"`
Security ComputerDataSubsetSecurity `json:"security,omitempty" xml:"security,omitempty"`
Software ComputerDataSubsetSoftware `json:"software,omitempty" xml:"software,omitempty"`
ExtensionAttributes ComputerDataSubsetExtensionAttributes `json:"extension_attributes,omitempty" xml:"extension_attributes,omitempty"`
GroupAccounts ComputerDataSubsetGroupAccounts `json:"groups_accounts,omitempty" xml:"groups_accounts,omitempty"`
IPhones ComputerDataSubsetIPhones `json:"iphones,omitempty" xml:"iphones,omitempty"`
ConfigurationProfiles ComputerDataSubsetConfigurationProfiles `json:"configuration_profiles,omitempty" xml:"configuration_profiles,omitempty"`
}
type ComputerAssignment ¶ added in v0.0.11
type ComputerAssignment struct {
Computer ComputerInfo `json:"computer,omitempty" xml:"computer,omitempty"`
}
type ComputerDataSubsetCertificates ¶ added in v0.0.11
type ComputerDataSubsetCertificates struct {
Certificates []struct {
CommonName string `xml:"common_name,omitempty"`
Identity bool `xml:"identity,omitempty"`
ExpiresUtc string `xml:"expires_utc,omitempty"`
ExpiresEpoch int64 `xml:"expires_epoch,omitempty"`
Name string `xml:"name,omitempty"`
} `xml:"certificate,omitempty"`
}
type ComputerDataSubsetConfigurationProfiles ¶ added in v0.0.11
type ComputerDataSubsetConfigurationProfiles struct {
Size string `xml:"size,omitempty"`
ConfigurationProfile []struct {
ID int `xml:"id,omitempty"`
Name string `xml:"name,omitempty"`
UUID string `xml:"uuid,omitempty"`
IsRemovable bool `xml:"is_removable,omitempty"`
} `xml:"configuration_profile,omitempty"`
}
type ComputerDataSubsetExtensionAttributes ¶ added in v0.0.11
type ComputerDataSubsetExtensionAttributes struct {
ExtensionAttributes []struct {
ID int `xml:"id,omitempty"`
Name string `xml:"name,omitempty"`
Type string `xml:"type,omitempty"`
MultiValue bool `xml:"multi_value,omitempty"`
Value string `xml:"value,omitempty"`
} `xml:"extension_attribute,omitempty"`
}
type ComputerDataSubsetGeneral ¶ added in v0.0.11
type ComputerDataSubsetGeneral struct {
ID int `xml:"id,omitempty"`
Name string `xml:"name,omitempty"`
NetworkAdapterType string `xml:"network_adapter_type,omitempty"`
MacAddress string `xml:"mac_address,omitempty"`
AltNetworkAdapterType string `xml:"alt_network_adapter_type,omitempty"`
AltMacAddress string `xml:"alt_mac_address,omitempty"`
IPAddress string `xml:"ip_address,omitempty"`
LastReportedIP string `xml:"last_reported_ip,omitempty"`
SerialNumber string `xml:"serial_number,omitempty"`
UDID string `xml:"udid,omitempty"`
JamfVersion string `xml:"jamf_version,omitempty"`
Platform string `xml:"platform,omitempty"`
Barcode1 string `xml:"barcode_1,omitempty"`
Barcode2 string `xml:"barcode_2,omitempty"`
AssetTag string `xml:"asset_tag,omitempty"`
RemoteManagement struct {
Managed bool `xml:"managed,omitempty"`
ManagementUsername string `xml:"management_username,omitempty"`
ManagementPasswordSha256 string `xml:"management_password_sha256,omitempty"`
} `xml:"remote_management,omitempty"`
Supervised string `xml:"supervised,omitempty"`
MdmCapable string `xml:"mdm_capable,omitempty"`
MdmCapableUsers []struct {
MdmCapableUser string `xml:"mdm_capable_user,omitempty"`
} `xml:"mdm_capable_users,omitempty"`
ManagementStatus struct {
EnrolledViaDep bool `xml:"enrolled_via_dep,omitempty"`
UserApprovedMdm bool `xml:"user_approved_mdm,omitempty"`
} `xml:"management_status,omitempty"`
ReportDate string `xml:"report_date,omitempty"`
ReportDateEpoch string `xml:"report_date_epoch,omitempty"`
ReportDateUtc string `xml:"report_date_utc,omitempty"`
LastContactTime string `xml:"last_contact_time,omitempty"`
LastContactTimeEpoch string `xml:"last_contact_time_epoch,omitempty"`
LastContactTimeUtc string `xml:"last_contact_time_utc,omitempty"`
InitialEntryDate string `xml:"initial_entry_date,omitempty"`
InitialEntryDateEpoch string `xml:"initial_entry_date_epoch,omitempty"`
InitialEntryDateUtc string `xml:"initial_entry_date_utc,omitempty"`
LastCloudBackupDateEpoch string `xml:"last_cloud_backup_date_epoch,omitempty"`
LastCloudBackupDateUtc string `xml:"last_cloud_backup_date_utc,omitempty"`
LastEnrolledDateEpoch string `xml:"last_enrolled_date_epoch,omitempty"`
LastEnrolledDateUtc string `xml:"last_enrolled_date_utc,omitempty"`
MdmProfileExpirationEpoch string `xml:"mdm_profile_expiration_epoch,omitempty"`
MdmProfileExpirationUtc string `xml:"mdm_profile_expiration_utc,omitempty"`
DistributionPoint string `xml:"distribution_point,omitempty"`
Sus string `xml:"sus,omitempty"`
Site struct {
ID int `xml:"id,omitempty"`
Name string `xml:"name,omitempty"`
} `xml:"site,omitempty"`
ItunesStoreAccountIsActive string `xml:"itunes_store_account_is_active"`
}
type ComputerDataSubsetGroupAccounts ¶ added in v0.0.11
type ComputerDataSubsetGroupAccounts struct {
ComputerGroupMemberships struct {
Groups []string `xml:"group,omitempty"`
} `xml:"computer_group_memberships,omitempty"`
LocalAccounts struct {
Users []struct {
Name string `xml:"name,omitempty"`
Realname string `xml:"realname,omitempty"`
UID int `xml:"uid,omitempty"`
Home string `xml:"home,omitempty"`
HomeSize string `xml:"home_size,omitempty"`
HomeSizeMb int `xml:"home_size_mb,omitempty"`
Administrator bool `xml:"administrator,omitempty"`
FilevaultEnabled bool `xml:"filevault_enabled,omitempty"`
} `xml:"user,omitempty"`
} `xml:"local_accounts,omitempty"`
UserInventories struct {
DisableAutomaticLogin bool `xml:"disable_automatic_login,omitempty"`
Users []struct {
Username string `xml:"username,omitempty"`
PasswordHistoryDepth string `xml:"password_history_depth,omitempty"`
PasswordMinLength string `xml:"password_min_length,omitempty"`
PasswordMaxAge string `xml:"password_max_age,omitempty"`
PasswordMinComplexCharacters string `xml:"password_min_complex_characters,omitempty"`
PasswordRequireAlphanumeric string `xml:"password_require_alphanumeric,omitempty"`
} `xml:"user,omitempty"`
} `xml:"user_inventories,omitempty"`
}
type ComputerDataSubsetHardware ¶ added in v0.0.11
type ComputerDataSubsetHardware struct {
Make string `xml:"make,omitempty"`
Model string `xml:"model,omitempty"`
ModelIdentifier string `xml:"model_identifier,omitempty"`
OsName string `xml:"os_name,omitempty"`
OsVersion string `xml:"os_version,omitempty"`
OsBuild string `xml:"os_build,omitempty"`
SoftwareUpdateDeviceID string `xml:"software_update_device_id,omitempty"`
ActiveDirectoryStatus string `xml:"active_directory_status,omitempty"`
ServicePack string `xml:"service_pack,omitempty"`
ProcessorType string `xml:"processor_type,omitempty"`
IsAppleSilicon bool `xml:"is_apple_silicon,omitempty"`
ProcessorArchitecture string `xml:"processor_architecture,omitempty"`
ProcessorSpeed int `xml:"processor_speed,omitempty"`
ProcessorSpeedMhz int `xml:"processor_speed_mhz,omitempty"`
NumberProcessors int `xml:"number_processors,omitempty"`
NumberCores int `xml:"number_cores,omitempty"`
TotalRAM int `xml:"total_ram,omitempty"`
TotalRAMMb int `xml:"total_ram_mb,omitempty"`
BootRom string `xml:"boot_rom,omitempty"`
BusSpeed int `xml:"bus_speed,omitempty"`
BusSpeedMhz int `xml:"bus_speed_mhz,omitempty"`
BatteryCapacity int `xml:"battery_capacity,omitempty"`
CacheSize int `xml:"cache_size,omitempty"`
CacheSizeKb int `xml:"cache_size_kb,omitempty"`
AvailableRAMSlots int `xml:"available_ram_slots,omitempty"`
OpticalDrive string `xml:"optical_drive,omitempty"`
NicSpeed string `xml:"nic_speed,omitempty"`
SmcVersion string `xml:"smc_version,omitempty"`
BleCapable bool `xml:"ble_capable,omitempty"`
SupportsIosAppInstalls bool `xml:"supports_ios_app_installs,omitempty"`
SipStatus string `xml:"sip_status,omitempty"`
GatekeeperStatus string `xml:"gatekeeper_status,omitempty"`
XprotectVersion string `xml:"xprotect_version,omitempty"`
InstitutionalRecoveryKey string `xml:"institutional_recovery_key,omitempty"`
DiskEncryptionConfiguration string `xml:"disk_encryption_configuration,omitempty"`
Filevault2Users []struct {
User string `xml:"user,omitempty"`
} `xml:"filevault2_users,omitempty"`
Storage struct {
Devices []struct {
Disk string `xml:"disk,omitempty"`
Model string `xml:"model,omitempty"`
Revision string `xml:"revision,omitempty"`
SerialNumber string `xml:"serial_number,omitempty"`
Size int `xml:"size,omitempty"`
DriveCapacityMb int `xml:"drive_capacity_mb,omitempty"`
ConnectionType string `xml:"connection_type,omitempty"`
SmartStatus string `xml:"smart_status,omitempty"`
Partitions struct {
Partitions []struct {
Name string `xml:"name,omitempty"`
Size int `xml:"size,omitempty"`
Type string `xml:"type,omitempty"`
PartitionCapacityMb int `xml:"partition_capacity_mb,omitempty"`
PercentageFull int `xml:"percentage_full,omitempty"`
AvailableMb int `xml:"available_mb,omitempty"`
FilevaultStatus string `xml:"filevault_status,omitempty"`
FilevaultPercent int `xml:"filevault_percent,omitempty"`
Filevault2Status string `xml:"filevault2_status,omitempty"`
Filevault2Percent int `xml:"filevault2_percent,omitempty"`
BootDriveAvailableMb int `xml:"boot_drive_available_mb,omitempty"`
LvgUUID string `xml:"lvgUUID,omitempty"`
LvUUID string `xml:"lvUUID,omitempty"`
PvUUID string `xml:"pvUUID,omitempty"`
} `xml:"partition,omitempty"`
} `xml:"partitions,omitempty"`
} `xml:"device,omitempty"`
} `xml:"storage,omitempty"`
MappedPrinters string `xml:"mapped_printers,omitempty"`
}
type ComputerDataSubsetIPhones ¶ added in v0.0.11
type ComputerDataSubsetIPhones struct {
}
type ComputerDataSubsetLocation ¶ added in v0.0.11
type ComputerDataSubsetLocation struct {
Username string `xml:"username,omitempty"`
RealName string `xml:"real_name,omitempty"`
EmailAddress string `xml:"email_address,omitempty"`
Position string `xml:"position,omitempty"`
Phone string `xml:"phone,omitempty"`
PhoneNumber string `xml:"phone_number,omitempty"`
Department string `xml:"department,omitempty"`
Building string `xml:"building,omitempty"`
Room string `xml:"room,omitempty"`
}
type ComputerDataSubsetName ¶ added in v0.0.11
type ComputerDataSubsetName string
const ( ComputerDataSubsetNameGeneral ComputerDataSubsetName = "General" ComputerDataSubsetNameLocation ComputerDataSubsetName = "Location" ComputerDataSubsetNamePurchasing ComputerDataSubsetName = "Purchasing" ComputerDataSubsetNamePeripherals ComputerDataSubsetName = "Peripherals" ComputerDataSubsetNameHardware ComputerDataSubsetName = "Hardware" ComputerDataSubsetNameCertificates ComputerDataSubsetName = "Certificates" ComputerDataSubsetNameSecurity ComputerDataSubsetName = "Security" ComputerDataSubsetNameSoftware ComputerDataSubsetName = "Software" ComputerDataSubsetNameExtensionAttributes ComputerDataSubsetName = "ExtensionAttributes" ComputerDataSubsetNameGroupAccounts ComputerDataSubsetName = "GroupsAccounts" ComputerDataSubsetNameIPhones ComputerDataSubsetName = "iphones" ComputerDataSubsetNameConfigurationProfiles ComputerDataSubsetName = "ConfigurationProfiles" )
type ComputerDataSubsetPeripherals ¶ added in v0.0.11
type ComputerDataSubsetPeripherals struct {
}
Don't have example data for this to construct resulting struct. Please cut a PR to populate if needed
type ComputerDataSubsetPurchasing ¶ added in v0.0.11
type ComputerDataSubsetPurchasing struct {
IsPurchased bool `xml:"is_purchased,omitempty"`
IsLeased bool `xml:"is_leased,omitempty"`
PoNumber string `xml:"po_number,omitempty"`
Vendor string `xml:"vendor,omitempty"`
ApplecareID string `xml:"applecare_id,omitempty"`
PurchasePrice string `xml:"purchase_price,omitempty"`
PurchasingAccount string `xml:"purchasing_account,omitempty"`
PoDate string `xml:"po_date,omitempty"`
PoDateEpoch int64 `xml:"po_date_epoch,omitempty"`
PoDateUtc string `xml:"po_date_utc,omitempty"`
WarrantyExpires string `xml:"warranty_expires,omitempty"`
WarrantyExpiresEpoch int64 `xml:"warranty_expires_epoch,omitempty"`
WarrantyExpiresUtc string `xml:"warranty_expires_utc,omitempty"`
LeaseExpires string `xml:"lease_expires,omitempty"`
LeaseExpiresEpoch int64 `xml:"lease_expires_epoch,omitempty"`
LeaseExpiresUtc string `xml:"lease_expires_utc,omitempty"`
LifeExpectancy int `xml:"life_expectancy,omitempty"`
PurchasingContact string `xml:"purchasing_contact,omitempty"`
OsApplecareID string `xml:"os_applecare_id,omitempty"`
OsMaintenanceExpires string `xml:"os_maintenance_expires,omitempty"`
Attachments string `xml:"attachments,omitempty"`
}
type ComputerDataSubsetSecurity ¶ added in v0.0.11
type ComputerDataSubsetSecurity struct {
ActivationLock bool `xml:"activation_lock,omitempty"`
RecoveryLockEnabled bool `xml:"recovery_lock_enabled,omitempty"`
SecureBootLevel string `xml:"secure_boot_level,omitempty"`
ExternalBootLevel string `xml:"external_boot_level,omitempty"`
FirewallEnabled bool `xml:"firewall_enabled,omitempty"`
}
type ComputerDataSubsetSoftware ¶ added in v0.0.11
type ComputerDataSubsetSoftware struct {
// UnixExecutables string `xml:"unix_executables,omitempty"` - unknown format, accepting PRs
// LicensedSoftware string `xml:"licensed_software,omitempty"` - unknown format, accepting PRs
InstalledByCasper []struct {
Package string `xml:"package,omitempty"`
} `xml:"installed_by_casper,omitempty"`
InstalledByInstallerSwu []struct {
Package []string `xml:"package,omitempty"`
} `xml:"installed_by_installer_swu,omitempty"`
CachedByCasper []struct {
Package string `xml:"package,omitempty"`
} `xml:"cached_by_casper,omitempty"`
AvailableSoftwareUpdates []struct {
Name string `xml:"name,omitempty"`
} `xml:"available_software_updates,omitempty"`
AvailableUpdates []struct {
Update struct {
Text string `xml:",chardata,omitempty"`
Name string `xml:"name,omitempty"`
PackageName string `xml:"package_name,omitempty"`
Version string `xml:"version,omitempty"`
} `xml:"update,omitempty"`
} `xml:"available_updates,omitempty"`
RunningServices struct {
Names []string `xml:"name,omitempty"`
} `xml:"running_services,omitempty"`
Applications struct {
Size int `xml:"size,omitempty"`
Applications []struct {
Name string `xml:"name,omitempty"`
Path string `xml:"path,omitempty"`
Version string `xml:"version,omitempty"`
BundleID string `xml:"bundle_id,omitempty"`
} `xml:"application,omitempty"`
} `xml:"applications,omitempty"`
}
type ComputerGroup ¶ added in v0.0.11
type ComputerGroup struct {
ID int `xml:"id"`
Name string `xml:"name"`
IsSmart bool `xml:"is_smart"`
Site Site `xml:"site"`
Criteria []ComputerGroupCriterion `xml:"criteria>criterion"`
CriteriaSize int `xml:"criteria>size"`
Computers []ComputerGroupComputerEntry `xml:"computers>computer"`
ComputerSize int `xml:"computers>size"`
}
type ComputerGroupComputerEntry ¶ added in v0.0.11
type ComputerGroupCriterion ¶ added in v0.0.11
type ComputerGroupInfo ¶ added in v0.0.11
type ComputerGroupInfo struct {
ComputerGroup GroupAssignmentDataSubsetGroupDetail `json:"computer_group,omitempty" xml:"computer_group,omitempty"`
}
type ComputerGroupListResponse ¶ added in v0.0.11
type ComputerGroupRequest ¶ added in v0.0.11
type ComputerGroupRequest struct {
Name string `xml:"name"`
IsSmart bool `xml:"is_smart"`
Site Site `xml:"site"`
Criteria []ComputerGroupCriterion `xml:"criteria>criterion"`
Computers []ComputerGroupComputerEntry `xml:"computers>computer,omitempty"`
}
type ComputerGroupsResponse ¶ added in v0.0.11
type ComputerGroupsResponse struct {
Size int `xml:"size"`
Results []ComputerGroupListResponse `xml:"computer_group"`
}
type ComputerInfo ¶ added in v0.0.11
type ComputerLink ¶ added in v0.0.11
type ComputerLink struct {
Computer UsersDataSubsetItem `json:"computer" xml:"computer"`
}
type ComputerListResponse ¶ added in v0.0.11
type ComputerListResponse struct {
ID int `json:"id,omitempty" xml:"id,omitempty"`
UDID string `json:"udid,omitempty" xml:"udid,omitempty"`
Name string `json:"name,omitempty" xml:"name,omitempty"`
SerialNumber string `json:"serial_number,omitempty" xml:"serial_number,omitempty"`
Managed bool `json:"managed,omitempty" xml:"managed,omitempty"`
Model string `json:"model,omitempty" xml:"model,omitempty"`
Department string `json:"department,omitempty" xml:"department,omitempty"`
Building string `json:"building,omitempty" xml:"building,omitempty"`
MACAddress string `json:"mac_address,omitempty" xml:"mac_address,omitempty"`
ReportDateUTC string `json:"report_date_utc,omitempty" xml:"report_date_utc,omitempty"`
ReportDateEpoch int64 `json:"report_date_epoch,omitempty" xml:"report_date_epoch,omitempty"`
}
type ComputerScope ¶ added in v0.0.11
type ComputersResponse ¶ added in v0.0.11
type ComputersResponse struct {
Size int `xml:"size"`
Results []ComputerListResponse `xml:"computer"`
}
type Department ¶ added in v0.0.10
type DepartmentAssignment ¶ added in v0.0.11
type DepartmentAssignment struct {
Department DepartmentInfo `json:"department,omitempty" xml:"department,omitempty"`
}
type DepartmentInfo ¶ added in v0.0.11
type DepartmentScope ¶ added in v0.0.11
type DeviceGroupAndOr ¶ added in v0.0.11
type DeviceGroupAndOr string
const ( And DeviceGroupAndOr = "and" Or DeviceGroupAndOr = "or" )
type ExclusionConfig ¶ added in v0.0.11
type ExclusionConfig struct {
Computers []ComputerAssignment `json:"computers,omitempty" xml:"computers,omitempty"`
Buildings []BuildingAssignment `json:"buildings,omitempty" xml:"buildings,omitempty"`
Departments []DepartmentAssignment `json:"departments,omitempty" xml:"departments,omitempty"`
ComputerGroups []ComputerGroupInfo `json:"computer_groups,omitempty" xml:"computer_groups,omitempty"`
Users []UserAssignment `json:"users,omitempty" xml:"users,omitempty"`
UserGroups []UserGroupAssignment `json:"user_groups,omitempty" xml:"user_groups,omitempty"`
NetworkSegments []NetworkSegmentInfo `json:"network_segments,omitempty" xml:"network_segments,omitempty"`
IBeacons []IBeaconInfo `json:"ibeacons,omitempty" xml:"ibeacons,omitempty"`
JSSUsers []JSSUserConfig `json:"jss_users,omitempty" xml:"jss_users,omitempty"`
JSSUserGroups []JSSUserGroupInfo `json:"jss_user_groups,omitempty" xml:"jss_user_groups,omitempty"`
}
type ExtensionAttributeItem ¶ added in v0.0.11
type ExtensionAttributeItem struct {
ID int `json:"id,omitempty" xml:"id,omitempty"`
Name string `json:"name,omitempty" xml:"name,omitempty"`
Type string `json:"type,omitempty" xml:"type,omitempty"` // possible values: String, Integer, Date
Value string `json:"value,omitempty" xml:"value,omitempty"`
}
type GeneralCategory ¶ added in v0.0.11
type GeneralConfig ¶ added in v0.0.11
type GeneralConfig struct {
ID int `json:"id,omitempty" xml:"id,omitempty"`
Name string `json:"name,omitempty" xml:"name,omitempty"`
Description string `json:"description,omitempty" xml:"description,omitempty"`
Site SiteInfo `json:"site,omitempty" xml:"site,omitempty"`
Category CategoryInfo `json:"category,omitempty" xml:"category,omitempty"`
DistributionMethod string `json:"distribution_method,omitempty" xml:"distribution_method,omitempty"`
UserRemovable bool `json:"user_removable,omitempty" xml:"user_removable,omitempty"`
Level string `json:"level,omitempty" xml:"level,omitempty"`
UUID string `json:"uuid,omitempty" xml:"uuid,omitempty"`
RedeployOnUpdate string `json:"redeploy_on_update,omitempty" xml:"redeploy_on_update,omitempty"`
Payloads string `json:"payloads,omitempty" xml:"payloads,omitempty"`
}
type GroupAssignmentDataSubsetGroupDetail ¶ added in v0.0.14
type GroupAssignmentDataSubsetGroupDetail struct {
ID int `json:"id,omitempty" xml:"id"`
Name string `json:"name" xml:"name"`
AccessLevel string `json:"access_level" xml:"access_level"`
PrivilegeSet string `json:"privilege_set" xml:"privilege_set"`
Site AccountDataSubsetSite `json:"site" xml:"site"`
Privileges AccountDataSubsetPrivileges `json:"privileges" xml:"privileges"`
Members []AccountDataSubsetMembers `json:"members" xml:"members>user"`
}
type Groups ¶
type Groups struct {
Group []ResponseAccountGroup `json:"group,omitempty" xml:"group,omitempty"`
}
type IBeaconInfo ¶ added in v0.0.11
type IBeaconInfo struct {
IBeacon BeaconDetail `json:"ibeacon,omitempty" xml:"ibeacon,omitempty"`
}
type IBeaconScope ¶ added in v0.0.11
type IbeaconListItem ¶ added in v0.0.11
type JSSUserConfig ¶ added in v0.0.11
type JSSUserConfig struct {
JSSUser UserInfo `json:"jss_user,omitempty" xml:"jss_user,omitempty"`
}
type JSSUserGroupInfo ¶ added in v0.0.11
type JSSUserGroupInfo struct {
JSSUserGroup GroupAssignmentDataSubsetGroupDetail `json:"jss_user_group,omitempty" xml:"jss_user_group,omitempty"`
}
type JamfUserScope ¶ added in v0.0.11
type Logger ¶
type Logger interface {
Trace(msg string, keysAndValues ...interface{}) // For very detailed logs
Debug(msg string, keysAndValues ...interface{}) // For development and troubleshooting
Info(msg string, keysAndValues ...interface{}) // Informational messages
Warn(msg string, keysAndValues ...interface{}) // For potentially problematic situations
Error(msg string, keysAndValues ...interface{}) // For errors that might still allow the app to continue running
Fatal(msg string, keysAndValues ...interface{}) // For errors that might prevent the app from continuing
}
Logger is an interface for logging within the SDK.
func NewDefaultLogger ¶
func NewDefaultLogger() Logger
NewDefaultLogger returns a new instance of the default logger.
type MacOSConfigurationProfileListItem ¶ added in v0.0.11
type MobileDeviceLink ¶ added in v0.0.11
type MobileDeviceLink struct {
MobileDevice UsersDataSubsetItem `json:"mobile_device" xml:"mobile_device"`
}
type NetworkDetail ¶ added in v0.0.11
type NetworkLimitation ¶ added in v0.0.11
type NetworkLimitation struct {
Users []UserAssignment `json:"users,omitempty" xml:"users,omitempty"`
UserGroups []UserGroupAssignment `json:"user_groups,omitempty" xml:"user_groups,omitempty"`
NetworkSegments []NetworkSegmentInfo `json:"network_segments,omitempty" xml:"network_segments,omitempty"`
IBeacons []IBeaconInfo `json:"ibeacons,omitempty" xml:"ibeacons,omitempty"`
}
type NetworkSegmentInfo ¶ added in v0.0.11
type NetworkSegmentInfo struct {
NetworkSegment NetworkDetail `json:"network_segment,omitempty" xml:"network_segment,omitempty"`
}
type NetworkSegmentList ¶ added in v0.0.11
type NetworkSegmentList struct {
Size int `json:"size" xml:"size"`
Results []ResponseNetworkSegment `json:"network_segment" xml:"network_segment"`
}
type NetworkSegmentScope ¶ added in v0.0.11
type Parameters ¶ added in v0.0.15
type Parameters struct {
Parameter4 string `xml:"parameter4,omitempty"`
Parameter5 string `xml:"parameter5,omitempty"`
Parameter6 string `xml:"parameter6,omitempty"`
Parameter7 string `xml:"parameter7,omitempty"`
Parameter8 string `xml:"parameter8,omitempty"`
Parameter9 string `xml:"parameter9,omitempty"`
Parameter10 string `xml:"parameter10,omitempty"`
Parameter11 string `xml:"parameter11,omitempty"`
}
type PeripheralLink ¶ added in v0.0.11
type PeripheralLink struct {
Peripheral UsersDataSubsetItem `json:"peripheral" xml:"peripheral"`
}
type ResponseAccount ¶
type ResponseAccount struct {
ID int `json:"id,omitempty" xml:"id,omitempty"`
Name string `json:"name" xml:"name"`
DirectoryUser bool `json:"directory_user,omitempty" xml:"directory_user,omitempty"`
FullName string `json:"full_name,omitempty" xml:"full_name,omitempty"`
Email string `json:"email,omitempty" xml:"email,omitempty"`
EmailAddress string `json:"email_address,omitempty" xml:"email_address,omitempty"`
Enabled string `json:"enabled,omitempty" xml:"enabled,omitempty"`
LdapServer AccountDataSubsetLdapServer `json:"ldap_server,omitempty" xml:"ldap_server,omitempty"` // Added this
ForcePasswordChange bool `json:"force_password_change,omitempty" xml:"force_password_change,omitempty"`
AccessLevel string `json:"access_level,omitempty" xml:"access_level,omitempty"`
Password string `json:"password" xml:"password"`
PrivilegeSet string `json:"privilege_set,omitempty" xml:"privilege_set,omitempty"`
Site AccountDataSubsetSite `json:"site,omitempty" xml:"site,omitempty"`
Privileges AccountDataSubsetPrivileges `json:"privileges,omitempty" xml:"privileges,omitempty"`
}
type ResponseAccountGroup ¶
type ResponseAccountGroup struct {
ID int `json:"id,omitempty" xml:"id"`
Name string `json:"name" xml:"name"`
AccessLevel string `json:"access_level" xml:"access_level"`
PrivilegeSet string `json:"privilege_set" xml:"privilege_set"`
Site AccountDataSubsetSite `json:"site" xml:"site"`
Privileges AccountDataSubsetPrivileges `json:"privileges" xml:"privileges"`
Members []AccountDataSubsetUser `json:"members" xml:"members>user"`
}
type ResponseAccountsList ¶
type ResponseAccountsList struct {
Users *AccountDataSubsetUsers `xml:"users,omitempty"`
Groups *AccountDataSubsetGroups `xml:"groups,omitempty"`
}
Get Account List
type ResponseAllowedFileExtensionsList ¶ added in v0.0.9
type ResponseAllowedFileExtensionsList struct {
XMLName xml.Name `xml:"allowed_file_extensions"`
Size int `xml:"size"`
AllowedFileExtensions []AllowedFileExtensionDetail `xml:"allowed_file_extension"`
}
Response structure for the list of allowed file extensions
type ResponseApiIntegrations ¶ added in v0.0.13
type ResponseApiIntegrations struct {
TotalCount int `json:"totalCount"`
Results []ApiIntegration `json:"results"`
}
ResponseApiIntegrations represents the structure of the response for fetching API integrations
type ResponseApiRoles ¶ added in v0.0.12
ResponseApiRoles represents the structure of the response for fetching API roles
type ResponseBuilding ¶ added in v0.0.8
type ResponseBuilding BuildingScope
ResponseBuilding is now directly the BuildingDetail
type ResponseBuildings ¶ added in v0.0.9
type ResponseBuildings struct {
Size int `xml:"size"`
Buildings []BuildingDetail `xml:"building"`
}
For multiple buildings, the structure remains the same.
type ResponseCategories ¶ added in v0.0.11
type ResponseDepartments ¶ added in v0.0.10
type ResponseDepartments struct {
TotalCount int `xml:"size"`
Results []Department `xml:"department"`
}
type ResponseIbeacon ¶ added in v0.0.11
type ResponseIbeaconList ¶ added in v0.0.11
type ResponseIbeaconList struct {
Ibeacons []IbeaconListItem `json:"ibeacon" xml:"ibeacon"`
}
type ResponseJamfProVersion ¶ added in v0.0.10
type ResponseJamfProVersion struct {
Version *string `json:"Version,omitempty"`
}
type ResponseMacOSConfigurationProfile ¶ added in v0.0.11
type ResponseMacOSConfigurationProfile struct {
General GeneralConfig `json:"general,omitempty" xml:"general,omitempty"`
Scope ScopeConfig `json:"scope,omitempty" xml:"scope,omitempty"`
SelfService SelfServiceConfig `json:"self_service,omitempty" xml:"self_service,omitempty"`
}
type ResponseMacOSConfigurationProfileList ¶ added in v0.0.11
type ResponseMacOSConfigurationProfileList struct {
Size int `json:"size" xml:"size"`
Results []MacOSConfigurationProfileListItem `json:"os_x_configuration_profile" xml:"os_x_configuration_profile"`
}
type ResponseNetworkSegment ¶ added in v0.0.11
type ResponseNetworkSegment struct {
ID int `json:"id" xml:"id"`
Name string `json:"name" xml:"name"`
StartingAddress string `json:"starting_address" xml:"starting_address"`
EndingAddress string `json:"ending_address" xml:"ending_address"`
DistributionServer string `json:"distribution_server,omitempty" xml:"distribution_server,omitempty"`
DistributionPoint string `json:"distribution_point,omitempty" xml:"distribution_point,omitempty"`
URL string `json:"url,omitempty" xml:"url,omitempty"`
SWUServer string `json:"swu_server,omitempty" xml:"swu_server,omitempty"`
Building string `json:"building,omitempty" xml:"building,omitempty"`
Department string `json:"department,omitempty" xml:"department,omitempty"`
OverrideBuildings bool `json:"override_buildings" xml:"override_buildings"`
OverrideDepartments bool `json:"override_departments" xml:"override_departments"`
}
type ResponseScript ¶ added in v0.0.15
type ResponseScript struct {
ID int `xml:"id"`
Name string `xml:"name"`
Category string `xml:"category,omitempty"`
Filename string `xml:"filename,omitempty"`
Info string `xml:"info,omitempty"`
Notes string `xml:"notes,omitempty"`
Priority string `xml:"priority,omitempty"`
Parameters Parameters `xml:"parameters"`
OSRequirements string `xml:"os_requirements,omitempty"`
ScriptContents string `xml:"script_contents,omitempty"`
ScriptContentsEncoded string `xml:"script_contents_encoded,omitempty"`
}
type ResponseScriptsList ¶ added in v0.0.15
type ResponseScriptsList struct {
Size int `xml:"size"`
Script []ScriptItem `xml:"script"`
}
Scripts List Structs
type ResponseUser ¶ added in v0.0.11
type ResponseUser struct {
ID int `json:"id" xml:"id"`
Name string `json:"name" xml:"name"` // required
FullName string `json:"full_name,omitempty" xml:"full_name,omitempty"`
Email string `json:"email,omitempty" xml:"email,omitempty"`
EmailAddress string `json:"email_address,omitempty" xml:"email_address,omitempty"`
PhoneNumber string `json:"phone_number,omitempty" xml:"phone_number,omitempty"`
Position string `json:"position,omitempty" xml:"position,omitempty"`
EnableCustomPhotoURL bool `json:"enable_custom_photo_url,omitempty" xml:"enable_custom_photo_url,omitempty"`
CustomPhotoURL string `json:"custom_photo_url,omitempty" xml:"custom_photo_url,omitempty"`
LDAPServer UsersDataSubsetLDAPServer `json:"ldap_server,omitempty" xml:"ldap_server,omitempty"`
ExtensionAttributes []UsersDataSubsetExtensionAttribute `json:"extension_attributes,omitempty" xml:"extension_attributes,omitempty"`
Sites []UsersDataSubsetUserSite `json:"sites,omitempty" xml:"sites,omitempty"`
Links UsersDataSubsetUserLinks `json:"links,omitempty" xml:"links,omitempty"`
}
type ResponseUserGroup ¶ added in v0.0.11
type ResponseUserGroup struct {
ID int `json:"id" xml:"id"`
Name string `json:"name" xml:"name"`
IsSmart bool `json:"is_smart" xml:"is_smart"`
IsNotifyOnChange bool `json:"is_notify_on_change" xml:"is_notify_on_change"`
Site Site `json:"site,omitempty" xml:"site,omitempty"`
Criteria []UserGroupCriteria `json:"criteria,omitempty" xml:"criteria,omitempty"`
Users []UserGroupUser `json:"users,omitempty" xml:"users,omitempty"`
}
type ResponseUserList ¶ added in v0.0.11
type ResponseUserList struct {
Size int `json:"size" xml:"size"`
Users []UserListItem `json:"user" xml:"user"`
}
type ResponseUsers ¶ added in v0.0.11
type ResponseUsers struct {
Size int `xml:"size"`
Users []ResponseUser `xml:"user"`
}
type Role ¶ added in v0.0.12
type Role 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 SSOFailoverResponse ¶
type ScopeConfig ¶ added in v0.0.11
type ScopeConfig struct {
AllComputers bool `json:"all_computers,omitempty" xml:"all_computers,omitempty"`
AllJSSUsers bool `json:"all_jss_users,omitempty" xml:"all_jss_users,omitempty"`
Computers []ComputerAssignment `json:"computers,omitempty" xml:"computers,omitempty"`
Buildings []BuildingAssignment `json:"buildings,omitempty" xml:"buildings,omitempty"`
Departments []DepartmentAssignment `json:"departments,omitempty" xml:"departments,omitempty"`
ComputerGroups []ComputerGroupInfo `json:"computer_groups,omitempty" xml:"computer_groups,omitempty"`
JSSUsers []JSSUserConfig `json:"jss_users,omitempty" xml:"jss_users,omitempty"`
JSSUserGroups []JSSUserGroupInfo `json:"jss_user_groups,omitempty" xml:"jss_user_groups,omitempty"`
Limitations NetworkLimitation `json:"limitations,omitempty" xml:"limitations,omitempty"`
Exclusions ExclusionConfig `json:"exclusions,omitempty" xml:"exclusions,omitempty"`
}
type ScriptItem ¶ added in v0.0.15
type SelfServiceCategory ¶ added in v0.0.11
type SelfServiceConfig ¶ added in v0.0.11
type SelfServiceConfig struct {
InstallButtonText string `json:"install_button_text,omitempty" xml:"install_button_text,omitempty"`
SelfServiceDescription string `json:"self_service_description,omitempty" xml:"self_service_description,omitempty"`
ForceUsersToViewDescription bool `json:"force_users_to_view_description,omitempty" xml:"force_users_to_view_description,omitempty"`
SelfServiceIcon SelfServiceIconDetail `json:"self_service_icon,omitempty" xml:"self_service_icon,omitempty"`
FeatureOnMainPage bool `json:"feature_on_main_page,omitempty" xml:"feature_on_main_page,omitempty"`
SelfServiceCategories SelfServiceCategory `json:"self_service_categories,omitempty" xml:"self_service_categories,omitempty"`
Notification string `json:"notification,omitempty" xml:"notification,omitempty"`
NotificationSubject string `json:"notification_subject,omitempty" xml:"notification_subject,omitempty"`
NotificationMessage string `json:"notification_message,omitempty" xml:"notification_message,omitempty"`
}
type SelfServiceIcon ¶ added in v0.0.11
type SelfServiceIconDetail ¶ added in v0.0.11
type User ¶ added in v0.0.11
type User struct {
ID int `json:"id" xml:"id"`
Username string `json:"username,omitempty" xml:"username,omitempty"`
FullName string `json:"full_name,omitempty" xml:"full_name,omitempty"`
PhoneNumber string `json:"phone_number,omitempty" xml:"phone_number,omitempty"`
EmailAddress string `json:"email_address,omitempty" xml:"email_address,omitempty"`
}
type UserAssignment ¶ added in v0.0.11
type UserAssignment struct {
User UserInfo `json:"user,omitempty" xml:"user,omitempty"`
}
type UserGroupAssignment ¶ added in v0.0.11
type UserGroupAssignment struct {
UserGroup GroupAssignmentDataSubsetGroupDetail `json:"user_group,omitempty" xml:"user_group,omitempty"`
}
type UserGroupCriteria ¶ added in v0.0.11
type UserGroupCriteria struct {
Size int `json:"size" xml:"size"`
Criterion UserGroupCriterion `json:"criterion" xml:"criterion"`
}
type UserGroupCriterion ¶ added in v0.0.11
type UserGroupCriterion struct {
Name string `json:"name" xml:"name"`
Priority int `json:"priority,omitempty" xml:"priority,omitempty"`
AndOr string `json:"and_or,omitempty" xml:"and_or,omitempty"`
SearchType string `json:"search_type,omitempty" xml:"search_type,omitempty"`
Value string `json:"value,omitempty" xml:"value,omitempty"`
OpeningParen bool `json:"opening_paren,omitempty" xml:"opening_paren,omitempty"`
ClosingParen bool `json:"closing_paren,omitempty" xml:"closing_paren,omitempty"`
}
type UserGroupScope ¶ added in v0.0.11
type UserGroupUser ¶ added in v0.0.11
type UserListItem ¶ added in v0.0.11
type Users ¶
type Users struct {
User []AccountUser `json:"user,omitempty" xml:"user,omitempty"`
}
type UsersDataSubsetExtensionAttribute ¶ added in v0.0.11
type UsersDataSubsetExtensionAttribute struct {
ExtensionAttributeItem `json:"extension_attribute" xml:"extension_attribute"`
}
type UsersDataSubsetItem ¶ added in v0.0.11
type UsersDataSubsetLDAPServer ¶ added in v0.0.11
type UsersDataSubsetUserLinks ¶ added in v0.0.11
type UsersDataSubsetUserLinks struct {
Computers ComputerLink `json:"computers,omitempty" xml:"computers,omitempty"`
Peripherals PeripheralLink `json:"peripherals,omitempty" xml:"peripherals,omitempty"`
MobileDevices MobileDeviceLink `json:"mobile_devices,omitempty" xml:"mobile_devices,omitempty"`
VPPAssignments VPPAssignmentLink `json:"vpp_assignments,omitempty" xml:"vpp_assignments,omitempty"`
TotalVPPCodeCount int `json:"total_vpp_code_count,omitempty" xml:"total_vpp_code_count,omitempty"`
}
type UsersDataSubsetUserSite ¶ added in v0.0.11
type UsersDataSubsetUserSite struct {
Site Site `json:"site,omitempty" xml:"site,omitempty"`
}
type VPPAssignmentLink ¶ added in v0.0.11
type VPPAssignmentLink struct {
VPPAssignment UsersDataSubsetItem `json:"vpp_assignment" xml:"vpp_assignment"`
}
Source Files
¶
- classicapi_accounts.go
- classicapi_allowed_file_extensions.go
- classicapi_buildings.go
- classicapi_computer_groups.go
- classicapi_computers.go
- classicapi_departments.go
- classicapi_ibeacons.go
- classicapi_macos_configuration_profiles.go
- classicapi_network_segments.go
- classicapi_scripts.go
- classicapi_usergroups.go
- classicapi_users.go
- jamfproapi_api_integrations.go
- jamfproapi_api_roles.go
- jamfproapi_categories.go
- jamfproapi_jamf_pro_version.go
- jamfproapi_sso_failover.go
- shared_api_client.go
- shared_logging.go
- shared_models.go