Classic and Pro Methods

Classic

accounts

Classic.get_accounts(data_type: str = 'json') Union[dict, str]

Returns all accounts and account groups.

Parameters:

data_type – json or xml

Returns:

All accounts in either JSON or XML


Classic.get_account(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns an account by either ID or name in JSON or XML. Need to supply at least one identifier.

Parameters:
  • id – Account ID

  • name – Account name

  • data_type – json or xml

Returns:

Account information in JSON or XML


Classic.get_account_group(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns an account group by either ID or name in JSON or XML. Need to supply at least one identifier.

Parameters:
  • id – Account group ID

  • name – Account group name

  • data_type – json or xml

Returns:

Account group information in JSON or XML


Classic.create_account(data: str, id: Union[int, str] = 0) str

Creates an account with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the account with. For syntax information view Jamf’s documentation.

  • id – ID of the new account, use 0 for next available ID

Returns:

New account information in XML


Classic.create_account_group(data: str, id: Union[int, str] = 0) str

Creates an account group with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the account group with. For syntax information view Jamf’s documentation.

  • id – ID of the new account group, set to 0 for next available ID

Returns:

New account group information in XML


Classic.update_account(data: str, id: Union[int, str] = None, name: str = None) str

Updates an account with the given XML data by either ID or name. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the account with. For syntax information view Jamf’s documentation.

  • id – Account ID

  • name – Account name

Returns:

Updated account information in XML


Classic.update_account_group(data: str, id: Union[int, str] = None, name: str = None) str

Updates an account group with the given XML data by either ID or name. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the account group with. For syntax information view Jamf’s documentation.

  • id – Account group ID

  • name – Account group name

Returns:

Updated account group information in XML


Classic.delete_account(id: Union[int, str] = None, name: str = None) str

Deletes an account by ID or name. Need to supply at leas one identifier.

Parameters:
  • id – Account ID

  • name – Account name

Returns:

Deleted account information in XML


Classic.delete_account_group(id: Union[int, str] = None, name: str = None) str

Deletes an account group by ID or name. Need to supply at leas one identifier.

Parameters:
  • id – Account group ID

  • name – Account group name

Returns:

Deleted account group information in XML


activationcode

Classic.get_activation_code(data_type: str = 'json') str

Returns the activation code of the JPS server.

Parameters:

data_type – json or xml

Returns:

Activation code information in JSON or XML


Classic.update_activation_code(data: str) str

Updates the activation code of the JPS server.

Parameters:

data – XML data to update the activation code with. For syntax information view Jamf’s documentation.

Returns:

Updated activation code information in XML


advancedcomputersearches

Classic.get_advanced_computer_searches(data_type: str = 'json') Union[dict, str]

Returns all advanced computer searches in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All advanced computer searches in JSON or XML


Returns data on a specific advanced computer search by either ID or name.

Parameters:
  • id – Advanced computer search ID

  • name – Advanced computer search name

  • data_type – json or xml

Returns:

Advanced computer search information in JSON or XML


Creates an advanced computer search with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the advanced computer search with. For syntax information view Jamf’s documentation.

  • id – ID of the new advanced computer search, use 0 for next available ID

Returns:

New advanced computer search information in XML


Updates and advanced computer search with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the advanced computer search with. For syntax information view Jamf’s documentation.

  • id – Advanced computer search ID

  • name – Advanced computer search name

Returns:

Updated advanced computer search information in XML


Deletes an advanced computer search by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Advanced computer search ID

  • name – Advanced computer search name

Returns:

Deleted advanced computer search information in XML


advancedmobiledevicesearches

Classic.get_advanced_mobile_device_searches(data_type: str = 'json') Union[dict, str]

Returns all advanced mobile device searches in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All advanced mobile device searches in JSON or XML


Returns data on a specific advanced mobile device search by either ID or name.

Parameters:
  • id – Advanced mobile device search ID

  • name – Advanced mobile device search name

  • data_type – json or xml

Returns:

Advanced mobile device search information in JSON or XML


Creates an advanced mobile device search with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the advanced mobile device search with. For syntax information view Jamf’s documentation.

  • id – ID of the new advanced mobile device search, use 0 for next available ID

Returns:

New advanced mobile device search information in XML


Updates and advanced mobile device search with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the advanced mobile device search with. For syntax information view Jamf’s documentation.

  • id – Advanced mobile device search ID

  • name – Advanced mobile device search name

Returns:

Updated advanced mobile device search information in XML


Deletes an advanced mobile device search by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Advanced mobile device search ID

  • name – Advanced mobile device search name

Returns:

Deleted advanced mobile device search information in XML


advancedusersearches

Classic.get_advanced_user_searches(data_type: str = 'json') Union[dict, str]

Returns all advanced user searches in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All advanced user searches in JSON or XML


Returns data on a specific advanced user search by either ID or name.

Parameters:
  • id – Advanced user search ID

  • name – Advanced user search name

  • data_type – json or xml

Returns:

Advanced user search information in JSON or XML


Creates an advanced user search with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the advanced user search with. For syntax information view Jamf’s documentation.

  • id – ID of the new advanced user search, use 0 for next available ID

Returns:

New advanced user search information in XML


Updates and advanced user search with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the advanced user search with. For syntax information view Jamf’s documentation.

  • id – Advanced user search ID

  • name – Advanced user search name

Returns:

Updated advanced user search information in XML


Deletes an advanced user search by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Advanced user search ID

  • name – Advanced user search name

Returns:

Deleted advanced used search information in XML


allowedfileextensions

Classic.get_allowed_file_extensions(data_type='json') Union[dict, str]

Returns all allowed file extensions in either JSON or XML

Parameters:

data_type – json or xml

Returns:

All allowed file extensions in JSON or XML


Classic.get_allowed_file_extension(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on one allowed file extension by ID or name in either JSON or XML

Parameters:
  • id – Allowed file extension ID

  • name – Allowed file extension name

  • data_type – json or xml

Returns:

Allowed file extension information in JSON or XML


Classic.create_allowed_file_extension(data: str, id: Union[int, str] = 0) str

Creates an allowed file extension with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the allowed file extension. For syntax information view Jamf’s documentation.

  • id – Allowed file extension id

Returns:

New allowed file extension information in XML


Classic.delete_allowed_file_extension(id: Union[int, str]) str

Deletes an allowed file extension with the given ID.

Parameters:

id – Allowed file extension ID

Returns:

Deleted allowed file extension information in XML


buildings

Classic.get_buildings(data_type: str = 'json') Union[dict, str]

Returns all buildings in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All buildings in JSON or XML


Classic.get_building(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific building by either ID or name.

Parameters:
  • id – building ID

  • name – building name

  • data_type – json or xml

Returns:

Building information in JSON or XML


Classic.create_building(data: str, id: Union[int, str] = 0) str

Creates a building with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the building with. For syntax information view Jamf’s documentation.

  • id – ID of the new building, use 0 for next available ID

Returns:

New building information in XML


Classic.update_building(data: str, id: Union[int, str] = None, name: str = None) str

Updates a building with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the building with. For syntax information view Jamf’s documentation.

  • id – building ID

  • name – building name

Returns:

Updated building information in XML


Classic.delete_building(id: Union[int, str] = None, name: str = None) str

Deletes a building by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – building ID

  • name – building name

Returns:

Deleted building information in XML


byoprofiles

Classic.get_byo_profiles(data_type: str = 'json') Union[dict, str]

Returns all BYO profiles in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All BYO profiles in JSON or XML


Classic.get_byo_profile(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific BYO profile by either ID or name.

Parameters:
  • id – BYO profile ID

  • name – BYO profile name

  • data_type – json or xml

Returns:

BYO profile information in JSON or XML


Classic.create_byo_profile(data: str, id: Union[int, str] = 0) str

Creates a BYO profile with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the byo profile with. For syntax information view Jamf’s documentation.

  • id – ID of the new BYO profile, use 0 for next available ID

Returns:

New BYO profile information in XML


Classic.update_byo_profile(data: str, id: Union[int, str] = None, name: str = None) str

Updates a BYO profile with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the BYO profile with. For syntax information view Jamf’s documentation.

  • id – BYO profile ID

  • name – BYO profile name

Returns:

Updated BYO profile information in XML


Classic.delete_byo_profile(id: Union[int, str] = None, name: str = None) str

Deletes a byo profile by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – byo profile ID

  • name – byo profile name

Returns:

Deleted BYO profile information in XML


categories

Classic.get_categories(data_type: str = 'json') Union[dict, str]

Returns all categories in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All categories in JSON or XML


Classic.get_category(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific category by either ID or name.

Parameters:
  • id – category ID

  • name – category name

  • data_type – json or xml

Returns:

Category information in JSON or XML


Classic.create_category(data: str, id: Union[int, str] = 0) str

Creates a category with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the category with. For syntax information view Jamf’s documentation.

  • id – ID of the new category, use 0 for next available ID

Returns:

New category information in XML


Classic.update_category(data: str, id: Union[int, str] = None, name: str = None) str

Updates a category with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the category with. For syntax information view Jamf’s documentation.

  • id – category ID

  • name – category name

Returns:

Updated category information in XML


Classic.delete_category(id: Union[int, str] = None, name: str = None) str

Deletes a category by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – category ID

  • name – category name

Returns:

Deleted category information in XML


classes

Classic.get_classes(data_type: str = 'json') Union[dict, str]

Returns all classes in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All classes in JSON or XML


Classic.get_class(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific class by either ID or name.

Parameters:
  • id – class ID

  • name – class name

  • data_type – json or xml

Returns:

Class information in JSON or XML


Classic.create_class(data: str, id: Union[int, str] = 0) str

Creates a class with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the class with. For syntax information view Jamf’s documentation.

  • id – ID of the new class, use 0 for next available ID

Returns:

New class information in XML


Classic.update_class(data: str, id: Union[int, str] = None, name: str = None) str

Updates a class with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the class with. For syntax information view Jamf’s documentation.

  • id – class ID

  • name – class name

Returns:

Updated class information in XML


Classic.delete_class(id: Union[int, str] = None, name: str = None) str

Deletes a class by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – class ID

  • name – class name

Returns:

Deleted class information in XML


commandflush

Classic.create_command_flush(idtype: str = None, id: Union[int, str] = None, status: str = None, data: str = None) str

Flushes commands to a specified selection of computers or devices. Can choose to flush either pending, failed, or both. Use either the idtype, id, and status parameters or data.

Parameters:

idtype – Type of device to be flushed

Options: - computers - computergroups - mobiledevices - mobiledevicegroups

Parameters:
  • id – ID of device to be flushed

  • status – Command status to be flushed

Options: - Pending - Failed - Pending+Failed

Parameters:

data – XML data to define command flushing. For syntax information view Jamf’s documentation.

Returns:

Command flush results in XML


computerapplications

Classic.get_computer_application(application: str, version: Union[int, float, str] = None, inventory: str = None, data_type: str = 'json') Union[dict, str]

Returns computer applications based on name. You can also filter by version and return additional inventory data.

Parameters:
  • application – Application name, must include extension (.app)

  • version – Application version

  • inventory – Display fields separated by commas without spaces e.g. Platform,Bar Code,HostName

Returns:

Computer application information in JSON or XML


Classic.get_computer_application_usage(start_date: str, end_date: str, id: Union[int, str] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None, data_type: str = 'json') Union[dict, str]

Returns computer application usage data in a date range specified by start_date and end_date and one identifier.

Parameters:
  • start_date – Start date (e.g. yyyy-mm-dd)

  • end_date – End date (e.g. yyyy-mm-dd)

  • id – Computer ID

  • name – Computer name

  • udid – Computer UDID

  • serialnumber – Computer serial number

  • macaddress – Computer MAC address,

  • data_type – json or xml

Returns:

Computer application usage information in JSON or XML


computercommands

Classic.get_computer_commands(name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on all computer commands, can optionally filter by name

Parameters:
  • name – Computer command name

  • data_type – json or xml

Returns:

All computer commands in JSON or XML


Classic.get_computer_command(uuid: str, data_type: str = 'json') Union[dict, str]

Returns data on a specific computer command by uuid

Parameters:
  • uuid – Computer command UUID

  • data_type – json or xml

Returns:

Computer command in JSON or XML


Classic.get_computer_command_status(uuid: str, data_type='json') Union[dict, str]

Returns the status of a specific computer command by uuid

Parameters:
  • uuid – Computer command UUID

  • data_type – json or xml

Returns:

Computer command status in JSON or XML


Classic.create_computer_command(command: str, ids: List[Union[int, str]] = None, action: str = None, passcode: str = None, data: str = None) str

Creates a new computer command

Parameters:

command – Computer command name

Options: - BlankPush - DeleteUser - DeviceLock - DisableRemoteDesktop - EnableRemoteDesktop - EraseDevice - ScheduleOSUpdate - SettingsDisableBluetooth - SettingsEnableBluetooth - UnlockUserAccount - UnmanageDevice

Parameters:
  • ids – Comma separated list of IDs without spaces (e.g. 8,10,55)

  • action

    Options: - download (just downloads) - install (download and installs)

    Supported Commands: - ScheduleOSUpdate

  • passcode – Passcode to apply to device, must be 6 characters. Required for DeviceLock and EraseDevice commands.

  • data – XML data for creating computer command. For syntax information view Jamf’s documentation.

Returns:

New computer command information in XML


computerextensionattributes

Classic.get_computer_extension_attributes(data_type: str = 'json') Union[dict, str]

Returns all computer extension attributes in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All computer extension attributes in JSON or XML


Classic.get_computer_extension_attribute(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific computer extension attribute by either ID or name.

Parameters:
  • id – computer extension attribute ID

  • name – computer extension attribute name

  • data_type – json or xml

Returns:

Computer extension attribute information in JSON or XML


Classic.create_computer_extension_attribute(data: str, id: Union[int, str] = 0) str

Creates a computer extension attribute with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the computer extension attribute with. For syntax information view Jamf’s documentation.

  • id – ID of the new computer extension attribute, use 0 for next available ID

Returns:

New computer extension attribute information in XML


Classic.update_computer_extension_attribute(data: str, id: Union[int, str] = None, name: str = None) str

Updates a computer extension attribute with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the computer extension attribute with. For syntax information view Jamf’s documentation.

  • id – computer extension attribute ID

  • name – computer extension attribute name

Returns:

Updated computer extension attribute information in XML


Classic.delete_computer_extension_attribute(id: Union[int, str] = None, name: str = None) str

Deletes a computer extension attribute by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – computer extension attribute ID

  • name – computer extension attribute name

Returns:

Deleted computer extension attribute information in XML

computergroups

Classic.get_computer_groups(data_type: str = 'json') Union[dict, str]

Returns all computer groups in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All computer groups in JSON or XML


Classic.get_computer_group(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific computer group by either ID or name.

Parameters:
  • id – computer group ID

  • name – computer group name

  • data_type – json or xml

Returns:

Computer group information in JSON or XML


Classic.create_computer_group(data: str, id: Union[int, str] = 0) str

Creates a computer group with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the computer group with. For syntax information view Jamf’s documentation.

  • id – ID of the new computer group, use 0 for next available ID

Returns:

New computer group information in XML


Classic.update_computer_group(data: str, id: Union[int, str] = None, name: str = None) str

Updates a computer group with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the computer group with. For syntax information view Jamf’s documentation.

  • id – computer group ID

  • name – computer group name

Returns:

Updated computer group information in XML


Classic.delete_computer_group(id: Union[int, str] = None, name: str = None) str

Deletes a computer group by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – computer group ID

  • name – computer group name

Returns:

Deleted computer group information in XML


computerhardwaresoftwarereports

Classic.get_computer_hardware_software_reports(start_date: str, end_date: str, id: Union[int, str] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns computer hardware and software reports data in a date range specified by start_date and end_date and one identifier and optional subsets.

Parameters:
  • start_date – Start date (e.g. yyyy-mm-dd)

  • end_date – End date (e.g. yyyy-mm-dd)

  • id – Computer ID

  • name – Computer name

  • udid – Computer UDID

  • serialnumber – Computer serial number

  • macaddress – Computer MAC address,

  • subsets

    Subset(s) of data from the computer hardware software report in a list of strings

    Options: - Software - Hardware - Fonts - Plugins

  • data_type – json or xml

Returns:

Computer hardware and software reports information in JSON or XML


computerhistory

Classic.get_computer_history(id: Union[int, str] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns computer history data with the given identifier and optional subsets. Need to supply at least one identifier.

Parameters:
  • id – Computer ID

  • name – Computer name

  • udid – Computer UDID

  • serialnumber – Computer serial number

  • macaddress – Computer MAC address,

  • subsets – Subset(s) of data from the computer history in a list of strings Options: - General - ComputerUsageLogs - Audits - PolicyLogs - CasperRemoteLogs - ScreenSharingLogs - CasperImagingLogs - Commands - UserLocation - MacAppStoreApplications

  • data_type – json or xml

Returns:

Computer history information in JSON or XML


computerinventorycollection

Classic.get_computer_inventory_collection(data_type='json') Union[dict, list]

Returns computer inventory collection settings on the JPS server in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

Computer inventory collection in JSON or XML


Classic.update_computer_inventory_collection(data: str) str

Updates computer inventory collection settings on the JPS server with the given XML data. Need to supply at least one identifier.

Parameters:

data – XML data to update the computer inventory collection. For syntax information view Jamf’s documentation.

Returns:

Updated computer inventory collection information in XML


computerinvitations

Classic.get_computer_invitations(data_type: str = 'json') Union[dict, str]

Returns all computer invitation data in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All computer invitations in JSON or XML


Classic.get_computer_invitation(id: Union[int, str] = None, invitation: Union[int, str] = None, data_type: str = 'json')

Returns information on a single computer invitation defined by either ID or invitation. Need to supply at least one identifier.

Parameters:
  • id – Computer invitation ID

  • invitation – Computer invitation invitation identifier (name) Typically a long int

  • data_type – json or xml

Returns:

Computer invitation information in JSON or XML


Classic.create_computer_invitation(data: str, id: Union[int, str] = None, invitation: Union[int, str] = None) str

Creates a computer invitation defined by the XML data and either ID or invitation.

Parameters:
  • data – XML data to create computer invitation with. For syntax information view Jamf’s documentation.

  • id – Computer invitation ID, use 0 for next available

  • invitation – Computer invitation invitation identifier, use 0 for next available

Returns:

New computer invitation information in XML


Classic.delete_computer_invitation(id: Union[int, str] = None, invitation: Union[int, str] = None) str

Deletes a computer invitation by either ID or invitation identifiers. Need to supply at least one identifier.

Parameters:
  • id – Computer invitation ID

  • invitation – Computer invitation invitation identifier (name) Typically a long int

Returns:

Deleted computer invitation information in XML


computermanagement

Classic.get_computer_management(id: Union[int, str] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None, username: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns computer management data in a date range specified by start_date and end_date and one identifier and optional subsets. Need to supply at least one identifier.

Parameters:
  • id – Computer ID

  • name – Computer name

  • udid – Computer UDID

  • serialnumber – Computer serial number

  • macaddress – Computer MAC address

  • username – User to filter by

  • subsets – Subset(s) of data from the computer management in a list of strings Options: - General - Policies - Ebooks - MacAppStoreApps - OSXConfigurationProfiles - ManagedPreferenceProfiles - RestrictedSoftware - SmartGroups - StaticGroups - PatchReportingSoftwareTitles

  • data_type – json or xml

Returns:

Computer management information in JSON or XML


computerreports

Classic.get_computer_reports(data_type='json') Union[dict, str]

Returns all computer reports in a JPS server

Parameters:

data_type – json or xml

Returns:

All computer reports in JSON or XML


Classic.get_computer_report(id: Union[int, str] = None, name: str = None, data_type='json') Union[dict, str]

Returns data on one computer report by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Computer report ID

  • name – Computer report name

  • data_type – json or xml

Returns:

Computer report information in JSON or XML


computers

Classic.get_computers(match: str = None, basic: bool = False, data_type: str = 'json') Union[dict, str]

Returns all computers with optional filter match and the option to only return basic information by setting basic to True.

Parameters:
  • match – Name, mac address, etc. to filter by. Match uses the same format as the general search in Jamf Pro. For instance, admin* can be used to match computer names that begin with admin

  • basic – Only return basic info

  • data_type – json or xml

Returns:

All computers in JSON or XML


Classic.get_computer(id: Union[str, int] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None, subsets: List[str] = None, data_type: str = 'json')

Returns information on a computer with given identifier in either JSON or XML. You can specify the return of a subset of the data by defining subset as a list of the subsets that you want. Need to supply at least one identifier.

Parameters:
  • id – Computer ID

  • name – Computer name

  • udid – Computer UDID

  • serialnumber – Computer serial number

  • macaddress – Computer MAC address

  • subsets – Subset(s) of data from the computer in a list of strings Options: - General - Location - Purchasing - Peripherals - Hardware - Certificates - Software - ExtensionAttributes - GroupsAccounts - iphones - ConfigurationProfiles

  • data_type – json or xml

Returns:

Computer information in JSON or XML


Classic.create_computer(data: str, id: Union[str, int] = 0) str

Creates a computer with the given ID and information defined in XML data.

Parameters:
  • data – XML data to create computer record with. For syntax information view Jamf’s documentation.

  • id – Computer ID, set to 0 for next available ID

Returns:

New computer information in XML


Classic.update_computer(data: str, id: Union[str, int] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None) str

Updates information on a computer with given identifier. Need to supply at least one identifier.

Parameters:
  • data – XML string to update the computer with. For syntax information view Jamf’s documentation.

  • id – Computer ID

  • name – Computer name

  • udid – Computer UDID

  • serialnumber – Computer serial number

  • macaddress – Computer MAC address

Returns:

Updated computer information in XML


Classic.delete_computer(id: Union[str, int] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None) str

Deletes a computer with given identifier. Need to supply at least one identifier.

Parameters:
  • id – computer ID

  • name – computer name

  • udid – computer UDID

  • serialnumber – computer serial number

  • macaddress – computer MAC address

Returns:


Classic.delete_computers_extension_attribute_data(id: Union[int, str]) str

Deletes data collected by an extension attribute by ID

Parameters:

id – ID of the computer extension attribute data to be deleted

Returns:

Deleted computers extension attribute data information in XML


departments

Classic.get_departments(data_type: str = 'json') Union[dict, str]

Returns all departments in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All departments in JSON or XML


Classic.get_department(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific department by either ID or name.

Parameters:
  • id – Department ID

  • name – Department name

  • data_type – json or xml

Returns:

Department information in JSON or XML


Classic.create_department(data: str, id: Union[int, str] = 0) str

Creates a department with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the department with. For syntax information view Jamf’s documentation.

  • id – ID of the new department, use 0 for next available ID

Returns:

New department information in XML


Classic.update_department(data: str, id: Union[int, str] = None, name: str = None) str

Updates a department with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the department with. For syntax information view Jamf’s documentation.

  • id – Department ID

  • name – Department name

Returns:

Updated department information in XML


Classic.delete_department(id: Union[int, str] = None, name: str = None) str

Deletes a department by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Department ID

  • name – Department name

Returns:

Deleted department information in XML


directorybindings

Classic.get_directory_bindings(data_type: str = 'json') Union[dict, str]

Returns all directory bindings in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All directory bindings in JSON or XML


Classic.get_directory_binding(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific directory binding by either ID or name.

Parameters:
  • id – Directory binding ID

  • name – Directory binding name

  • data_type – json or xml

Returns:

Directory binding information in JSON or XML


Classic.create_directory_binding(data: str, id: Union[int, str] = 0) str

Creates a directory binding with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the directory binding with. For syntax information view Jamf’s documentation.

  • id – ID of the new directory binding, use 0 for next available ID

Returns:

New directory binding information in XML


Classic.update_directory_binding(data: str, id: Union[int, str] = None, name: str = None) str

Updates a directory binding with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the directory binding with. For syntax information view Jamf’s documentation.

  • id – Directory binding ID

  • name – Directory binding name

Returns:

Updated directory binding information in XML


Classic.delete_directory_binding(id: Union[int, str] = None, name: str = None) str

Deletes a directory binding by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Directory binding ID

  • name – Directory binding name

Returns:

Deleted directory binding information in XML


diskencryptionconfigurations

Classic.get_disk_encryption_configurations(data_type: str = 'json') Union[dict, str]

Returns all disk encryption configurations in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All disk encryption configuration information in JSON or XML


Classic.get_disk_encryption_configuration(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific disk encryption configuration by either ID or name.

Parameters:
  • id – disk encryption configuration ID

  • name – disk encryption configuration name

  • data_type – json or xml

Returns:

Disk encryption configuration information in JSON or XML


Classic.create_disk_encryption_configuration(data: str, id: Union[int, str] = 0) str

Creates a disk encryption configuration with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the disk encryption configuration with. For syntax information view Jamf’s documentation.

  • id – ID of the new disk encryption configuration, use 0 for next available ID

Returns:

New disk encryption configuration information in XML


Classic.update_disk_encryption_configuration(data: str, id: Union[int, str] = None, name: str = None) str

Updates a disk encryption configuration with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the disk encryption configuration with. For syntax information view Jamf’s documentation.

  • id – disk encryption configuration ID

  • name – disk encryption configuration name

Returns:

Updated disk encryption configuration information in XML


Classic.delete_disk_encryption_configuration(id: Union[int, str] = None, name: str = None) str

Deletes a disk encryption configuration by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – disk encryption configuration ID

  • name – disk encryption configuration name

Returns:

Deleted disk encryption configuration information in XML


distributionpoints

Classic.get_distribution_points(data_type: str = 'json') Union[dict, str]

Returns all distribution points in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All distribution points in JSON or XML


Classic.get_distribution_point(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific distribution point by either ID or name.

Parameters:
  • id – Distribution point ID

  • name – Distribution point name

  • data_type – json or xml

Returns:

Distribution point information in XML


Classic.create_distribution_point(data: str, id: Union[int, str] = 0) str

Creates a distribution point with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the distribution point with. For syntax information view Jamf’s documentation.

  • id – ID of the new distribution point, use 0 for next available ID

Returns:

New distribution point information in XML


Classic.update_distribution_point(data: str, id: Union[int, str] = None, name: str = None) str

Updates a distribution point with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the distribution point with. For syntax information view Jamf’s documentation.

  • id – Distribution point ID

  • name – Distribution point name

Returns:

Updated distribution point information in XML


Classic.delete_distribution_point(id: Union[int, str] = None, name: str = None) str

Deletes a distribution point by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Distribution point ID

  • name – Distribution point name

Returns:

Deleted distribution point information in XML


dockitems

Classic.get_dock_items(data_type: str = 'json') Union[dict, str]

Returns all dock items in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All dock items in JSON or XML


Classic.get_dock_item(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific dock item by either ID or name.

Parameters:
  • id – Dock item ID

  • name – Dock item name

  • data_type – json or xml

Returns:

Dock item information in JSON or XML


Classic.create_dock_item(data: str, id: Union[int, str] = 0) str

Creates a dock item with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the dock item with. For syntax information view Jamf’s documentation.

  • id – ID of the new dock item, use 0 for next available ID

Returns:

New dock item information in XML


Classic.update_dock_item(data: str, id: Union[int, str] = None, name: str = None) str

Updates a dock item with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the dock item with. For syntax information view Jamf’s documentation.

  • id – Dock item ID

  • name – Dock item name

Returns:

Updated dock item information in XML


Classic.delete_dock_item(id: Union[int, str] = None, name: str = None) str

Deletes a dock item by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Dock item ID

  • name – Dock item name

Returns:

Deleted dock item information in XML


ebooks

Classic.get_ebooks(data_type: str = 'json') Union[dict, str]

Returns all ebooks in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All ebooks in JSON or XML


Classic.get_ebook(id: Union[int, str] = None, name: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific ebook by either ID or name.

Parameters:
  • id – eBook ID

  • name – eBook name

  • subsets

    Subset(s) of data from the eBook in a list of strings

    Options: - General - Scope - SelfService

  • data_type – json or xml

Returns:

Ebook information in JSON or XML


Classic.create_ebook(data: str, id: Union[int, str] = 0) str

Creates an ebook with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the ebook with. For syntax information view Jamf’s documentation.

  • id – ID of the new ebook, use 0 for next available ID

Returns:

New ebook information in XML


Classic.update_ebook(data: str, id: Union[int, str] = None, name: str = None) str

Updates an ebook with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the ebook with. For syntax information view Jamf’s documentation.

  • id – eBook ID

  • name – eBook name

Returns:

Updated ebook information in XML


Classic.delete_ebook(id: Union[int, str] = None, name: str = None) str

Deletes a ebook by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – eBook ID

  • name – eBook name

Returns:

Deleted ebook information in XML


fileuploads

Enrollmentprofiles and printers resources do not work. Peripherals work but are no longer supported by Jamf so I didn’t add them.


Classic.create_file_upload(resource: str, filepath: str, id: Union[int, str] = None, name: str = None, force_ipa_upload: bool = False) str

Uploads a file attachment to the specified resource by either ID or name. On the mobiledeviceapplicationsipa resource you can set force_ipa_upload to True to enforce .ipa files. The printers and enrollmentprofiles resources listed in the documentation do not actually work as documented under Classic Privilege Requirements here https://developer.jamf.com/jamf-pro/docs. Need to supply at least one identifier.

Parameters:
  • resource

    Resource to attach the file to

    Options: computers, mobiledevices, policies, ebooks, mobiledeviceapplicationsicon, mobiledeviceapplicationsipa, diskencryptionconfigurations

  • filepath – Filepath to file to upload

  • id – Resource ID

  • name – Resource name, not usable with resource options peripherals

  • force_ipa_upload – True of False, enforces ipa file type. Only usable with mobiledeviceapplicationsipa resource

Returns:

Success message stating that the file was uploaded

Raises:

FileNotFoundError – Could not find file at file path


gsxconnection

Classic.get_gsx_connection(data_type: str = 'json') Union[dict, str]

Returns the Jamf Pro GSX connection information in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

GSX connection information in JSON or XML




Classic.update_gsx_connection(data: str)

Updates the Jamf Pro GSX connection information with XML data.

Parameters:

data – XML data to update with. For syntax information view Jamf’s documentation.

Returns:

Updated GSX connection information in XML


healthcarelistener

Classic.get_healthcare_listeners(data_type: str = 'json') Union[dict, str]

Returns all healthcare listeners in JSON or XML

Parameters:

data_type – json or dict

Returns:

All healthcare listeners in JSON or XML


Classic.get_healthcare_listener(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Return a healthcare listener by ID in either JSON or XML

Parameters:
  • id – Healthcare listener ID

  • data_type – json or xml

Returns:

Healthcare listener information in JSON or XML


Classic.update_healthcare_listener(data: str, id: Union[int, str]) str

Updates an existing healthcare listener by ID with XML data

Parameters:
  • data – XML data to update healthcare listener with. For syntax information view Jamf’s documentation.

  • id – Healthcare listener ID

Returns:

Updated healthcare listener information in XML


healthcarelistenerrule

Classic.get_healthcare_listener_rules(data_type: str = 'json') Union[dict, str]

Returns all healthcare listener rules in JSON or XML

Parameters:

data_type – json or dict

Returns:

All healthcare listener rules in JSON or XML


Classic.get_healthcare_listener_rule(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Return a healthcare listener rule by ID in either JSON or XML

Parameters:
  • id – healthcare listener rule ID

  • data_type – json or xml

Returns:

Healthcare listener rule information in JSON or XML


Classic.create_healthcare_listener_rule(data: str, id: Union[int, str] = 0) str

Creates a healthcare listener rule by ID with XML data

Parameters:
  • data – XML data to update healthcare listener rule with. For syntax information view Jamf’s documentation.

  • id – Healthcare listener rule ID, use 0 for next available ID

Returns:

New healthcare listener rule information in XML


Classic.update_healthcare_listener_rule(data: str, id: Union[int, str]) str

Updates an existing healthcare listener rule by ID with XML data

Parameters:
  • data – XML data to update healthcare listener rule with. For syntax information view Jamf’s documentation.

  • id – healthcare listener rule ID

Returns:

Updated healthcare listener rule information in XML


ibeacons

Classic.get_ibeacon_regions(data_type: str = 'json') Union[dict, str]

Returns all iBeacon regions in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All iBeacon regions in JSON or XML


Classic.get_ibeacon_region(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific iBeacon region by either ID or name.

Parameters:
  • id – iBeacon region ID

  • name – iBeacon region name

  • data_type – json or xml

Returns:

iBeacon region information in JSON or XML


Classic.create_ibeacon_region(data: str, id: Union[int, str] = 0) str

Creates a iBeacon region with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the iBeacon region with. For syntax information view Jamf’s documentation.

  • id – ID of the new iBeacon region, use 0 for next available ID

Returns:

New iBeacon region information in XML


Classic.update_ibeacon_region(data: str, id: Union[int, str] = None, name: str = None) str

Updates a iBeacon region with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the iBeacon region with. For syntax information view Jamf’s documentation.

  • id – iBeacon region ID

  • name – iBeacon region name

Returns:

Updated iBeacon region information in XML


Classic.delete_ibeacon_region(id: Union[int, str] = None, name: str = None) str

Deletes a iBeacon region by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – iBeacon region ID

  • name – iBeacon region name

Returns:

Deleted iBeacon region information in XML


infrastructuremanager

Classic.get_infrastructure_managers(data_type: str = 'json') Union[dict, str]

Returns all infrastructure managers in JSON or XML

Parameters:

data_type – json or dict

Returns:

All infrastructure managers in JSON or XML


Classic.get_infrastructure_manager(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Return a infrastructure manager by ID in either JSON or XML

Parameters:
  • id – Infrastructure manager ID

  • data_type – json or xml

Returns:

Infrastructure manager information in JSON or XML


Classic.update_infrastructure_manager(data: str, id: Union[int, str]) str

Updates an existing infrastructure manager by ID with XML data

Parameters:
  • data – XML data to update infrastructure manager with. For syntax information view Jamf’s documentation.

  • id – Infrastructure manager ID

Returns:

Updated infrastructure manager information in XML


jssuser

This endpoint no longer works.


jsonwebtokenconfigurations

Classic.get_json_web_token_configurations(data_type: str = 'json') Union[dict, str]

Returns all JSON web token configurations in JSON or XML

Parameters:

data_type – json or dict

Returns:

All JSON web token configurations in JSON or XML


Classic.get_json_web_token_configuration(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Return a JSON web token configuration by ID in either JSON or XML

Parameters:
  • id – JSON web token configuration ID

  • data_type – json or xml

Returns:

JSON web token configuration in JSON or XML


Classic.create_json_web_token_configuration(data: str, id: Union[int, str] = 0) str

Creates a JSON web token configuration by ID with XML data

Parameters:
  • data – XML data to update JSON web token configuration with. For syntax information view Jamf’s documentation.

  • id – JSON web token configuration ID, use 0 for next available ID

Returns:

New JSON web token configuration information in XML


Classic.update_json_web_token_configuration(data: str, id: Union[int, str]) str

Updates an existing JSON web token configuration by ID with XML data

Parameters:
  • data – XML data to update JSON web token configuration with. For syntax information view Jamf’s documentation.

  • id – JSON web token configuration ID

Returns:

Updated JSON web token configuration information in XML


Classic.delete_json_web_token_configuration(id: Union[int, str]) str

Deletes a JSON web token configuration by ID with XML data

Parameters:

id – Json web token configuration ID

Returns:

Deleted JSON web token configuration information in XML


ldapservers

Classic.get_ldap_servers(data_type='json') Union[dict, str]

Returns all LDAP servers in JSON or XML

Parameters:

data_type – json or xml

Returns:

All LDAP servers in JSON or XML


Classic.get_ldap_server(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on one LDAP server by ID or name in JSON or XML

Parameters:
  • id – LDAP server ID

  • name – LDAP server name

Returns:

LDAP server information in JSON or XML


Classic.get_ldap_server_user(user: str, id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns information for matching users for an LDAP server by ID or name in JSON or XML

Parameters:
  • user – LDAP server user

  • id – LDAP server ID

  • name – LDAP server name

  • data_type – json or xml

Returns:

LDAP server user information in JSON or XML


Classic.get_ldap_server_group(group: str, id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns information for matching groups for an LDAP server by ID or name in JSON or XML

Parameters:
  • group – LDAP server group

  • id – LDAP server ID

  • name – LDAP server name

  • data_type – json or xml

Returns:

LDAP server group information in JSON or XML


Classic.get_ldap_server_group_user(group: str, users: List[str], id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns information about user membership in a group for an LDAP server by ID or name in JSON or XML

Parameters:
  • group – LDAP server group

  • users – Users to search for in the group, in a list of strings (e.g. [“nameone”, “nametwo”])

  • id – LDAP server ID

  • name – LDAP server name

  • data_type – json or xml

Returns:

LDAP server group user information in JSON or XML


Classic.create_ldap_server(data: str, id: Union[int, str] = 0) str

Creates a new LDAP server by ID or name with XML data

Parameters:
  • data – XML data to create LDAP server with. For syntax information view Jamf’s documentation.

  • id – LDAP server ID, set to 0 for next available ID

Returns:

New LDAP server information in XML


Classic.update_ldap_server(data: str, id: Union[int, str] = None, name: str = None) str

Updates an existing LDAP server by ID or name with XML data

Parameters:
  • data – XML data to update LDAP server with. For syntax information view Jamf’s documentation.

  • id – LDAP server ID

  • name – LDAP server name

Returns:

Updated LDAP server information in XML


Classic.delete_ldap_server(id: Union[int, str] = None, name: str = None) str

Deletes an LDAP server by ID or name

Parameters:
  • id – LDAP server ID

  • name – LDAP server name

Returns:

Deleted LDAP server information in XML


licensedsoftware

Classic.get_licensed_software_all(data_type: str = 'json') Union[dict, str]

Returns all licensed software in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All licensed software in JSON or XML


Classic.get_licensed_software(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific licensed software by either ID or name in JSON or XML.

Parameters:
  • id – Licensed software ID

  • name – Licensed software name

  • data_type – json or xml

Returns:

Licensed software information in JSON or XML


Classic.create_licensed_software(data: str, id: Union[int, str] = 0) str

Creates a licensed software with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the licensed software with. For syntax information view Jamf’s documentation.

  • id – ID of the new licensed software, use 0 for next available ID

Returns:

New licensed software information in XML


Classic.update_licensed_software(data: str, id: Union[int, str] = None, name: str = None) str

Updates a licensed software with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the licensed software with. For syntax information view Jamf’s documentation.

  • id – Licensed software ID

  • name – Licensed software name

Returns:

Updated licensed software information in XML


Classic.delete_licensed_software(id: Union[int, str] = None, name: str = None) str

Deletes a licensed software by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Licensed software ID

  • name – Licensed software name

Returns:

Deleted licensed software information in XML


logflush

Classic.create_log_flush(data: str) str

Deletes policy or computer logs based on XML data

Parameters:

data – XML data that defines which logs to flush. For syntax information view Jamf’s documentation.

Returns:

Flushed log information in XML


Classic.create_log_flush_interval(interval: str, id: Union[int, str] = None) str

Deletes policy logs based on an interval and optionally only a single log defined by ID.

Parameters:
  • interval – Supported values are a combination of [Zero, One, Two, Three, Six] and [Days, Weeks, Months, Years]. The values must be joined with a “+”, e.g. One+Weeks or Six+Months.

  • id – Policy ID

Returns:

Flushed log information in XML

Raises:

ValueError – No + in interval string


macapplications

Classic.get_mac_applications(data_type: str = 'json') Union[dict, str]

Returns all Mac applications in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All Mac applications in JSON or XML


Classic.get_mac_application(id: Union[int, str] = None, name: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific Mac application by either ID or name.

Parameters:
  • id – Mac application ID

  • name – Mac application name

  • subsets

    Subset(s) of data from the Mac application in a list of strings

    Options: - General - Scope - SelfService - VPPCodes - VPP

  • data_type – json or xml

Returns:

Mac application information in JSON or XML


Classic.create_mac_application(data: str, id: Union[int, str] = 0) str

Creates a Mac application with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the Mac application with. For syntax information view Jamf’s documentation.

  • id – ID of the new Mac application, use 0 for next available ID

Returns:

New Mac application information in XML


Classic.update_mac_application(data: str, id: Union[int, str] = None, name: str = None) str

Updates a Mac application with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the Mac application with. For syntax information view Jamf’s documentation.

  • id – Mac application ID

  • name – Mac application name

Returns:

Updated Mac application information in XML


Classic.delete_mac_application(id: Union[int, str] = None, name: str = None) str

Deletes a Mac application by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Mac application ID

  • name – Mac application name

Returns:

Deleted Mac application information in XML


managedpreferenceprofiles

Managed preference profiles have been deprecated by Apple and Jamf. I added the ability to get, update, and delete them as you can no do these through the GUI but omitted creation as they should not be used.


Classic.get_managed_preference_profiles(data_type: str = 'json') Union[dict, str]

Returns all managed preference profiles in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All managed preference profiles in JSON or XML


Classic.get_managed_preference_profile(id: Union[int, str] = None, name: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific managed preference profile by either ID or name.

Parameters:
  • id – Managed preference profile ID

  • name – Managed preference profile name

  • subsets

    Subset(s) of data from the managed preference profile in a list of strings

    Options: - General - Scope - Settings

  • data_type – json or xml

Returns:

Managed preference profile information in JSON or XML


Classic.update_managed_preference_profile(data: str, id: Union[int, str] = None, name: str = None) str

Updates a managed preference profile with the given XML data. Need to supply at least one identifier.

Parameters:
Returns:

Updated managed preference profile information in XML


Classic.delete_managed_preference_profile(id: Union[int, str] = None, name: str = None) str

Deletes a managed preference profile by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Managed preference profile ID

  • name – Managed preference profile name

Returns:

Deleted managed preference profile information in XML


mobiledeviceapplications

Classic.get_mobile_device_applications(data_type: str = 'json') Union[dict, str]

Returns all mobile device applications in either JSON or XML

Parameters:

data_type – json or xml

Returns:

All mobile device applications in JSON or XML


Classic.get_mobile_device_application(id: Union[int, str] = None, name: str = None, bundleid: str = None, version: str = None, subsets: List[str] = None, data_type='json')

Returns data on one mobile device application by ID, name, or bundle ID. When using bundle ID as the identifier you can also optionally filter by version. When using ID or name as an identifier you can filter the data by subsets. Need to supply at least one identifier.

Parameters:
  • id – Mobile device ID

  • name – Mobile device name

  • bundleid – Mobile device bundle ID

  • version – Mobile device version

  • subsets

    Subset(s) of data from the mobile device application in a list of strings

    Options: - General - Scope - SelfService - VPPCodes - VPP - AppConfiguration

  • data_type – json or xml

Returns:

Mobile device application information in JSON or XML


Classic.create_mobile_device_application(data: str, id: Union[int, str] = 0) str

Creates a mobile device application with XML data.

Parameters:
  • data – XML data to create mobile device application with. For syntax information view Jamf’s documentation.

  • id – Mobile device ID, set to 0 for next available ID

Returns:

New mobile device application information in XML


Classic.update_mobile_device_application(data: str, id: Union[int, str] = None, name: str = None, bundleid: str = None, version: str = None) str

Updates an existing mobile device application by ID, name, or bundleid. Bundleid can additionally be defined by version. Need to supply at least one identifier.

Parameters:
  • data – XML data to update mobile device application with. For syntax information view Jamf’s documentation.

  • id – Mobile device ID

  • name – Mobile device name

  • bundleid – Mobile device bundle ID

  • version – Mobile device version

Returns:

Updated mobile device application information in XML


Classic.delete_mobile_device_application(id: Union[int, str] = None, name: str = None, bundleid: str = None, version: str = None) str

Deletes an mobile device application by ID, name, or bundleid. bundleid can additionally be defined by version. Need to supply at least one identifier.

Parameters:
  • id – Mobile device ID

  • name – Mobile device name

  • bundleid – Mobile device bundle ID

  • version – Mobile device version

Returns:

Deleted mobile device application information in XML


mobiledevicecommands

Classic.get_mobile_device_commands(name: str = None, data_type='json') Union[dict, str]

Returns all mobile device commands in JSON or XML. Can optionally filter by name as well.

Parameters:
  • name – Mobile device command name e.g. UpdateInventory

  • data_type – json or xml

Returns:

All mobile device commands in JSON or XML


Classic.get_mobile_device_command(uuid: str, data_type: str = 'json') Union[dict, str]

Returns data on one mobile device command by UUID in JSON or XML

Parameters:
  • uuid – Mobile device command UUID

  • data_type – json or xml

Returns:

Mobile device command information in JSON or XML


Classic.create_mobile_device_command(command: str = None, ids: List[Union[int, str]] = None, device_name: str = None, lock_message: str = None, install_action: Union[int, str] = None, product_version: str = None, data: str = None)

Creates a mobile device command with either XML data or parameters

Parameters:
  • command

    Mobile device command to send to device

    Options and requirements: - BlankPush - ClearPasscode - ClearRestrictionsPassword - DeviceLocation Supervised and in lost mode - DeviceLock - DeviceName - DisableLostMode - EnableLostMode Supervised device - EraseDevice - PasscodeLockGracePeriod Shared iPad - PlayLostMostSound Supervised and in lost mode - RestartDevice Supervised device - ScheduleOSUpdate - Settings - SettingsDisableAppAnalytics - SettingsDisableBluetooth iOS 11.3+ and Supervised - SettingsEnablePersonalHotspot - SettingsDisablePersonalHotspot - SettingsDisableDataRoaming - SettingsDisableDiagnosticSubmission - SettingsEnableAppAnalytics - SettingsEnableBluetooth iOS 11.3+ and Supervised - SettingsEnableDataRoaming - SettingsEnableDiagnosticSubmission - SettingsEnableVoiceRoaming - ShutDownDevice Supervised device - UnmanageDevice - UpdateInventory

  • ids – List of mobile device IDs

  • device_name – Device name to set for the DeviceName command

  • lock_message – Lock message for the DeviceLock command

  • install_action

    Specify the behavior of the install.

    Possible integer values are: 1. (Download the update for users to install) 2. (Download and install the update, and restart devices after installation)

  • product_version – Specify the OS version of the update. Updating to a specific iOS version requires devices with iOS 11.3 or later. Updating to a specific tvOS version requires devices with tvOS 12.2 or later. install_action required by the ScheduleOSUpdate command if product_version is specified.

  • data – XML data to create a mobile device command with. For syntax information view Jamf’s documentation.

Returns:

New mobile device command information in XML

Raises:

InvalidParameterOptions – Raised if a parameter is set to an unrecognized value


mobiledeviceconfigurationprofiles

Classic.get_mobile_device_configuration_profiles(data_type: str = 'json') Union[dict, str]

Returns all mobile device configuration profiles in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All mobile device configuration profiles in JSON or XML


Classic.get_mobile_device_configuration_profile(id: Union[int, str] = None, name: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific mobile device configuration profile by either ID or name.

Parameters:
  • id – Mobile device configuration profile ID

  • name – Mobile device configuration profile name

  • subsets

    Subset(s) of data from the mobile device configuration profile in a list of strings

    Options: - General - Scope - SelfService

  • data_type – json or xml

Returns:

Mobile device configuration profile information in JSON or XML


Classic.create_mobile_device_configuration_profile(data: str, id: Union[int, str] = 0) str

Creates a mobile device configuration profile with the given XML data. Use ID 0 to use the next available ID. Payload of XML must be encoded to differentiate between the uploaded XML and the XML of the request body.

Parameters:
  • data – XML data to create the mobile device configuration profile with. For syntax information view Jamf’s documentation.

  • id – ID of the new mobile device configuration profile, use 0 for next available ID

Returns:

New mobile device configuration profile information in XML


Classic.update_mobile_device_configuration_profile(data: str, id: Union[int, str] = None, name: str = None) str

Updates a mobile device configuration profile with the given XML data. Need to supply at least one identifier. Payload of XML data must be encoded to differentiate between the uploaded XML and the XML of the request body.

Parameters:
  • data – XML data to update the mobile device configuration profile with. For syntax information view Jamf’s documentation.

  • id – Mobile device configuration profile ID

  • name – Mobile device configuration profile name

Returns:

Updated mobile device configuration profile information in XML


Classic.delete_mobile_device_configuration_profile(id: Union[int, str] = None, name: str = None) str

Deletes a mobile device configuration profile by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Mobile device configuration profile ID

  • name – Mobile device configuration profile name

Returns:

Deleted mobile device configuration profile information in XML


mobiledeviceenrollmentprofiles

Classic.get_mobile_device_enrollment_profiles(data_type: str = 'json') Union[dict, str]

Returns all mobile device enrollment profiles in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All mobile device enrollment profiles in JSON or XML


Classic.get_mobile_device_enrollment_profile(id: Union[int, str] = None, name: str = None, invitation: Union[int, str] = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific mobile device enrollment profile by either ID or name.

Parameters:
  • id – Mobile device enrollment profile ID

  • name – Mobile device enrollment profile name

  • invitation – Mobile device enrollment profile invitation

  • subsets

    Subset(s) of data from the mobile device enrollment profile in a list of strings

    Options: - General - Location - Purchasing - Attachments

  • data_type – json or xml

Returns:

Mobile device enrollment profile information in JSON or XML


Classic.create_mobile_device_enrollment_profile(data: str, id: Union[int, str] = 0) str

Creates a mobile device enrollment profile with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the mobile device enrollment profile with. For syntax information view Jamf’s documentation.

  • id – ID of the new mobile device enrollment profile, use 0 for next available ID

Returns:

New mobile device enrollment profile information in XML


Classic.update_mobile_device_enrollment_profile(data: str, id: Union[int, str] = None, name: str = None, invitation: Union[int, str] = None) str

Updates a mobile device enrollment profile with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the mobile device enrollment profile with. For syntax information view Jamf’s documentation.

  • id – Mobile device enrollment profile ID

  • name – Mobile device enrollment profile name

  • invitation – Mobile device enrollment profile invitation

Returns:

Updated mobile device enrollment profile information in XML


Classic.delete_mobile_device_enrollment_profile(id: Union[int, str] = None, name: str = None, invitation: Union[int, str] = None) str

Deletes a mobile device enrollment profile by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Mobile device enrollment profile ID

  • name – Mobile device enrollment profile name

  • invitation – Mobile device enrollment profile invitation

Returns:

Deleted mobile device enrollment profile information in XML


mobiledeviceextensionattributes

Classic.get_mobile_device_extension_attributes(data_type: str = 'json') Union[dict, str]

Returns all mobile device extension attributes in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All mobile device extension attributes in JSON or XML


Classic.get_mobile_device_extension_attribute(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific mobile device extension attribute by either ID or name in JSON or XML.

Parameters:
  • id – Mobile device extension attribute ID

  • name – Mobile device extension attribute name

  • data_type – json or xml

Returns:

Mobile device extension attribute information in JSON or XML


Classic.create_mobile_device_extension_attribute(data: str, id: Union[int, str] = 0) str

Creates a mobile device extension attribute with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the mobile device extension attribute with. For syntax information view Jamf’s documentation.

  • id – ID of the new mobile device extension attribute, use 0 for next available ID

Returns:

New mobile device extension attribute information in XML


Classic.update_mobile_device_extension_attribute(data: str, id: Union[int, str] = None, name: str = None) str

Updates a mobile device extension attribute with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the mobile device extension attribute with. For syntax information view Jamf’s documentation.

  • id – Mobile device extension attribute ID

  • name – Mobile device extension attribute name

Returns:

Updated mobile device extension attribute information in XML


Classic.delete_mobile_device_extension_attribute(id: Union[int, str] = None, name: str = None) str

Deletes a mobile device extension attribute by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Mobile device extension attribute ID

  • name – Mobile device extension attribute name

Returns:

Deleted mobile device extension attribute information in XML


mobiledevicegroups

Classic.get_mobile_device_groups(data_type: str = 'json') Union[dict, str]

Returns all mobile device groups in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All mobile device groups in JSON or XML


Classic.get_mobile_device_group(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific mobile device group by either ID or name in JSON or XML.

Parameters:
  • id – Mobile device group ID

  • name – Mobile device group name

  • data_type – json or xml

Returns:

Mobile device group information in JSON or XML


Classic.create_mobile_device_group(data: str, id: Union[int, str] = 0) str

Creates a mobile device group with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the mobile device group with. For syntax information view Jamf’s documentation.

  • id – ID of the new mobile device group, use 0 for next available ID

Returns:

New mobile device group information in XML


Classic.update_mobile_device_group(data: str, id: Union[int, str] = None, name: str = None) str

Updates a mobile device group with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the mobile device group with. For syntax information view Jamf’s documentation.

  • id – Mobile device group ID

  • name – Mobile device group name

Returns:

Updated mobile device group information in XML


Classic.delete_mobile_device_group(id: Union[int, str] = None, name: str = None) str

Deletes a mobile device group by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Mobile device group ID

  • name – Mobile device group name

Returns:

Deleted mobile device group information in XML


mobiledevicehistory

Classic.get_mobile_device_history(id: Union[int, str] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns mobile device history data with the given identifier and optional subsets. Need to supply at least one identifier.

Parameters:
  • id – Mobile device ID

  • name – Mobile device name

  • udid – Mobile device UDID

  • serialnumber – Mobile device serial number

  • macaddress – Mobile device MAC address,

  • subsets

    Subset(s) of data from the mobile device history in a list of strings

    Options: - General - ManagementCommands - UserLocation - Audits - Applications - Ebooks

  • data_type – json or xml

Returns:

Mobile device history information in JSON or XML


mobiledeviceinvitations

Classic.get_mobile_device_invitations(data_type: str = 'json') Union[dict, str]

Returns all mobile device invitation data in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All mobile device invitations in JSON or XML


Classic.get_mobile_device_invitation(id: Union[int, str] = None, invitation: Union[int, str] = None, data_type: str = 'json') Union[dict, str]

Returns information on a single mobile device invitation defined by either ID or invitation. Need to supply at least one identifier.

Parameters:
  • id – Mobile device invitation ID

  • invitation – Mobile device invitation invitation identifier (name) Typically a long int

  • data_type – json or xml

Returns:

Mobile device invitation information in JSON or XML


Classic.create_mobile_device_invitation(data: str, id: Union[int, str] = None, invitation: Union[int, str] = None) str

Creates a mobile device invitation defined by the XML data and either ID or invitation.

Parameters:
  • data – XML data

  • id – Mobile device invitation ID, use 0 for next available. For syntax information view Jamf’s documentation.

  • invitation – Mobile device invitation invitation identifier, use 0 for next available

Returns:

New mobile device invitation information in XML


Classic.delete_mobile_device_invitation(id: Union[int, str] = None, invitation: Union[int, str] = None) str

Deletes a mobile device invitation by either ID or invitation identifiers. Need to supply at least one identifier.

Parameters:
  • id – Mobile device invitation ID

  • invitation – Mobile device invitation invitation identifier (name) Typically a long int

Returns:

Deleted mobile device invitation information in XML


mobiledeviceprovisioningprofiles

Classic.get_mobile_device_provisioning_profiles(data_type: str = 'json') Union[dict, str]

Returns all mobile device provisioning profiles in JSON or XML

Parameters:

data_type – json or xml

Returns:

All mobile device provisioning profiles in JSON or XML


Classic.get_mobile_device_provisioning_profile(id: Union[int, str] = None, name: str = None, uuid: str = None, data_type: str = 'json') Union[dict, str]

Returns data on one mobile device provisioning profile in JSON or XML by ID, name, or UUID. Need to supply at least one identifier.

Parameters:
  • id – Mobile device provisioning profile ID

  • name – Mobile device provisioning profile name

  • uuid – Mobile device provisioning profile UUID

  • data_type – json or xml

Returns:

Mobile device provisioning profile information in JSON or XML


Classic.create_mobile_device_provisioning_profile(data: str, id: Union[int, str] = None, name: str = None, uuid: str = None) str

Creates a mobile device provisioning profile with XML data by ID, name, or UUID. Need to supply at least one identifier.

Parameters:
  • data – XML data configuration for mobile device provisioning profile. For syntax information view Jamf’s documentation.

  • id – Mobile device provisioning profile ID, set to 0 for next available

  • name – Mobile device provisioning profile name

  • uuid – Mobile device provisioning profile UUID

Returns:

New mobile device provisioning profile information in XML


Classic.update_mobile_device_provisioning_profile(data: str, id: Union[int, str] = None, name: str = None, uuid: str = None) str

Updates a mobile device provisioning profile with XML data by ID, name, or UUID. Need to supply at least one identifier.

Parameters:
  • data – XML data configuration for mobile device provisioning profile. For syntax information view Jamf’s documentation.

  • id – Mobile device provisioning profile ID, set to 0 for next available

  • name – Mobile device provisioning profile name

  • uuid – Mobile device provisioning profile UUID

Returns:

Updated mobile device provisioning profile information in XML


Classic.delete_mobile_device_provisioning_profile(id: Union[int, str] = None, name: str = None, uuid: str = None) Union[dict, str]

Deletes a mobile device provisioning profile by ID, name, or UUID. Need to supply at least one identifier.

Parameters:
  • id – Mobile device provisioning profile ID

  • name – Mobile device provisioning profile name

  • uuid – Mobile device provisioning profile UUID

  • data_type – json or xml

Returns:

Deleted mobile device provisioning profile information in XML


mobiledevices

Classic.get_mobile_devices(match: str = None, data_type: str = 'json') Union[dict, str]

Returns all mobile devices from a JPS instance in either JSON or XML. You can pass the match param to get all mobile devices that match your search criteria.

Parameters:
  • match – String to search mobile devices

  • data_type – json or xml

Returns:

All mobile devices in JSON or XML


Classic.get_mobile_device(id: Union[str, int] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None, subsets: List[str] = None, data_type: str = 'json')

Returns information on a mobile device with given identifier in either JSON or XML. You can specify the return of a subset of the data by defining subset as a list of the subsets that you want. Need to supply at least one identifier.

Parameters:
  • id – Mobile device ID

  • name – Mobile device name

  • udid – Mobile device UDID

  • serialnumber – Mobile device serial number

  • macaddress – Mobile device MAC address

  • subsets

    Subset(s) of data from the mobile device in a list of strings

    Options: - General - Location - Purchasing - Applications - Security - Network - Certifications - ConfigurationProfiles - ProvisioningProfiles - MobileDeviceGroups - ExtensionAttributes

  • data_type – json or xml

Returns:

Mobile device information in JSON or XML


Classic.create_mobile_device(data: str, id: Union[str, int] = 0) str

Creates a mobile device with the given ID and information defined in XML data.

Parameters:
  • data – XML data to create the mobile device. For syntax information view Jamf’s documentation.

  • id – Mobile device ID, set to 0 for next available ID

Returns:

New mobile device information in XML


Classic.update_mobile_device(data: str, id: Union[str, int] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None) str

Updates information on a mobile device with given identifier. Need to supply at least one identifier.

Parameters:
  • data – XML string to update the Mobile device with. For syntax information view Jamf’s documentation.

  • id – Mobile device ID

  • name – Mobile device name

  • udid – Mobile device UDID

  • serialnumber – Mobile device serial number

  • macaddress – Mobile device MAC address

Returns:

Updated mobile device information in XML


Classic.delete_mobile_device(id: Union[str, int] = None, name: str = None, udid: str = None, serialnumber: str = None, macaddress: str = None) str

Deletes a mobile device with given identifier. Need to supply at least one identifier.

Parameters:
  • id – Mobile device ID

  • name – Mobile device name

  • udid – Mobile device UDID

  • serialnumber – Mobile device serial number

  • macaddress – Mobile device MAC address

Returns:

Deleted mobile device information in XML


networksegments

Classic.get_network_segments(data_type: str = 'json') Union[dict, str]

Returns all network segments in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All network segments in JSON or XML


Classic.get_network_segment(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific network segment by either ID or name in JSON or XML.

Parameters:
  • id – network segment ID

  • name – network segment name

  • data_type – json or xml

Returns:

Network segment information in JSON or XML


Classic.create_network_segment(data: str, id: Union[int, str] = 0) str

Creates a network segment with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the network segment with. For syntax information view Jamf’s documentation.

  • id – ID of the new network segment, use 0 for next available ID

Returns:

New network segment information in XML


Classic.update_network_segment(data: str, id: Union[int, str] = None, name: str = None) str

Updates a network segment with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the network segment with. For syntax information view Jamf’s documentation.

  • id – network segment ID

  • name – network segment name

Returns:

Updated network segment information in XML


Classic.delete_network_segment(id: Union[int, str] = None, name: str = None) str

Deletes a network segment by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – network segment ID

  • name – network segment name

Returns:

Deleted network segment information in XML


osxconfigurationprofiles

Classic.get_osx_configuration_profiles(data_type: str = 'json') Union[dict, str]

Returns all OSX configuration profiles in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All OSX configuration profiles in JSON or XML


Classic.get_osx_configuration_profile(id: Union[int, str] = None, name: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific OSX configuration profile by either ID or name.

Parameters:
  • id – OSX configuration profile ID

  • name – OSX configuration profile name

  • subsets

    Subset(s) of data from the OSX configuration profile in a list of strings

    Options: - General - Scope - SelfService

  • data_type – json or xml

Returns:

OSX configuration profile information in JSON or XML


Classic.create_osx_configuration_profile(data: str, id: Union[int, str] = 0) str

Creates a OSX configuration profile with the given XML data. Use ID 0 to use the next available ID. Payload of XML must be encoded to differentiate between the uploaded XML and the XML of the request body

Parameters:
  • data – XML data to create the OSX configuration profile with. For syntax information view Jamf’s documentation.

  • id – ID of the new OSX configuration profile, use 0 for next available ID

Returns:

New OSX configuration profile in XML


Classic.update_osx_configuration_profile(data: str, id: Union[int, str] = None, name: str = None) str

Updates a OSX configuration profile with the given XML data. Need to supply at least one identifier. Payload of XML data must be encoded to differentiate between the uploaded XML and the XML of the request body

Parameters:
  • data – XML data to update the OSX configuration profile with. For syntax information view Jamf’s documentation.

  • id – OSX configuration profile ID

  • name – OSX configuration profile name

Returns:

Updated OSX configuration profile in XML


Classic.delete_osx_configuration_profile(id: Union[int, str] = None, name: str = None) str

Deletes a OSX configuration profile by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – OSX configuration profile ID

  • name – OSX configuration profile name

Returns:

Deleted OSX configuration profile in XML


packages

Classic.get_packages(data_type: str = 'json') Union[dict, str]

Returns all packages in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All packages in JSON or XML


Classic.get_package(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific package by either ID or name in JSON or XML.

Parameters:
  • id – Package ID

  • name – Package name

  • data_type – json or xml

Returns:

Package information in JSON or XML


Classic.create_package(data: str, id: Union[int, str] = 0) str

Creates a package with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the package with. For syntax information view Jamf’s documentation.

  • id – ID of the new package, use 0 for next available ID

Returns:

New package information in XML


Classic.update_package(data: str, id: Union[int, str] = None, name: str = None) str

Updates a package with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the package with. For syntax information view Jamf’s documentation.

  • id – Package ID

  • name – Package name

Returns:

Updated package information in XML


Classic.delete_package(id: Union[int, str] = None, name: str = None) str

Deletes a package by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Package ID

  • name – Package name

Returns:

Deleted package information in XML


patchavailabletitles

Classic.get_patch_available_titles(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Returns all available patch titles from a source by ID in JSON or XML

Parameters:
  • id – External or internal patch source ID

  • data_type – json or xml

Returns:

All available patch titles in JSON or XML


patches

All endpoints deprecated, use /patchsoftwaretitles or /patchreports


patchexternalsources

Classic.get_patch_external_sources(data_type: str = 'json') Union[dict, str]

Returns all external patch sources in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All external patch sources in JSON or XML


Classic.get_patch_external_source(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific external patch source by either ID or name in JSON or XML.

Parameters:
  • id – External patch source ID

  • name – External patch source name

  • data_type – json or xml

Returns:

External patch source information in JSON or XML


Classic.create_patch_external_source(data: str, id: Union[int, str] = None, name: str = None) str

Creates an external patch source with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the external patch source with. For syntax information view Jamf’s documentation.

  • id – ID of the new external patch source, use 0 for next available ID

  • name – External patch source name

Returns:

New external patch source information in XML


Classic.update_patch_external_source(data: str, id: Union[int, str] = None, name: str = None) str

Updates a external patch source with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the external patch source with. For syntax information view Jamf’s documentation.

  • id – External patch source ID

  • name – External patch source name

Returns:

Updated external patch source information in XML


Classic.delete_patch_external_source(id: Union[int, str]) str

Deletes an external patch source by ID.

Parameters:

id – External patch source ID

Returns:

Deleted external patch source information in XML


patchinternalsources

Classic.get_patch_internal_sources(data_type: str = 'json') Union[dict, str]

Returns all internal patch sources in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All internal patch sources in JSON or XML


Classic.get_patch_internal_source(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific internal patch source by either ID or name in JSON or XML.

Parameters:
  • id – Internal patch source ID

  • name – Internal patch source name

  • data_type – json or xml

Returns:

Internal patch source information in JSON or XML


patchpolicies

Classic.get_patch_policies(data_type: str = 'json') Union[dict, str]

Deprecated since version 1.4.1.

Returns all patch policies in JSON or XML

Parameters:

data_type – json or xml

Returns:

All patch policies in JSON or XML


Classic.get_patch_policy(id: Union[int, str] = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on one patch policy by ID or software title ID in JSON or XML

Parameters:
  • id – Software title ID

  • subsets

    Subset(s) of data from the patch policy in a list of strings

    Options: - General - Scope - UserInteraction

  • data_type – json or xml

Returns:

Patch policy information in JSON or XML


Classic.create_patch_policy(data: str, id: Union[str, int] = 0) str

Creates a patch policy by ID with XML data

Parameters:
  • data – XML data to create patch policy with. For syntax information view Jamf’s documentation.

  • id – Patch policy ID, set to 0 for next available

Returns:

New patch policy information in XML


Classic.update_patch_policy(data: str, id: Union[str, int] = 0) str

Updates a patch policy by ID with XML data

Parameters:
  • data – XML data to update patch policy with. For syntax information view Jamf’s documentation.

  • id – Patch policy ID, set to 0 for next available

Returns:

Updated patch policy information in XML


Classic.delete_patch_policy(id: Union[int, str]) str

Deletes a patch policy by ID.

Parameters:

id – Patch policy ID

Returns:

Deleted patch policy information in XML


patchreports

Classic.get_patch_report(id: Union[int, str], version: str = None, data_type: str = 'json') Union[dict, str]

Returns data one a patch report filtered by ID and optionally version in JSON or XML

Parameters:
  • id – Patch software title ID to filter by

  • version – Version number to filter by

  • data_type – json or xml

Returns:

Patch report information in JSON or XML


patchsoftwaretitles

Classic.get_patch_software_titles(data_type: str = 'json') Union[dict, str]

Returns all patch software titles in JSON or XML

Parameters:

data_type – json or xml

Returns:

All patch software titles in JSON or XML


Classic.get_patch_software_title(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Returns data on one patch software title in JSON or XML

Parameters:
  • id – Patch software title ID

  • data_type – json or xml

Returns:

Patch software title information in JSON or XML


Classic.create_patch_software_title(data: str, id: Union[int, str] = 0) str

Creates a patch software title by ID with XML data

Parameters:
  • data – XML data to create the patch software title with. For syntax information view Jamf’s documentation.

  • id – Patch software title ID, set to 0 for next available ID

Returns:

New patch software title information in XML


Classic.update_patch_software_title(data: str, id: Union[int, str]) str

Updates a patch software title by ID with XML data

Parameters:
  • data – XML data to update the patch software title with. For syntax information view Jamf’s documentation.

  • id – Patch software title ID

Returns:

Updated patch software title information in XML


Classic.delete_patch_software_title(id: Union[int, str]) str

Deletes a patch software title by ID

Parameters:

id – Patch software title ID

Returns:

Deleted patch software title information in XML


peripherals

Peripherals were deprecated by Jamf so I’ve omitted the creation endpoint, you can still get, update, and delete so that you can change or delete them.


Classic.get_peripherals(data_type: str = 'json') Union[dict, str]

Returns all peripherals in JSON or XML

Parameters:

data_type – json or xml

Returns:

All peripherals in JSON or XML


Classic.get_peripheral(id: Union[int, str] = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on one Peripheral by ID in JSON or XML

Parameters:
  • id – Peripheral ID

  • subsets

    Subset(s) of data from the peripheral in a list of strings

    Options: - General - Location - Purchasing - Attachments

  • data_type – json or xml

Returns:

Peripheral information in JSON or XML


Classic.update_peripheral(data: str, id: Union[int, str] = 0) str

Updates a peripheral by ID with XML data

Parameters:
  • data – XML data to update peripheral with. For syntax information view Jamf’s documentation.

  • id – Peripheral ID, set to 0 for next available

Returns:

Updated peripheral information in XML


Classic.delete_peripheral(id: Union[int, str]) str

Deletes a peripheral by ID.

Parameters:

id – Peripheral ID

Returns:

Deleted peripheral information in XML


peripheraltypes

Peripherals were deprecated by Jamf so I’ve omitted the creation endpoint, you can still get, update, and delete are still available so that you can change or delete them.


Classic.get_peripheral_types(data_type: str = 'json') Union[dict, str]

Returns all peripheral types in JSON or XML

Parameters:

data_type – json or xml

Returns:

All peripheral types in JSON or XML


Classic.get_peripheral_type(id: Union[int, str] = None, data_type: str = 'json') Union[dict, str]

Returns data on one peripheral type by ID or peripheral type ID in JSON or XML

Parameters:
  • id – Peripheral type ID

  • data_type – json or xml

Returns:

Peripheral type information in JSON or XML


Classic.update_peripheral_type(data: str, id: Union[int, str] = 0) str

Updates a peripheral type by ID with XML data

Parameters:
  • data – XML data to update peripheral type with. For syntax information view Jamf’s documentation.

  • id – Peripheral type ID, set to 0 for next available

Returns:

Updated peripheral type information in XML


Classic.delete_peripheral_type(id: Union[int, str]) str

Deletes a peripheral type by ID.

Parameters:

id – Peripheral type ID

Returns:

Deleted peripheral type information in XML


policies

Classic.get_policies(category: str = None, createdby: str = None, data_type: str = 'json') Union[dict, str]

Returns all policies in either JSON or XML.

Parameters:
  • category – Category may be specified by id or name, or ‘None’ for policies with no category

  • createdby – The value ‘casper’ refers to Casper Remote. The value ‘jss’ refers to policies created in the GUI or via the API.

  • data_type – json or xml

Returns:

All policies in JSON or XML


Classic.get_policy(id: Union[int, str] = None, name: str = None, subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific policy by either ID or name.

Parameters:
  • id – Policy ID

  • name – Policy name

  • subsets

    Subset(s) of data from the policy in a list of strings

    Options: - General - Scope - SelfService - PackageConfiguration - Scripts - Printers - DockItems - AccountMaintenance - Reboot - Maintenance - FilesProcesses - UserInteraction - DiskEncryption

  • data_type – json or xml

Returns:

Policy information in JSON or XML


Classic.create_policy(data: str, id: Union[int, str] = 0) str

Creates a policy with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the policy with. For syntax information view Jamf’s documentation.

  • id – ID of the new policy, use 0 for next available ID

Returns:

New policy information in XML


Classic.update_policy(data: str, id: Union[int, str] = None, name: str = None) str

Updates a policy with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the policy with. For syntax information view Jamf’s documentation.

  • id – Policy ID

  • name – Policy name

Returns:

Updated policy information in XML


Classic.delete_policy(id: Union[int, str] = None, name: str = None) str

Deletes a policy by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Policy ID

  • name – Policy name

Returns:

Deleted policy information in XML


printers

Classic.get_printers(data_type: str = 'json') Union[dict, str]

Returns all printers in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All printers in JSON or XML


Classic.get_printer(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific printer by either ID or name in JSON or XML.

Parameters:
  • id – Printer ID

  • name – Printer name

  • data_type – json or xml

Returns:

Printer information information in JSON or XML


Classic.create_printer(data: str, id: Union[int, str] = 0) str

Creates a printer with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the printer with. For syntax information view Jamf’s documentation.

  • id – ID of the new printer, use 0 for next available ID

Returns:

New printer information in XML


Classic.update_printer(data: str, id: Union[int, str] = None, name: str = None) str

Updates a printer with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the printer with. For syntax information view Jamf’s documentation.

  • id – Printer ID

  • name – Printer name

Returns:

Updated printer information in XML


Classic.delete_printer(id: Union[int, str] = None, name: str = None) str

Deletes a printer by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Printer ID

  • name – Printer name

Returns:

Deleted printer information in XML


removablemacaddresses

Classic.get_removable_mac_addresses(data_type: str = 'json') Union[dict, str]

Returns all removable MAC addresses in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All removable MAC addresses in JSON or XML


Classic.get_removable_mac_address(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific removable MAC address by either ID or name in JSON or XML.

Parameters:
  • id – removable MAC address ID

  • name – removable MAC address name

  • data_type – json or xml

Returns:

Removable MAC address information in JSON or XML


Classic.create_removable_mac_address(data: str, id: Union[int, str] = 0) str

Creates a removable MAC address with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the removable MAC address with. For syntax information view Jamf’s documentation.

  • id – ID of the new removable MAC address, use 0 for next available ID

Returns:

New removable MAC address information in XML


Classic.update_removable_mac_address(data: str, id: Union[int, str] = None, name: str = None) str

Updates a removable MAC address with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the removable MAC address with. For syntax information view Jamf’s documentation.

  • id – removable MAC address ID

  • name – removable MAC address name

Returns:

Updated removable MAC address information in XML


Classic.delete_removable_mac_address(id: Union[int, str] = None, name: str = None) str

Deletes a removable MAC address by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – removable MAC address ID

  • name – removable MAC address name

Returns:

Deleted removable MAC address in XML


restrictedsoftware

Classic.get_restricted_software_all(data_type: str = 'json') Union[dict, str]

Returns all restricted software in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All restricted software in JSON or XML


Classic.get_restricted_software(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific restricted software by either ID or name in JSON or XML.

Parameters:
  • id – Restricted software ID

  • name – Restricted software name

  • data_type – json or xml

Returns:

Restricted software information in JSON or XML


Classic.create_restricted_software(data: str, id: Union[int, str] = 0) str

Creates a restricted software with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the restricted software with. For syntax information view Jamf’s documentation.

  • id – ID of the new restricted software, use 0 for next available ID

Returns:

New restricted software information in XML


Classic.update_restricted_software(data: str, id: Union[int, str] = None, name: str = None) str

Updates a restricted software with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the restricted software with. For syntax information view Jamf’s documentation.

  • id – Restricted software ID

  • name – Restricted software name

Returns:

Updated restricted software information in XML


Classic.delete_restricted_software(id: Union[int, str] = None, name: str = None) str

Deletes a restricted software by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Restricted software ID

  • name – Restricted software name

Returns:

Deleted restricted software information in XML


savedsearches

Deprecated - use advancedcomputersearches, advancedmobiledevicesearches, and advancedusersearches instead.


scripts

Classic.get_scripts(data_type: str = 'json') Union[dict, str]

Returns all scripts in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All scripts in JSON or XML


Classic.get_script(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific script by either ID or name in JSON or XML.

Parameters:
  • id – Script ID

  • name – Script name

  • data_type – json or xml

Returns:

Script information in JSON or XML


Classic.create_script(data: str, id: Union[int, str] = 0) str

Creates a script with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the script with. For syntax information view Jamf’s documentation.

  • id – ID of the new script, use 0 for next available ID

Returns:

New script information in XML


Classic.update_script(data: str, id: Union[int, str] = None, name: str = None) str

Updates a script with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the script with. For syntax information view Jamf’s documentation.

  • id – Script ID

  • name – Script name

Returns:

Updated script information in XML


Classic.delete_script(id: Union[int, str] = None, name: str = None) str

Deletes a script by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Script ID

  • name – Script name

Returns:

Deleted script information in XML


sites

Classic.get_sites(data_type: str = 'json') Union[dict, str]

Returns all sites in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All sites in JSON or XML


Classic.get_site(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific site by either ID or name in JSON or XML.

Parameters:
  • id – Site ID

  • name – Site name

  • data_type – json or xml

Returns:

Site information information in JSON or XML


Classic.create_site(data: str, id: Union[int, str] = 0) str

Creates a site with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the site with. For syntax information view Jamf’s documentation.

  • id – ID of the new site, use 0 for next available ID

Returns:

New site information in XML


Classic.update_site(data: str, id: Union[int, str] = None, name: str = None) str

Updates a site with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the site with. For syntax information view Jamf’s documentation.

  • id – Site ID

  • name – Site name

Returns:

Updated site information in XML


Classic.delete_site(id: Union[int, str] = None, name: str = None) str

Deletes a site by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Site ID

  • name – Site name

Returns:

Deleted site information in XML


smtpserver

Classic.get_smtp_server(data_type: str = 'json') Union[dict, str]

Returns information on the SMTP server for the JPS server

Parameters:

data_type – json or xml

Returns:

SMTP server information in JSON or XML


Classic.update_smtp_server(data: str) str

Updates the SMTP server info on the JPS server with XML data.

Parameters:

data – XML data to update the smtp server with. For syntax information view Jamf’s documentation.

Returns:

Updated SMTP server information in XML


softwareupdateservers

Classic.get_software_update_servers(data_type: str = 'json') Union[dict, str]

Returns all software update servers in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All software update server in JSON or XML


Classic.get_software_update_server(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific software update server by either ID or name in JSON or XML.

Parameters:
  • id – Software update server ID

  • name – Software update server name

  • data_type – json or xml

Returns:

Software update server information in JSON or XML


Classic.create_software_update_server(data: str, id: Union[int, str] = 0) str

Creates a software update server with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the software update server with. For syntax information view Jamf’s documentation.

  • id – ID of the new software update server, use 0 for next available ID

Returns:

New software update server information in XML


Classic.update_software_update_server(data: str, id: Union[int, str] = None, name: str = None) str

Updates a software update server with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the software update server with. For syntax information view Jamf’s documentation.

  • id – Software update server ID

  • name – Software update server name

Returns:

Updated software update server information in XML


Classic.delete_software_update_server(id: Union[int, str] = None, name: str = None) str

Deletes a software update server by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Software update server ID

  • name – Software update server name

Returns:

Deleted software update server information in XML


userextensionattributes

Classic.get_user_extension_attributes(data_type: str = 'json') Union[dict, str]

Returns all user extension attributes in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All user extension attributes in JSON or XML


Classic.get_user_extension_attribute(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific user extension attribute by either ID or name in JSON or XML.

Parameters:
  • id – User extension attribute ID

  • name – User extension attribute name

  • data_type – json or xml

Returns:

User extension attribute information in JSON or XML


Classic.create_user_extension_attribute(data: str, id: Union[int, str] = 0) str

Creates a user extension attribute with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the user extension attribute with. For syntax information view Jamf’s documentation.

  • id – ID of the new user extension attribute, use 0 for next available ID

Returns:

New user extension attribute information in XML


Classic.update_user_extension_attribute(data: str, id: Union[int, str] = None, name: str = None) str

Updates a user extension attribute with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the user extension attribute with. For syntax information view Jamf’s documentation.

  • id – User extension attribute ID

  • name – User extension attribute name

Returns:

Updated user extension attribute information in XML


Classic.delete_user_extension_attribute(id: Union[int, str] = None, name: str = None) str

Deletes a user extension attribute by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – User extension attribute ID

  • name – User extension attribute name

Returns:

Deleted user extension attribute information in XML


usergroups

Classic.get_user_groups(data_type: str = 'json') Union[dict, str]

Returns all user groups in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All user groups in JSON or XML


Classic.get_user_group(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific user group by either ID or name in JSON or XML.

Parameters:
  • id – User group ID

  • name – User group name

  • data_type – json or xml

Returns:

User group information in JSON or XML


Classic.create_user_group(data: str, id: Union[int, str] = 0) str

Creates a user group with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the user group with. For syntax information view Jamf’s documentation.

  • id – ID of the new user group, use 0 for next available ID

Returns:

New user group information in XML


Classic.update_user_group(data: str, id: Union[int, str] = None, name: str = None) str

Updates a user group with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the user group with. For syntax information view Jamf’s documentation.

  • id – User group ID

  • name – User group name

Returns:

Update user group information in XML


Classic.delete_user_group(id: Union[int, str] = None, name: str = None) str

Deletes a user group by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – User group ID

  • name – User group name

Returns:

Deleted user group information in XML


users

Classic.get_users(data_type: str = 'json') Union[dict, str]

Returns all users in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All users in JSON or XML


Classic.get_user(id: Union[int, str] = None, name: str = None, email: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific user by either ID or name in JSON or XML.

Parameters:
  • id – User ID

  • name – User name

  • email – User email

  • data_type – json or xml

Returns:

User information in JSON or XML


Classic.create_user(data: str, id: Union[int, str] = 0) str

Creates a user with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the user with. For syntax information view Jamf’s documentation.

  • id – ID of the new user, use 0 for next available ID

Returns:

New user information in XML


Classic.update_user(data: str, id: Union[int, str] = None, name: str = None, email: str = None) str

Updates a user with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the user with. For syntax information view Jamf’s documentation.

  • id – User ID

  • name – User name

  • email – User email

Returns:

Updated user information in XML


Classic.delete_user(id: Union[int, str] = None, name: str = None, email: str = None) str

Deletes a user by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – User ID

  • name – User name

  • email – User email

Returns:

Deleted user information in XML


vppaccounts

Classic.get_vpp_accounts(data_type: str = 'json') Union[dict, str]

Returns all VPP accounts in JSON or XML

Parameters:

data_type – json or xml

Returns:

All VPP accounts in JSON or XML


Classic.get_vpp_account(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Returns data on one VPP account in JSON or XML

Parameters:
  • id – VPP account ID

  • data_type – json or xml

Returns:

VPP account information in JSON or XML


Classic.create_vpp_account(data: str, id: Union[int, str] = 0) str

Creates a VPP account by ID with XML data

Parameters:
  • data – XML data to create the VPP account with. For syntax information view Jamf’s documentation.

  • id – VPP account ID, set to 0 for next available ID

Returns:

New VPP account information in XML


Classic.update_vpp_account(data: str, id: Union[int, str]) str

Updates a VPP account by ID with XML data

Parameters:
  • data – XML data to update the VPP account with. For syntax information view Jamf’s documentation.

  • id – VPP account ID

Returns:

Updated VPP account information in XML


Classic.delete_vpp_account(id: Union[int, str]) str

Deletes a VPP account by ID

Parameters:

id – VPP account ID

Returns:

Deleted VPP account information in XML


vppassignments

Classic.get_vpp_assignments(data_type: str = 'json') Union[dict, str]

Returns all VPP assignments in JSON or XML

Parameters:

data_type – json or xml

Returns:

All VPP assignments in JSON or XML


Classic.get_vpp_assignment(id: Union[int, str], data_type: str = 'json') Union[dict, str]

Returns data on one VPP assignment in JSON or XML

Parameters:
  • id – VPP assignment ID

  • data_type – json or xml

Returns:

VPP assignment information in JSON or XML


Classic.create_vpp_assignment(data: str, id: Union[int, str] = 0) str

Creates a VPP assignment by ID with XML data

Parameters:
  • data – XML data to create the VPP assignment with. For syntax information view Jamf’s documentation.

  • id – VPP assignment ID, set to 0 for next available ID

Returns:

New VPP assignment in XML


Classic.update_vpp_assignment(data: str, id: Union[int, str]) str

Updates a VPP assignment by ID with XML data

Parameters:
  • data – XML data to update the VPP assignment with. For syntax information view Jamf’s documentation.

  • id – VPP assignment ID

Returns:

Updated VPP assignment information in XML


Classic.delete_vpp_assignment(id: Union[int, str]) str

Deletes a VPP assignment by ID

Parameters:

id – VPP assignment ID

Returns:

Deleted VPP assignment information in XML


vppinvitations

Classic.get_vpp_invitations(data_type: str = 'json') Union[dict, str]

Returns all VPP invitations in JSON or XML

Parameters:

data_type – json or xml

Returns:

All VPP invitations in JSON or XML


Classic.get_vpp_invitation(id: Union[int, str], subsets: List[str] = None, data_type: str = 'json') Union[dict, str]

Returns data on one VPP invitation in JSON or XML

Parameters:
  • id – VPP invitation ID

  • subsets

    Subset(s) of data from the VPP invitation in a list of strings

    Options: - General - Scope - InvitationUsages

  • data_type – json or xml

Returns:

VPP invitation information in JSON or XML


Classic.create_vpp_invitation(data: str, id: Union[int, str] = 0) str

Creates a VPP invitation by ID with XML data

Parameters:
  • data – XML data to create the VPP invitation with. For syntax information view Jamf’s documentation.

  • id – VPP invitation ID, set to 0 for next available ID

Returns:

New VPP invitation information in XML


Classic.update_vpp_invitation(data: str, id: Union[int, str]) str

Updates a VPP invitation by ID with XML data

Parameters:
  • data – XML data to update the VPP invitation with. For syntax information view Jamf’s documentation.

  • id – VPP invitation ID

Returns:

Updated VPP invitation information in XML


Classic.delete_vpp_invitation(id: Union[int, str]) str

Deletes a VPP invitation by ID

Parameters:

id – VPP invitation ID

Returns:

Deleted VPP invitation information in XML


webhooks

Classic.get_webhooks(data_type: str = 'json') Union[dict, str]

Returns all webhooks in either JSON or XML.

Parameters:

data_type – json or xml

Returns:

All webhooks in JSON or XML


Classic.get_webhook(id: Union[int, str] = None, name: str = None, data_type: str = 'json') Union[dict, str]

Returns data on a specific webhook by either ID or name in JSON or XML.

Parameters:
  • id – Webhook ID

  • name – Webhook name

  • data_type – json or xml

Returns:

Webhook information in JSON or XML


Classic.create_webhook(data: str, id: Union[int, str] = 0) str

Creates a webhook with the given XML data. Use ID 0 to use the next available ID.

Parameters:
  • data – XML data to create the webhook with. For syntax information view Jamf’s documentation.

  • id – ID of the new webhook, use 0 for next available ID.

Returns:

New webhook information in XML


Classic.update_webhook(data: str, id: Union[int, str] = None, name: str = None) str

Updates a webhook with the given XML data. Need to supply at least one identifier.

Parameters:
  • data – XML data to update the webhook with. For syntax information view Jamf’s documentation.

  • id – Webhook ID

  • name – Webhook name

Returns:

Updated information in XML


Classic.delete_webhook(id: Union[int, str] = None, name: str = None) str

Deletes a webhook by either ID or name. Need to supply at least one identifier.

Parameters:
  • id – Webhook ID

  • name – Webhook name

Returns:

Deleted webhook information in XML



Pro

activation-code

Pro.update_activation_code(data: dict) dict

Updates activation code with JSON data

Parameters:

data – JSON data to update activation code with. For syntax information view Jamf’s documentation.

Returns:

Updated activation code information in JSON


advanced-mobile-device-searches

Pro.get_advanced_mobile_device_searches() dict

Returns all advanced mobile device searches in JSON

Returns:

All advanced mobile device searches in JSON


Pro.get_advanced_mobile_device_search_criteria_choices(criteria: str, site: Union[int, str] = -1, contains: str = None) dict

Returns the valid choices of an advanced mobile device search criteria

Parameters:
  • criteria – Advanced mobile device search criteria, A list of potentially valid choices can be found by navigating to the Criteria page of the Advanced Mobile Device Search creation process.

  • site – JPS server site, use -1 for none

  • contains – Optionally filter by the criteria content

Returns:

Advanced mobile device search criteria choice information in JSON


Returns data on one advanced mobile device search criteria by ID

Parameters:

id – Advanced mobile device search ID

Returns:

Advanced mobile device search information in JSON


Creates an advanced mobile device search with JSON data

Parameters:

data – JSON data to create advanced mobile device search with. For syntax information view Jamf’s documentation.

Returns:

New advanced mobile device search information in JSON


Updates an advanced mobile device search with JSON data by ID

Parameters:
  • data – JSON data to update advanced mobile device search with. For syntax information view Jamf’s documentation.

  • id – Advanced mobile device search ID

Returns:

Updated advanced mobile device search information in JSON


Deletes an advanced mobile device search by ID or IDS, use id for a single device and ids to delete multiple

Parameters:
  • id – Advanced mobile device search ID

  • ids – List of advanced mobile device search IDs

Returns:

Success message stating that the advanced mobile device search was deleted


advanced-user-content-searches

Pro.get_advanced_user_content_searches() dict

Returns all advanced user content searches in JSON

Returns:

All advanced user content searches in JSON


Returns data on one advanced user content search in JSON

Parameters:

id – Advanced user content search ID

Returns:

Advanced user content search information in JSON


Creates an advanced user content search with JSON data

Parameters:

data – JSON data to create advanced user content search with. For syntax information view Jamf’s documentation.

Returns:

New advanced user content search information in JSON


Updates an advanced user content search with JSON data by ID

Parameters:
  • data – JSON data to update advanced user content search with. For syntax information view Jamf’s documentation.

  • id – Advanced user content search ID

Returns:

Updated advanced user content search information in JSON


Deletes an advances user content search by ID

Parameters:

id – Advanced user content search ID

Returns:

Success message stating that the advanced user content search was deleted


api-authentication

Only the get method is available here because the other endpoints will cause the current session to fail and break the API wrapper.


Pro.get_api_authentication() dict

Returns all the authorization details associated with the current API token

Returns:

API authentication information in JSON


api-integrations

Pro.get_api_integrations(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all Jamf Pro API integrations with search criteria in JSON

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Options: id, displayName.

    Example: [“id:desc”, “displayName:asc”]

  • filter

    Query in the RSQL format, allowing to filter app titles collection. Default filter is empty query - returning all results for the requested page.

    Options: id, displayName

    Example: ‘displayName==”IntegrationName”’

Returns:

All Jamf Pro API integrations in JSON


Pro.get_api_integration(id: Union[int, str]) dict

Returns specified API integration by ID

Parameters:

id – API integration ID

Returns:

API integration information in JSON


Pro.create_api_integration(data: dict) dict

Creates API integration with JSON data

Parameters:

data – JSON data to create API integration with. For syntax information view Jamf’s documentation.

Returns:

New API integration information in JSON


Pro.create_api_integration_client_credentials(id: Union[int, str]) dict

Creates client credentials for the specified API integration with JSON data

Parameters:

id – API integration ID

Returns:

New API integration client credentials in JSON


Pro.update_api_integration(data: dict, id: Union[int, str]) dict

Updates specified API integrations with JSON data by ID

Parameters:
  • data – JSON data to update API integration with. For syntax information view Jamf’s documentation.

  • id – API integration ID

Returns:

Updated API integration information in JSON


Pro.delete_api_integration(id: Union[int, str]) str

Deletes specified API integration by ID

Parameters:

id – API integration ID

Returns:

Success message stating that the API integration was deleted


api-role-privileges

Pro.get_api_role_privileges() dict

Returns all API role privileges in JSON

Returns:

All API role privileges in JSON


Returns the results of the search of the API role privileges in JSON

Parameters:
  • name – The partial or complete API role privilege name we are searching for

  • limit – Number to limit the results to, defaults to 15

Returns:

List of matching results of the API role privileges in JSON


api-roles

Pro.get_api_roles(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all API roles in JSON

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Options: id, displayName

    Example: [“id:desc”, “displayName:asc”]

  • filter

    Query in the RSQL format, allowing to filter app titles collection. Default filter is empty query - returning all results for the requested page.

    Options: id, displayName

    Example: ‘displayName==”myRole”’


Pro.get_api_role(id: Union[int, str]) dict

Returns specific API role in JSON by ID

Parameters:

id – API role ID

Returns:

API role information in JSON


Pro.create_api_role(data: dict) dict

Creates a new API role with JSON data

Parameters:

data – JSON data to create API role with. For syntax information view Jamf’s documentation.

Returns:

New API role information in JSON


Pro.update_api_role(data: dict, id: Union[int, str]) dict

Updates specific API role with JSON data by ID

Parameters:
  • data – JSON data to update API role with. For syntax information view Jamf’s documentation.

  • id – API role ID

Returns:

Updated API role information in JSON


Pro.delete_api_role(id: Union[int, str]) dict

Deletes specific API role by ID

Parameters:

id – API role ID

Returns:

Success message str stating that the API role was deleted


app-request-preview

Pro.get_app_request_settings() dict

Returns the app request settings in JSON

Returns:

App request settings information in JSON


Pro.get_app_request_form_input_fields() dict

Returns the app request form input fields in JSON

Returns:

All app request form input fields in JSON


Pro.get_app_request_form_input_field(id: Union[int, str]) dict

Returns specified app request form input field object by ID

Parameters:

id – App request form input field ID

Returns:

App request form input field information in JSON


Pro.create_app_request_form_input_field(data: dict) dict

Creates a app request form input field record with JSON data

Parameters:

data – JSON data to create the app request form input field with. For syntax information view Jamf’s documentation.

Returns:

New app request form input field information in JSON


Pro.update_app_request_settings(data: dict) dict

Updates the app request settings with JSON data

Parameters:

data – JSON data to update the app request settings with. For syntax information view Jamf’s documentation.

Returns:

Updated app request settings in JSON


Pro.update_app_request_form_input_field(data: dict, id: Union[int, str]) dict

Updates the specified app request form input field object by ID with JSON data

Parameters:
  • id – App request form input field ID

  • data – JSON data to update the app request form input field with. For syntax information view Jamf’s documentation.

Returns:

Updated app request form input field information in JSON


Pro.replace_app_request_form_input_fields(data: List[dict]) dict

Replaces all app request form input fields with JSON data

Parameters:

data – List of JSON dicts to replace all app request form input fields with. For syntax information view Jamf’s documentation.

Returns:

Replaced app request form input fields in JSON


Pro.delete_app_request_form_input_field(id: Union[int, str]) str

Deletes a specified app request form input field by ID

Parameters:

id – App request form input field ID

Returns:

Success message stating that the app request form input field was deleted


app-store-country-codes-preview

Pro.get_app_store_country_codes() dict

Returns a list of countries and the associated codes that can be use for the App Store locale

Returns:

All app store country codes in JSON


branding

Pro.get_branding_image(id: Union[int, str]) str

Downloads a Self Service branding image to the current user’s Downloads folder by ID

Parameters:

id – Self Service branding image ID

Returns:

Success message stating that the branding image was downloaded


buildings

Pro.get_buildings(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all buildings or search for sorted and paged buildings

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter buildings collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: name, streetAddress1, streetAddress2, city, stateProvince, zipPostalCode, country. This param can be combined with paging and sorting.

    Example: city==”Chicago” and name==”build”

Returns:

All buildings in JSON


Pro.get_building(id: Union[int, str]) dict

Returns specified building object by ID in JSON

Parameters:

id – Building ID

Returns:

Building information in JSON


Pro.get_building_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns specified building history object by ID in JSON

Parameters:
  • id – Building ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Building history in JSON


Pro.get_building_export(export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) str

Exports buildings collection in CSV

Parameters:
  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Options: id, name, streetAddress1, streetAddress2, city, stateProvince, zipPostalCode, country

    Example: [“id”, “name”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: export_labels=[“identification”, “buildingName”] with matching: export_fields=[“id”, “name”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name. This param can be combined with paging and sorting.

    Example: name==”buildings”

Returns:

CSV export of the defined building collection


Pro.get_building_history_export(id: Union[int, str], export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) str

Exports building history in specified format by ID

Parameters:
  • id – Building ID

  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Options: id, username, date, note, details

    Example: [“id”, “username”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: export_labels=[“identification”, “name”] with matching: export_fields=[“id”, “username”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “date:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name. This param can be combined with paging and sorting.

    Example: username==”exampleuser”

Returns:

CSV export of the defined building history collection


Pro.create_building(data: dict) dict

Creates a building record with JSON data

Parameters:

data – JSON data to create the building record with. For syntax information view Jamf’s documentation.

Returns:

New building information in JSON


Pro.create_building_history_note(data: dict, id: Union[int, str]) dict

Creates specified building history notes with JSON data by ID

Parameters:
  • data – JSON data to create building note with. For syntax information view Jamf’s documentation.

  • id – Building ID

Returns:

New building history note information in JSON


Pro.update_building(data: dict, id: Union[int, str]) dict

Updates a specified building with JSON data by ID

Parameters:
  • data – JSON data to create building record with. For syntax information view Jamf’s documentation.

  • id – Building ID

Returns:

Updated building information in JSON


Pro.delete_building(id: Union[int, str] = None, ids: List[Union[int, str]] = None) str

Deletes a building by ID or IDS, use id for a single building and ids to delete multiple

Parameters:
  • id – Building ID

  • ids – List of building IDs

Returns:

Success message stating that the building was deleted


cache-settings

Pro.get_cache_settings()

Returns cache settings of the JPS server in JSON

Returns:

Cache settings information in JSON


Pro.update_cache_settings(data: dict) dict

Updates cache settings of the JPS server in JSON

Parameters:

data – JSON data to update cache settings with. For syntax information view Jamf’s documentation.

Returns:

Updated cache settings information in JSON


categories

Pro.get_categories(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all category objects in JSON

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter categories collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: name, priority. This param can be combined with paging and sorting.

    Example: name==”Apps*” and priority>=5

Returns:

All categories in JSON


Pro.get_category(id: Union[int, str]) dict

Returns specified category object by ID in JSON

Parameters:

id – Category ID

Returns:

Category information in JSON


Pro.get_category_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns specified category history object by ID in JSON

Parameters:
  • id – Category ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Category history information in JSON


Pro.create_category(data: dict) dict

Creates a category record with JSON data

Parameters:

data – JSON data to create the category with. For syntax information view Jamf’s documentation.

Returns:

New category information in JSON


Pro.create_category_history_note(data: dict, id: Union[int, str]) dict

Creates a category history object note by ID with JSON data

Parameters:
  • data – JSON data to create the category history note with. For syntax information view Jamf’s documentation.

  • id – Category ID

Returns:

New category history note information in JSON


Pro.update_category(data: dict, id: Union[int, str]) dict

Updates a category by with by ID with JSON data

Parameters:
  • data – JSON data to update the category with. For syntax information view Jamf’s documentation.

  • id – Category ID

Returns:

Updated category information in JSON


Pro.delete_category(id: Union[int, str] = None, ids: List[Union[int, str]] = None) str

Deletes a category by ID or IDS, use id for a single category and ids to delete multiple

Parameters:
  • id – Category ID

  • ids – List of categories IDs

Returns:

Success message stating that the category was deleted


certificate-authority

Pro.get_certificate_authority_active(der: bool = None, pem: bool = None) Union[dict, str]

Returns X.509 details of the active certificate authority in JSON, der, or pem format

Parameters:
  • der – Set to True to return the certificate info in der format

  • pem – Set to True to return the certificate info in pem format

Returns:

Active certificate authority information in JSON


Pro.get_certificate_authority(uuid: str, der: bool = None, pem: bool = None) Union[dict, str]

Returns X.509 details of certificate authority by ID in JSON, der, or pem format

Parameters:
  • uuid – Certificate ID

  • der – Set to True to return the certificate info in der format

  • pem – Set to True to return the certificate info in pem format

Returns:

Certificate authority information in JSON


classic-ldap

Pro.get_classic_ldap(id: Union[int, str]) dict

Returns mappings for OnPrem LDAP configuration with given id

Parameters:

id – Classic LDAP ID

Returns:

Classic LDAP information in JSON


client-check-in

Pro.get_client_check_in() dict

Returns client check-in settings in JSON

Returns:

Client check-in settings information in JSON


Pro.get_client_check_in_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns client check-in settings history in JSON

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “username:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Client check-in history information in JSON


Pro.create_client_check_in_history_note(data: dict) dict

Creates a client check-in history note with JSON data

Parameters:

data – JSON data to create client check-in history note with. For syntax information view Jamf’s documentation.

Returns:

New client check-in history note information in JSON


Pro.update_client_check_in(data) dict

Updates client check-in settings with JSON data

Parameters:

data – JSON data to update client check-in settings with. For syntax information view Jamf’s documentation.

Returns:

Updated client check-in information in JSON


cloud-azure

Pro.get_cloud_azure_default_server_configuration() dict

Returns the default set of server attributes that allows you to return the data you need from Azure AD. Some fields may be empty and may be edited when creating a new configuration.

Returns:

Cloud azure default server configuration information in JSON


Pro.get_cloud_azure_default_mappings() dict

Returns the default set of mapping attributes that allows you to return the data you need from Azure AD. Some fields may be empty and may be edited when creating a new configuration.

Returns:

Cloud azure default mappings information in JSON


Pro.get_cloud_azure_identity_provider_configuration(id: Union[int, str]) dict

Returns Azure cloud identity provider configuration with given ID in JSON

Returns:

Cloud azure identity provider configuration information in JSON


Pro.create_cloud_azure_identity_provider_configuration(data: dict) dict

Create new Azure Cloud Identity Provider configuration with unique display name

Parameters:

data – JSON data to create the azure cloud identity provider configuration with. For syntax information view Jamf’s documentation.

Returns:

New cloud azure identity provider configuration information in JSON


Pro.update_cloud_azure_identity_provider_configuration(data: dict, id: Union[int, str]) dict

Updates an Azure Cloud Identity Provider configuration. Cannot be used for partial updates, all content body parameters must be sent.

Returns:

Updated azure cloud identity provider configuration information in JSON


Pro.delete_cloud_azure_identity_provider_configuration(id: Union[int, str]) str

Deletes a Cloud Identity Provider configuration by ID

Parameters:

id – Cloud identity provider ID

Returns:

Success message stating that the azure identity provider configuration was deleted


cloud-distribution-point

Pro.get_cloud_distribution_point_upload_capability() dict

Returns a variety of values based on the currently configured Cloud Distribution Point

Returns:

Cloud distribution point upload capability information in JSON


cloud-idp

Pro.get_cloud_idps(page: int = None, page_size=None, sort: List[str] = ['id:desc']) dict

Returns basic information about all configured Cloud Identity Providers

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

Returns:

All cloud IDPs in JSON


Pro.get_cloud_idp(id: Union[int, str]) dict

Returns cloud identity provider configuration by ID

Parameters:

id – Cloud identity provider ID

Returns:

Cloud IDP information in JSON


Pro.get_cloud_idp_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns specified cloud identity provider history by ID

Parameters:
  • id – Cloud identity provider ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Cloud IDP history information in JSON


Pro.get_cloud_idp_export(export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) str

Returns CSV export of cloud identity providers collection

Parameters:
  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Example: [“id”, “username”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: [“identifier”, “name”] with matching export-fields [“id”, “username”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name. This param can be combined with paging and sorting.

    Example: name==”department”

Returns:

CSV export of cloud IDP collection


Pro.create_cloud_idp_history_note(data: dict, id: Union[int, str]) dict

Creates specified cloud identity provider history note by ID

Parameters:
  • data – JSON data to create cloud identity provider history with. For syntax information view Jamf’s documentation.

  • id – Cloud identity provider ID

Returns:

New cloud IDP history note information in JSON


Creates a cloud identify provider group test search and returns the result

Parameters:
  • data – JSON data to run group test search with. For syntax information view Jamf’s documentation.

  • id – Cloud identity provider ID

Returns:

New cloud IDP group test search results in JSON


Creates a cloud identify provider user test search and returns result

Parameters:
  • data – JSON data to run user test search with. For syntax information view Jamf’s documentation.

  • id – Cloud identity provider ID

Returns:

New cloud IDP user test search results in JSON


Creates a cloud identify provider user membership test search and returns the result

Parameters:
  • data – JSON data to run user membership test search with. For syntax information view Jamf’s documentation.

  • id – Cloud identity provider ID

Returns:

Cloud IDP user membership test search results in JSON


cloud-information

Pro.get_cloud_information() dict

Returns information related to cloud setup

Returns:

Information related to cloud setup in JSON


cloud-ldap

Pro.get_cloud_ldap_default_server_configuration(provider: str) dict

Returns default server configuration for cloud identity provider by provider name

Parameters:

provider – Cloud identity provider name

Returns:

Cloud LDAP default server configuration information in JSON


Pro.get_cloud_ldap_default_mappings(provider: str) dict

Returns default mapping configuration for cloud identity provider by provider name

Parameters:

provider – Cloud identity provider name

Returns:

Cloud LDAP default mappings information in JSON


Pro.get_cloud_ldap_configuration(id: Union[int, str]) dict

Returns the cloud identity provider configuration by ID

Parameters:

id – Cloud identity provider ID

Returns:

Cloud LDAP configuration information in JSON


Pro.get_cloud_ldap_mappings(id: Union[int, str]) dict

Returns the cloud identity provider mappings configuration by ID

Parameters:

id – Cloud identity provider ID

Returns:

Cloud LDAP mappings information in JSON


Pro.get_cloud_ldap_connection_status(id: Union[int, str]) dict

Returns the cloud identity provider connection status

Parameters:

id – Cloud identity provider ID

Returns:

Cloud LDAP connection status information in JSON


Pro.get_cloud_ldap_bind_connection_pool(id: Union[int, str]) dict

Returns the cloud identity provider bind connection pool statistics

Parameters:

id – Cloud identity provider ID

Returns:

Cloud LDAP bind connection pool information in JSON


Pro.get_cloud_ldap_search_connection_pool(id: Union[int, str]) dict

Returns the cloud identity provider search connection pool statistics

Parameters:

id – Cloud identity provider ID

Returns:

Cloud LDAP search connection pool information in JSON


Pro.create_cloud_ldap_configuration(data: dict) dict

Creates new Cloud Identity Provider configuration with unique display name. If mappings not provided, then defaults will be generated instead.

Parameters:

data – JSON data to create the cloud LDAP configuration with. For syntax information view Jamf’s documentation.

Returns:

New cloud LDAP configuration information in JSON


Pro.create_cloud_ldap_keystore_validation(data: dict) dict

Validates keystore for Cloud Identity Provider secure connection

Parameters:

data – JSON data to create validation of keystore with. For syntax information view Jamf’s documentation.

Returns:

Cloud LDAP keystore validation results in JSON


Pro.update_cloud_ldap_configuration(data: dict, id: Union[int, str]) dict

Updates Cloud Identity Provider configuration. Cannot be used for partial updates, all content body params must be sent.

Parameters:
  • data – JSON data to update the cloud LDAP configuration with. For syntax information view Jamf’s documentation.

  • id – Cloud identity provider ID

Returns:

Updated cloud LDAP configuration information in JSON


Pro.update_cloud_ldap_mappings_configuration(data: dict, id: Union[int, str]) dict

Updates Cloud Identity Provider mappings configuration. Cannot be used for partial updates, all content body params must be sent.

Parameters:
  • data – JSON data to update the cloud LDAP mappings configuration with. For syntax information view Jamf’s documentation.

  • id – Cloud identity provider ID

Returns:

Updated cloud LDAP mappings configuration information in JSON


Pro.delete_cloud_ldap_configuration(id: Union[int, str]) str

Deletes Cloud Identity Provider configuration.

Parameters:

id – Cloud identity provider ID

Returns:

Success message stating that the cloud LDAP configuration was deleted


computer-extension-attributes

Pro.get_computer_extension_attributes(page: int = None, page_size: int = None, sort: List[str] = ['name:asc'], filter: str = None) dict

Returns all computer extension attributes in JSON

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort – Sorting criteria in the format: property:asc/desc. Default sort is name:asc. Multiple sort criteria are supported and must be separated with a comma.

  • filter – Query in the RSQL format, allowing to filter extension attributes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name

Returns:

All computer extension attributes in JSON


Pro.get_computer_extension_attribute(id: Union[int, str]) dict

Returns specified computer extension attribute by ID in JSON

Parameters:

id – Computer extension attribute ID

Returns:

Computer extension attribute information in JSON


Pro.get_computer_extension_attribute_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['id:desc'], filter: str = None) dict

Returns specified computer extension attribute history by ID in JSON

Parameters:
  • id – Computer extension attribute ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:desc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “id:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and date<2019-12-15

Returns:

Computer extension attribute history information in JSON


Pro.create_computer_extension_attribute(data: dict) dict

Creates a computer extension attribute with JSON data

Parameters:

data – JSON data to create the computer extension attribute with. For syntax information view Jamf’s documentation.

Returns:

New computer extension attribute information in JSON


Pro.create_computer_extension_attribute_history_note(data: dict, id: Union[int, str]) dict

Creates a computer extension attribute history note by ID with JSON data

Parameters:
  • data – JSON data to create the computer extension attribute history note with. For syntax information view Jamf’s documentation.

  • id – Computer extension attribute ID

Returns:

New computer extension attribute history note information in JSON


Pro.update_computer_extension_attribute(data: dict, id: Union[int, str]) dict

Updates a computer extension attribute by ID with JSON data

Parameters:
  • data – JSON data to update the computer extension attribute with. For syntax information view Jamf’s documentation.

  • id – Computer extension attribute ID

Returns:

Updated computer extension attribute information in JSON


Pro.delete_computer_extension_attribute(id: Union[int, str] = None, ids: List[Union[int, str]] = None) str

Deletes a computer extension attribute by ID or IDS, use id for a single computer extension attribute and ids to delete multiple

Parameters:
  • id – Computer extension attribute ID

  • ids – List of computer extension attribute IDs

Returns:

Success message stating that the computer extension attribute was deleted


computer-groups

Pro.get_computer_groups() dict

Returns all computer groups in JSON

Returns:

All computer group in JSON


Pro.get_computer_groups_smart_groups(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all smart groups in JSON

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort – Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

Example: [“date:desc”, “id:asc”]

Parameters:

filter

Query in the RSQL format, allowing to filter smart groups collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name

Example: name==”group”

Returns:

All smart groups in JSON


Pro.get_computer_groups_smart_group_membership(id: Union[int, str]) dict

Returns the membership of a smart group by ID

Parameters:

id – Smart group ID

Returns:

Smart group membership information in JSON


Pro.create_computer_groups_smart_group(data: dict) dict

Creates a smart group with JSON data

Parameters:

data – JSON data to create the smart group with. For syntax information view Jamf’s documentation.

Returns:

New smart group information in JSON


computer-inventory

Pro.get_computer_inventories(section: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = None, filter: str = None) dict

Returns paginated list of computer inventory records

Parameters:
  • section

    Section of computer details, if not specified, General section data is returned. Multiple section parameters are supported,

    Options: ALL, GENERAL, DISK_ENCRYPTION, PURCHASING, APPLICATIONS, STORAGE, USER_AND_LOCATION, CONFIGURATION_PROFILES, PRINTERS, SERVICES, HARDWARE, LOCAL_USER_ACCOUNTS, CERTIFICATES, ATTACHMENTS, PLUGINS, PACKAGE_RECEIPTS, FONTS, SECURITY, OPERATING_SYSTEM, LICENSED_SOFTWARE, IBEACONS, SOFTWARE_UPDATES, EXTENSION_ATTRIBUTES, CONTENT_CACHING, GROUP_MEMBERSHIPS

    Example [“GENERAL”, “HARDWARE”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is general.name:asc. Multiple sort criteria are supported and must be separated with a comma.

    Fields allowed in the sort: general.name, udid, id, general.assetTag, general.jamfBinaryVersion, general.lastContactTime, general.lastEnrolledDate, general.lastCloudBackupDate, general.reportDate, general.remoteManagement.managementUsername, general.mdmCertificateExpiration, general.platform, hardware.make, hardware.model, operatingSystem.build, operatingSystem.name, operatingSystem.version, userAndLocation.realname, purchasing.lifeExpectancy, purchasing.warrantyDate

    Example: [“udid:desc”, “general.name:asc”]

  • filter

    Query in the RSQL format, allowing to filter computer inventory collection. Default filter is empty query - returning all results for the requested page. This param can be combined with paging and sorting.

    Fields allowed in the query: general.name, udid, id, general.assetTag, general.barcode1, general.barcode2, general.enrolledViaAutomatedDeviceEnrollment, general.lastIpAddress, general.itunesStoreAccountActive, general.jamfBinaryVersion, general.lastContactTime, general.lastEnrolledDate, general.lastCloudBackupDate, general.reportDate, general.lastReportedIp, general.managementId, general.remoteManagement.managed, general.mdmCapable.capable, general.mdmCertificateExpiration, general.platform, general.supervised, general.userApprovedMdm, general.declarativeDeviceManagementEnabled, hardware.bleCapable, hardware.macAddress, hardware.make, hardware.model, hardware.modelIdentifier, hardware.serialNumber, hardware.supportsIosAppInstalls,hardware.appleSilicon, operatingSystem.activeDirectoryStatus, operatingSystem.fileVault2Status, operatingSystem.build, operatingSystem.supplementalBuildVersion, operatingSystem.rapidSecurityResponse, operatingSystem.name, operatingSystem.version, security.activationLockEnabled, security.recoveryLockEnabled, security.firewallEnabled, userAndLocation.buildingId, userAndLocation.departmentId, userAndLocation.email, userAndLocation.realname, userAndLocation.phone, userAndLocation.position, userAndLocation.room, userAndLocation.username, purchasing.appleCareId, purchasing.lifeExpectancy, purchasing.purchased, purchasing.leased, purchasing.vendor, purchasing.warrantyDate,

    Example: general.name==”Orchard”

Returns:

All computer inventories in JSON


Pro.get_computer_inventory(id: Union[int, str], section: List[str] = None) dict

Returns general section of a computer or more if specified by ID

Parameters:
  • id – Computer ID

  • section

    Section of computer details, if not specified, General section data is returned. Multiple section parameters are supported,

    Options: ALL, GENERAL, DISK_ENCRYPTION, PURCHASING, APPLICATIONS, STORAGE, USER_AND_LOCATION, CONFIGURATION_PROFILES, PRINTERS, SERVICES, HARDWARE, LOCAL_USER_ACCOUNTS, CERTIFICATES, ATTACHMENTS, PLUGINS, PACKAGE_RECEIPTS, FONTS, SECURITY, OPERATING_SYSTEM, LICENSED_SOFTWARE, IBEACONS, SOFTWARE_UPDATES, EXTENSION_ATTRIBUTES, CONTENT_CACHING, GROUP_MEMBERSHIPS

    Example [“GENERAL”, “HARDWARE”]

Returns:

Computer inventory information in JSON


Pro.get_computer_inventory_detail(id: Union[int, str]) dict

Returns all sections of a computer by ID

Parameters:

id – Computer ID

Returns:

Computer inventory details in JSON


Pro.get_computer_inventory_filevaults(page: int = None, page_size: int = None) dict

Returns paginated FileVault information for all computers

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

Returns:

FileVault information for all computers in JSON


Pro.get_computer_inventory_filevault(id: Union[int, str]) dict

Returns FileVault information for a specific computer by ID

Parameters:

id – Computer ID

Returns:

Computer FileVault information in JSON


Pro.get_computer_inventory_recovery_lock_password(id: Union[int, str]) dict

Returns a computers recovery lock password by ID in JSON

Parameters:

id – Computer ID

Returns:

Recovery lock password in JSON


Pro.get_computer_inventory_attachment(id: Union[int, str], attachmentId: Union[int, str]) str

Downloads specified attachment file by the ID of the computer and ID of the attachment

Parameters:
  • id – Computer ID

  • attachmentID – Attachment ID

Returns:

Success message stating that the computer inventory attachment was downloaded


Pro.create_computer_inventory_attachment(filepath: str, id: Union[int, str]) str

Uploads attachment to a specified computer by ID

Parameters:
  • filepath – Filepath to the file to upload

  • id – Computer ID

Returns:

New computer inventory attachment information in JSON


Pro.update_computer_inventory(data: dict, id: Union[int, str]) dict

Updates specific fields on a computer by ID, then returns the updated computer object in JSON

Parameters:
  • data – JSON data to update the computer with. For syntax information view Jamf’s documentation.

  • id – Computer ID

Returns:

Updated computer inventory information in JSON


Pro.delete_computer_inventory(id: Union[int, str]) str

Deletes specified computer record by ID

Parameters:

id – Computer ID

Returns:

Success message stating the computer inventory record was deleted


Pro.delete_computer_inventory_attachment(id: Union[int, str], attachmentId: str) str

Deletes specified computer attachment by computer ID and computer attachment ID

Parameters:
  • id – Computer ID

  • attachmentId – Computer attachment ID

Returns:

Success message stating that the computer inventory attachment was deleted


computer-inventory-collection-settings

Pro.get_computer_inventory_collection_settings() dict

Returns computer inventory collection settings in JSON

Returns:

Computer inventory collection settings information in JSON


Pro.create_computer_inventory_collection_settings_custom_path(data: dict) dict

Creates a custom search path to use when collecting applications, fonts, and plug-ins.

Parameters:

data – JSON data to create computer inventory collection settings custom path with. For syntax information view Jamf’s documentation.

Returns:

New computer inventory collection settings custom path information in JSON


Pro.update_computer_inventory_collection_settings(data: dict) dict

Updates computer inventory settings

Parameters:

data – JSON data to update computer inventory collection settings with. For syntax information view Jamf’s documentation.

Returns:

Updated computer inventory collection settings information in JSON


Pro.delete_computer_inventory_collection_settings_custom_path(id: Union[int, str]) str

Deletes Custom Path from Computer Inventory Collection Settings

Parameters:

id – Custom path ID

Returns:

Success message stating that the computer inventory collection settings custom path was deleted


computer-prestages

Pro.get_computer_prestages(page: int = None, page_size: int = None, sort: List[str] = ['id:desc']) dict

Deprecated since version 1.6.0: Use get_computer_prestages_v2() instead.

Returns sorted and paged computer prestages

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “enrollmentCustomizationId:asc”]

Returns:

All computer prestages in JSON


Pro.get_computer_prestages_v2(page: int = None, page_size: int = None, sort: List[str] = ['id:desc']) dict

Returns sorted and paged computer prestages

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “enrollmentCustomizationId:asc”]

Returns:

All computer prestages in JSON


Pro.get_computer_prestage_scopes() dict

Returns all device scopes for all computer prestages

Returns:

All computer prestage scopes in JSON


Pro.get_computer_prestage(id: Union[int, str]) dict

Returns a computer prestage with the supplied ID

Parameters:

id – Computer prestage ID

Returns:

Computer prestage information in JSON


Pro.get_computer_prestage_scope(id: Union[int, str]) dict

Returns device scope for a specified computer prestage by ID

Parameters:

id – Computer prestage ID

Returns:

Computer prestage scope information in JSON


Pro.create_computer_prestage(data: dict) dict

Creates a computer prestage with supplied JSON data

Parameters:

data – JSON data to create computer prestage with. For syntax information view Jamf’s documentation.

Returns:

New computer prestage information in JSON


Pro.create_computer_prestage_scope(data: dict, id: Union[int, str]) dict

Adds device(s) to a specific computer prestage’s scope by ID

Parameters:
  • data – JSON data to create the new computer prestage scope with. For syntax information view Jamf’s documentation.

  • id – Computer prestage scope ID

Returns:

New computer prestage scope information in JSON


Pro.update_computer_prestage(data: dict, id: Union[int, str]) dict

Updates a computer prestage by ID with JSON data

Parameters:
  • data – JSON data to update the computer prestage with. For syntax information view Jamf’s documentation.

  • id – Computer prestage ID

Returns:

Updated computer prestage information in JSON


Pro.replace_computer_prestage_scope(data: dict, id: Union[int, str]) dict

Replaces device scope for a specified computer prestage

Parameters:
  • data – JSON data to place the computer prestage scope with. For syntax information view Jamf’s documentation.

  • id – Computer prestage ID

Returns:

Replaced computer prestage scope information in JSON


Pro.delete_computer_prestage(id: Union[int, str]) str

Deletes a computer prestage with the supplied ID

Parameters:

id – Computer prestage ID

Returns:

Success message stating that the computer prestage was deleted


Pro.delete_computer_prestage_scope(data: dict, id: Union[int, str]) dict

Removes device scope for a specified computer prestage by ID

Parameters:
  • data – JSON data to remove the computer prestage scope with. For syntax information view Jamf’s documentation.

  • id – Computer prestage ID

Returns:

Computer prestage scope information in JSON after removing defined computers


computers-preview

Pro.get_computers(page: int = None, page_size: int = None, section: List[str] = ['name:asc']) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Returns a paginated list of computers

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • section

    Sorting criteria in the format: property:asc/desc. Default sort is name:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

Returns:

All computers in JSON


conditional-access

Pro.get_conditional_access_feature_toggle() dict

Returns the status of the conditional access feature toggle

Returns:

Conditional access feature toggle information in JSON


Pro.get_conditional_access_computer(id: Union[int, str]) dict

Returns basic compliance information for the given computer by ID

Parameters:

id – Computer ID

Returns:

Basic compliance information for the defined computer in JSON


Pro.get_conditional_access_mobile_device(id: Union[int, str]) dict

Returns basic compliance information for the given mobile device by ID

Parameters:

id – Mobile device ID

Returns:

Basic compliance information for the defined mobile device in JSON


csa

Pro.get_csa() dict

Returns details regarding the CSA token exchange

Returns:

CSA token exchange information in JSON


Pro.get_csa_tenant_id() dict

Returns the CSA tenant ID

Returns:

CSA tenant ID in JSON


Pro.delete_csa() str

Deletes the CSA token exchange - This will disable Jamf Pro’s ability to authenticate with cloud-hosted services

Returns:

Success message stating the CSA token exchange was deleted


dashboard

Pro.get_dashboard() dict

Returns all the dashboard information for widgets and setup tasks

Returns:

Dashboard information in JSON


declarative-device-management

Pro.create_declarative_device_management_sync(client_management_id: str) dict

Forces a device to sync by queueing a new DeclarativeManagementCommand

Parameters:

client_management_id – The client management ID of the device to sync

Returns:

Declarative device management sync information in JSON


departments

Pro.get_departments(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns a paginated list of departments

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter department collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name.

    Example: name==”department”

Returns:

All departments in JSON


Pro.get_department(id: Union[int, str]) dict

Returns specified department

Parameters:

id – Department ID

Returns:

Department information in JSON


Pro.get_department_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns specified, paginated department history

Parameters:
  • id – Department ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Department history information in JSON


Pro.create_department(data: dict) dict

Creates department record with JSON data

Parameters:

data – JSON data to create the department with. For syntax information view Jamf’s documentation.

Returns:

New department information in JSON


Pro.create_department_history_note(data: dict, id: Union[int, str]) dict

Creates note in specified department history with JSON data

Parameters:
  • data – JSON data to create department history note with. For syntax information view Jamf’s documentation.

  • id – Department ID

Returns:

New department history note information in JSON


Pro.update_department(data: dict, id: Union[int, str]) dict

Updates specified department by ID with JSON data

Parameters:
  • data – JSON data to update department with. For syntax information view Jamf’s documentation.

  • id – Department ID

Returns:

Updated department information in JSON


Pro.delete_department(id: Union[int, str] = None, ids: List[Union[int, str]] = None) str

Deletes a department search by ID or IDS, use id for a single department and ids to delete multiple.

Parameters:
  • id – Department ID

  • ids – List of department IDs

Returns:

Success message stating the department was deleted


device-communication-settings

Pro.get_device_communication_settings()

Returns all device communication settings, including automatic renewal of the MDM profile.

Returns:

All device communication settings in JSON


Pro.get_device_communication_settings_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns paginated device communication settings history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Device communication settings history information in JSON


Pro.create_device_communication_settings_history_note(data: dict) dict

Creates a note on the device communication settings history by JSON data

Parameters:

data – JSON data to create the device communication settings history note. For syntax information view Jamf’s documentation.


Pro.update_device_communication_settings(data: dict) dict

Updates device communication settings with JSON

Parameters:

data – JSON data to update device communication settings with. For syntax information view Jamf’s documentation.

Returns:

Updated device communication settings information in JSON


device-enrollments

Pro.get_device_enrollments(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

Returns sorted and paged device enrollment instances

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

Returns:

All device enrollments in JSON


Pro.get_device_enrollment(id: Union[int, str]) dict

Returns a device enrollment instance with the supplied ID

Parameters:

id – Device enrollment instance ID

Returns:

Device enrollment information in JSON


Pro.get_device_enrollment_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns sorted and paged device enrollment history by ID in JSON

Parameters:
  • id – Device enrollment instance ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default search is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Device enrollment history information in JSON


Pro.get_device_enrollments_public_key() str

Returns the Jamf Pro device enrollment public key in a string

Returns:

Device enrollment public key in JSON


Pro.get_device_enrollments_instance_sync_states() dict

Returns all device enrollments instance sync states

Returns:

All device enrollments instance sync states in JSON


Pro.get_device_enrollment_instance_sync_states(id: Union[int, str]) dict

Returns all instance sync states for a single instance by ID

Parameters:

id – Device enrollment ID

Returns:

Device enrollment instance sync states in JSON


Pro.get_device_enrollment_instance_sync_state_latest(id: Union[int, str]) dict

Returns the latest sync state for a single device enrollment

Parameters:

id – Device enrollment ID

Returns:

Latest device enrollment instance sync state in JSON


Pro.create_device_enrollment(data: dict) dict

Creates a device enrollment instance with JSON data

Parameters:

data – JSON data to create the device enrollment instance with. For syntax information view Jamf’s documentation.

Returns:

New device enrollment instance information in JSON


Pro.create_device_enrollment_history_note(data: dict, id: Union[int, str]) dict

Creates a device enrollment history note by ID with JSON data

Parameters:
  • data – JSON data to create the device enrollment history note with. For syntax information view Jamf’s documentation.

  • id – Device enrollment ID

Returns:

New device enrollment history note information in JSON


Pro.update_device_enrollment(data: dict, id: Union[int, str]) dict

Updates a Device Enrollment Instance by ID with JSON data

Parameters:
  • data – JSON data to update device enrollment instance with. For syntax information view Jamf’s documentation.

  • id – Device enrollment ID

Returns:

Updated device enrollment instance information in JSON


Pro.update_device_enrollment_token(data: dict, id: Union[int, str]) dict

Updates a device enrollment instance with the supplied token by ID with JSON

Parameters:
  • data – JSON data to update device enrollment instance with. For syntax information view Jamf’s documentation.

  • id – Device enrollment ID

Returns:

Updated device enrollment token information in JSON


Pro.delete_device_enrollment(id: Union[int, str]) str

Deletes a device enrollment instance by ID

Parameters:

id – Device enrollment ID

Returns:

Success message stating the device enrollment instance was deleted


Pro.delete_device_enrollment_device(data: dict, id: Union[int, str]) dict

Disowns devices from the given device enrollment instance by ID with JSON

Parameters:
  • data – JSON data to disown device enrollment devices with. For syntax information view Jamf’s documentation.

  • id – Device Enrollment ID

Returns:

Device enrollment information in JSON


device-enrollments-devices

Pro.get_device_enrollments_devices(id: Union[int, str]) dict

Returns all devices assigned to the device enrollment instance by ID

Parameters:

id – Device enrollment instance ID

Returns:

All devices assigned to the device enrollment in JSON


dock-items

Pro.get_dock_item(id: Union[int, str]) dict

Returns a dock item with the supplied ID

Parameters:

id – Dock item ID

Returns:

Dock item information in JSON


Pro.create_dock_item(data: dict) dict

Creates a dock item with JSON data

Parameters:

data – JSON data to create the dock item with. For syntax information view Jamf’s documentation.

Returns:

New dock item information in JSON


Pro.update_dock_item(data: dict, id: Union[int, str]) dict

Updates a dock item by ID with JSON data

Parameters:
  • data – JSON data to update the dock item with. For syntax information view Jamf’s documentation.

  • id – Dock item ID

Returns:

Updated dock item information in JSON


Pro.delete_dock_item(id: Union[int, str]) str

Deletes a dock item by ID

Parameters:

id – Dock item ID

Returns:

Success message stating the dock item was deleted


dss-declarations

Pro.get_dss_declaration(id: Union[int, str]) dict

Returns a declaration from DSS by ID

Parameters:

id – DSS declaration ID

Returns:

DSS declaration information in JSON


ebooks

Pro.get_ebooks(page: int = None, page_size: int = None, sort: List[str] = ['name:asc']) dict

Returns sorted, paginated list of all eBooks

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is name:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

Returns:

All eBooks in JSON


Pro.get_ebook(id: Union[int, str]) dict

Returns the specified eBook by ID

Parameters:

id – eBook ID

Returns:

eBook information in JSON


Pro.get_ebook_scope(id: Union[int, str]) dict

Returns the scope of the specified eBook by ID

Parameters:

id – eBook ID

Returns:

eBook scope information in JSON


engage

Pro.get_engage_settings() dict

Returns Engage settings

Returns:

Engage settings information in JSON


Pro.get_engage_settings_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns Engage settings history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default search is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Engage settings history information in JSON


Pro.create_engage_settings_history_note(data: dict) dict

Creates Engage settings history notes with JSON

Parameters:

data – JSON data to create Engage settings history notes with. For syntax information view Jamf’s documentation.

Returns:

New Engage settings history note information in JSON


Pro.update_engage_settings(data: dict) dict

Updates Engage settings with JSON

Parameters:

data – JSON data to update the engage settings with. For syntax information view Jamf’s documentation.

Returns:

Updated Engage settings information in JSON


enrollment

Pro.get_enrollment_settings() dict

Returns Enrollment object and re-enrollment settings

Returns:

Enrollment settings information in JSON


Pro.get_enrollment_history(page: int = None, page_size: int = None, sort: List[str] = None) dict

Returns sorted and paged enrollment history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

Returns:

Enrollment history information in JSON


Pro.get_enrollment_history_export(export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) str

Returns CSV export of enrollment history collection

Parameters:
  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Example: [“id”, “username”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: [“identifier”, “name” with matching export-fields [“id”, “username”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name. This param can be combined with paging and sorting.

    Example: username!=”admin”

Returns:

CSV export of enrollment history


Pro.get_enrollment_adue_session_token_settings()

Returns the Account Driven User Enrollment Session Token Settings

Returns:

ADUE enrollment session token settings information in JSON


Pro.get_enrollment_ldap_groups(page: int = None, page_size: int = None, sort: List[str] = None, all_users_option_first: bool = False) dict

Returns the configured LDAP groups configured for user-initiated enrollment

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is name:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“name:asc”]

  • all_users_option_first

    Return “All LDAP Users” option on the first position if it is present in the current page

    Options: True or False

Returns:

All LDAP groups configured for ADUE in JSON


Pro.get_enrollment_ldap_group(id: Union[int, str]) dict

Returns the configured LDAP group configured for User-Initiated Enrollment by ID

Returns:

LDAP group configured for ADUE in JSON


Pro.get_enrollment_languages_messaging(page: int = None, page_size: int = None, sort: List[str] = None) dict

Returns the language codes that have enrollment messaging currently configured

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is languageCode:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“languageCode:asc”]

Returns:

All enrollment languages messaging information in JSON


Pro.get_enrollment_language_messaging(languageId: str) dict

Returns the enrollment messaging for a language

Parameters:

languageId

Two letter ISO 639-1 Language Code

Example: en

Returns:

Enrollment language messaging information in JSON


Pro.get_enrollment_language_codes() dict

Returns all languages and corresponding ISO 639-1 codes

Returns:

All language codes in JSON


Pro.get_enrollment_unused_language_codes() dict

Returns languages and corresponding ISO 639-1 Codes, but only those not already added to enrollment

Returns:

Unused language codes information in JSON


Pro.create_enrollment_history_note(data: dict) dict

Creates enrollment history object note with JSON data

Parameters:

data – JSON data to create the enrollment history note with. For syntax information view Jamf’s documentation.

Returns:

New enrollment history note information in JSON


Pro.create_enrollment_ldap_group(data: dict) dict

Creates the configured LDAP group for user-initiated enrollment with JSON data

Parameters:

data – JSON data to create the enrollment LDAP group with. For syntax information view Jamf’s documentation.

Returns:

New enrollment LDAP group in JSON


Pro.update_enrollment_settings(data: dict) dict

Updates enrollment settings with JSON data

Parameters:

data – JSON data to update the enrollment settings with. For syntax information view Jamf’s documentation.

Returns:

Updated enrollment settings in JSON


Pro.update_enrollment_adue_session_token_settings(data: dict) dict

Updates the account driven user enrollment session token settings

Parameters:

data – JSON data to update the enrollment ADUE session token settings with. For syntax information view Jamf’s documentation.

Returns:

Updated ADUE session token settings in JSON


Pro.update_enrollment_ldap_group(data: dict, id: Union[int, str]) dict

Updates the configured LDAP groups configured for user-initiated enrollment by ID with JSON data

Parameters:
  • data – JSON data to update the enrollment LDAP group with. For syntax information view Jamf’s documentation.

  • id – Enrollment LDAP group ID

Returns:

Updated enrollment LDAP group information in JSON


Pro.update_enrollment_language_messaging(data: dict, languageId: str) dict

Updates enrollment messaging for a specified language by languageId

Parameters:

languageId – Two letter ISO 639-1 Language Code

Returns:

Updated enrollment language messaging in JSON


Pro.delete_enrollment_ldap_group(id: Union[int, str]) str

Deletes an LDAP group’s access to user initiated enrollment. The group “All LDAP Users” cannot be deleted, but it can be modified to disallow User-Initiated Enrollment.

Parameters:

id – Enrollment LDAP group ID

Returns:

Success message stating that the enrollment LDAP group was deleted


Pro.delete_enrollment_language_messaging(languageId: str = None, languageIds: List[str] = None) str

Deletes a enrollment language messaging search by language ID or IDS, use languageId for a single language and languageIds to delete multiple

Parameters:
  • id – Enrollment language ID, two letter ISO 639-1 Language Code

  • ids – List of enrollment language IDs, two letter ISO 639-1 Language Code

Returns:

Success message stating that the enrollment language messaging was deleted


enrollment-customization

Pro.get_enrollment_customizations(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

Returns sorted and paged enrollment customizations

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “displayName:asc”]

Returns:

All enrollment customizations in JSON


Pro.get_enrollment_customization(id: Union[int, str]) dict

Returns an enrollment customization by ID

Parameters:

id – Enrollment customization ID

Returns:

Enrollment customization information in JSON


Pro.get_enrollment_customization_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc']) dict

Returns sorted and paged enrollment customization history by ID

Parameters:
  • id – Enrollment customization ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

Returns:

Enrollment customization history information in JSON


Pro.get_enrollment_customization_prestages(id: Union[int, str]) dict

Returns prestages using the specified enrollment customization by ID

Parameters:

id – Enrollment customization ID

Returns:

Enrollment customization prestages information in JSON


Pro.get_enrollment_customization_image(id: Union[int, str]) dict

Downloads the specified enrollment customization image to the current user’s Downloads folder

Parameters:

id – Enrollment customization image ID

Returns:

Success message stating that the enrollment customization image was downloaded


Pro.create_enrollment_customization(data: dict) dict

Creates an enrollment customization with JSON data

Parameters:

data – JSON data to create the enrollment customization with. For syntax information view Jamf’s documentation.

Returns:

New enrollment customization information in JSON


Pro.create_enrollment_customization_history_note(data: dict, id: Union[int, str]) dict

Creates enrollment customization history note with JSON data by ID

Parameters:
  • data – JSON data to create the enrollment customization history note with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

Returns:

New enrollment customization history note information in JSON


Pro.create_enrollment_customization_image(filepath: str) dict

Uploads an enrollment customization image

Parameters:

filepath – Filepath to the file to upload

Returns:

New enrollment customization image information in JSON


Pro.update_enrollment_customization(data: dict, id: Union[int, str]) dict

Updates an enrollment customization by ID with JSON data

Parameters:
  • data – JSON data to update enrollment customization with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

Returns:

Updated enrollment customization information in JSON


Pro.delete_enrollment_customization(id: Union[int, str]) str

Deletes an enrollment customization by ID

Parameters:

id – Enrollment customization ID

Returns:

Success message stating that the enrollment customization was deleted


enrollment-customization-preview

Pro.get_enrollment_customization_panels(id: Union[int, str]) dict

Returns all panels for a single enrollment customization by ID

Parameters:

id – Enrollment customization ID

Returns:

All enrollment customization panels in JSON


Pro.get_enrollment_customization_panel(id: Union[int, str], panel_id: Union[int, str]) dict

Returns a single panel for a single enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – Panel ID

Returns:

Enrollment customization panel information in JSON


Pro.get_enrollment_customization_ldap_panel(id: Union[int, str], panel_id: Union[int, str]) dict

Returns a single LDAP panel for a single enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – LDAP panel ID

Returns:

Enrollment customization LDAP panel information in JSON


Pro.get_enrollment_customization_sso_panel(id: Union[int, str], panel_id: Union[int, str]) dict

Returns a single SSO panel for a single enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – SSO panel ID

Returns:

Enrollment customization SSO panel information in JSON


Pro.get_enrollment_customization_text_panel(id: Union[int, str], panel_id: Union[int, str]) dict

Returns a single text panel for a single enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – Text panel ID

Returns:

Enrollment customization text panel information in JSON


Pro.get_enrollment_customization_text_panel_markdown(id: Union[int, str], panel_id: Union[int, str]) dict

Returns a single text panel markdown for a single enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – SSO panel ID

Returns:

Enrollment customization text panel markdown information in JSON


Pro.get_enrollment_customization_parsed_markdown(data: str) dict

Returns HTML based on provided markdown string in JSON data

Parameters:

data – JSON data with markdown to parse into HTML. For syntax information view Jamf’s documentation.

Returns:

HTML based on the provided markdown in JSON


Pro.create_enrollment_customization_ldap_panel(data: dict, id: Union[int, str]) dict

Creates a LDAP panel for a single enrollment customization by ID with JSON. If multiple LDAP access groups are defined with the same name and id, only one will be saved.

Parameters:
  • data – JSON data to create enrollment customization LDAP panel with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

Returns:

New enrollment customization LDAP panel in JSON


Pro.create_enrollment_customization_sso_panel(data: dict, id: Union[int, str]) dict

Creates a SSO panel for a single enrollment customization by ID with JSON data

Parameters:
  • data – JSON data to create enrollment customization SSO panel with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

Returns:

New enrollment customization SSO panel information in JSON


Pro.create_enrollment_customization_text_panel(data: dict, id: Union[int, str]) dict

Creates a text panel for a single enrollment customization by ID with JSON data

Parameters:
  • data – JSON data to create enrollment customization text panel with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

Returns:

New enrollment customization text panel information in JSON


Pro.update_enrollment_customization_ldap_panel(data: dict, id: Union[int, str], panel_id: Union[int, str]) dict

Updates a single LDAP panel for a single enrollment customization by ID with JSON. If multiple LDAP access groups are defined with the same name and id, only one will be saved.

Parameters:
  • data – JSON data to update enrollment customization LDAP panel with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

  • panel_id – LDAP panel ID

Returns:

Updated enrollment customization LDAP panel information in JSON


Pro.update_enrollment_customization_sso_panel(data: dict, id: Union[int, str], panel_id: Union[int, str]) dict

Updates a single SSO panel for a single enrollment customization by ID with JSON

Parameters:
  • data – JSON data to update enrollment customization SSO panel with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

  • panel_id – LDAP panel ID

Returns:

Updated enrollment customization SSO panel information in JSON


Pro.update_enrollment_customization_text_panel(data: dict, id: Union[int, str], panel_id: Union[int, str]) dict

Updates a single text panel for a single enrollment customization by ID with JSON

Parameters:
  • data – JSON data to update enrollment customization text panel with. For syntax information view Jamf’s documentation.

  • id – Enrollment customization ID

  • panel_id – Text panel ID

Returns:

Updated enrollment customization text panel information in JSON


Pro.delete_enrollment_customization_panel(id: Union[int, str], panel_id: Union[int, str]) str

Deletes a single panel from an enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – Panel ID

Returns:

Success message stating the enrollment customization panel was deleted


Pro.delete_enrollment_customization_ldap_panel(id: Union[int, str], panel_id: Union[int, str]) str

Deletes a single LDAP panel from an enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – LDAP panel ID

Returns:

Success message stating the enrollment customization LDAP panel was deleted


Pro.delete_enrollment_customization_sso_panel(id: Union[int, str], panel_id: Union[int, str]) str

Deletes a single SSO panel from an enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – SSO panel ID

Returns:

Success message stating the enrollment customization SSO panel was deleted


Pro.delete_enrollment_customization_text_panel(id: Union[int, str], panel_id: Union[int, str]) str

Deletes a single text panel from an enrollment customization by ID

Parameters:
  • id – Enrollment customization ID

  • panel_id – Text panel ID

Returns:

Success message stating the enrollment customization text panel was deleted


gsx-connection

Pro.get_gsx_connection() dict

Returns the Jamf Pro GSX connection information

Returns:

GSX connection information in JSON


Pro.get_gsx_connection_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns GSX connection history entries

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: “username!=admin and details==disabled”

Returns:

GSX connection history information in JSON


Pro.create_gsx_connection_test() dict

Test functionality of a GSX Connection


Pro.create_gsx_connection_history_note(data: dict) dict

Creates GSX connection history object with JSON data

Parameters:

data – JSON data to create the GSX connection history note with. For syntax information view Jamf’s documentation.

Returns:

New GSX connection history note information in JSON


Pro.update_gsx_connection(data: dict) dict

Updates Jamf Pro GSX Connection information with JSON data

Parameters:

data – JSON data to update the GSX connection with. For syntax information view Jamf’s documentation.

Returns:

Updated GSX connection information in JSON


Pro.replace_gsx_connection(data: dict) dict

Replaces Jamf Pro GSX Connection information with JSON data

Parameters:

data – JSON data to replace the GSX connection with. For syntax information view Jamf’s documentation.

Returns:

Replaced GSX connection information in JSON


health-check

Pro.get_health_check() dict

Returns Jamf Pro API status

Returns:

Jamf Pro API status, will return error code if not healthy


icon

Pro.get_icon(id: Union[int, str]) dict

Returns information on on a specified icon by ID

Parameters:

id – Icon ID

Returns:

Icon information in JSON


Pro.get_icon_image(id: Union[int, str], resolution: str = None, scale: str = None) str

Downloads a self service icon by ID along with res and scale options

Parameters:
  • id – Self service icon ID

  • resolution – Request a specific resolution of original, 300, or 512; invalid options will result in original resolution

  • scale – Request a scale; 0 results in original image, non-0 results in scaled to 300

Returns:

Success message stating the icon image was downloaded to the user’s Downloads folder


Pro.create_icon(filepath: str) dict

Uploads an icon with the specified local filepath

Parameters:

filepath

Returns:

Uploaded icon image information in JSON


inventory-information

Pro.get_inventory_information()

Returns statistics about managed/unmanaged devices and computers in the inventory

Returns:

Inventory information in JSON


inventory-preload

Pro.get_inventory_preloads(page: int = None, page_size: int = None, sort: str = ['id:asc'], filter: str = None) dict

Returns paged and sorted inventory preload records

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma. All inventory preload fields are supported, however fields added by extension attributes are not supported. If sorting by deviceType, use 0 for Computer and 1 for Mobile Device.

    Example: [“id:desc”, “deviceType:1”]

  • filter

    Allowing to filter inventory preload records. Default search is empty query - returning all results for the requested page. All inventory preload fields are supported, however fields added by extension attributes are not supported. If filtering by deviceType, use 0 for Computer and 1 for Mobile Device. Query in the RSQL format, allowing ==, !=, >, <, and =in=.

    Example: username==”admin”

Returns:

All inventory preloads in JSON


Pro.get_inventory_preload(id: Union[int, str]) dict

Returns an inventory preload record by ID

Parameters:

id – Inventory preload ID

Returns:

Inventory preload information in JSON


Pro.get_inventory_preloads_history(page: int = None, page_size: int = None, sort: str = ['date:desc'], filter: str = None) dict

Returns inventory preload history entries

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Allows filtering inventory preload history records. Default search is empty query - returning all results for the requested page. All inventory preload history fields are supported. Query in the RSQL format, allowing ==, !=, >, <, and =in=.

    Example: username==”admin”

Returns:

Inventory preloads history information in JSON


Pro.get_inventory_preloads_extension_attributes() dict

Returns extension attribute columns currently associated with inventory preload records

Returns:

All inventory preloads extension attributes in JSON


Pro.get_inventory_preloads_csv_template() str

Returns the inventory preload CSV file template

Returns:

CSV file template for the inventory preloads


Pro.get_inventory_preloads_csv() str

Returns the inventory preload records as CSV data

Returns:

CSV data of the inventory preload records


Pro.get_inventory_preloads_export(export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) str

Exports a collection of inventory preload records in CSV format

Parameters:
  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Example: [“username”, “department”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: export_labels=[“name”, “dept”] with matching: export_fields=[“username”, “department”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“department:desc”, “username:asc”]

  • filter

    Allows filtering inventory preload history records. Default search is empty query - returning all results for the requested page. All inventory preload history fields are supported. Query in the RSQL format, allowing ==, !=, >, <, and =in=.

    Example: username==”admin”

Returns:

CSV export of the inventory preloads


Pro.create_inventory_preload(data: dict) dict

Creates an inventory preload record with JSON

Parameters:

data – JSON data to create inventory preload record with. For syntax information view Jamf’s documentation.

Returns:

New inventory preload information in JSON


Pro.create_inventory_preloads_history_note(data: dict) dict

Creates inventory preload history note

Parameters:

data – JSON data to create inventory preload history note with. For syntax information view Jamf’s documentation.

Returns:

New inventory preloads history note information in JSON


Pro.create_inventory_preloads_csv_validation(filepath: str) dict

Validates a given CSV file. Serial number and device type are required. All other fields are optional. A CSV template can be downloaded from Pro.get_inventory_preloads_csv_template

Parameters:

filepath – Path to CSV file to be validated

Returns:

Whether or not the CSV file was valid in JSON


Pro.create_inventory_preloads_csv(filepath: str) dict

Creates one or more new Inventory Preload records using CSV. A CSV template can be downloaded from /v2/inventory-preload/csv-template. Serial number and device type are required. All other fields are optional. When a matching serial number exists in the Inventory Preload data, the record will be overwritten with the CSV data. If the CSV file contains a new username and an email address is provided, the new user is created in Jamf Pro. If the CSV file contains an existing username, the following user-related fields are updated in Jamf Pro. Full Name, Email Address, Phone Number, Position. This endpoint does not do full validation of each record in the CSV data. To do full validation, use the Pro.create_inventory_preloads_csv_validation method first.

Parameters:

filepath – Path to the CSV file use for inventory preload creation

Returns:

New inventory preload record information in JSON


Pro.update_inventory_preload(data: dict, id: Union[int, str]) dict

Updates an inventory preload record by ID with JSON

Parameters:
  • data – JSON data to update inventory preload with. For syntax information view Jamf’s documentation.

  • id – Inventory preload ID

Returns:

Updated inventory preload information in JSON


Pro.delete_inventory_preload(id: Union[int, str]) str

Deletes an inventory preload record by ID

Parameters:

id – Inventory preload ID

Returns:

Success message stating the inventory preload record was deleted


Pro.delete_inventory_preloads_all() str

Deletes all inventory preload records

Returns:

Success message stating all inventory preload records were deleted


jamf-connect

Pro.get_jamf_connect_settings() dict

Returns the Jamf Connect settings that you have access to see

Returns:

Jamf connect settings information in JSON


Pro.get_jamf_connect_config_profiles(page: int = None, page_size: int = None, sort: List[str] = ['profileId:asc'], filter: str = None) dict

Returns sorted, paginated config profiles linked to Jamf Connect

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort order is [“profileId:asc”]. Multiple sort criteria are supported and must be separated by a comma. Options are status, updated.

    Example [“profileId:asc”, “version:desc”]

  • filter

    Query in the RSQL format, allowing to filter results. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: status, updated, version This param can be combined with paging and sorting.

    Example: profileId==1001 and version==””

Returns:

All config profiles linked to Jamf Connect in JSON


Pro.get_jamf_connect_config_profile_deployment_tasks(uuid: str, page: int = None, page_size: int = None, sort: List[str] = ['status:desc'], filter: str = None)

Returns deployment tasks for specified config profile linked to Jamf Connect by ID

Parameters:
  • uuid – Jamf Connect config profile UUID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort order is [“status:desc”]. Multiple sort criteria are supported and must be separated by a comma. Options are status, updated.

    Example [“status:asc”, “updated:desc”]

  • filter

    Query in the RSQL format, allowing to filter results. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: status, updated, version This param can be combined with paging and sorting.

    Example: version==””

Returns:

All deployment tasks for a specific config profile linked to Jamf Connect in JSON


Pro.get_jamf_connect_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns sorted, paginated Jamf Connect history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Jamf Connect history information in JSON


Pro.create_jamf_connect_config_profile_deployment_task_retry(data: dict, uuid: str) str

Requests a retry of deployment task(s) of specified Jamf Connect config profile by UUID with JSON

Parameters:
  • data – JSON data to of deployment task ID(s) to retry. For syntax information view Jamf’s documentation.

  • uuid – Jamf Connect configuration profile UUID

Returns:

Success message stating that the Jamf Connect config profile was asked to retry


Pro.create_jamf_connect_history_note(data: dict) dict

Creates Jamf Connect history note with JSON

Parameters:

data – JSON data to create Jamf Connect history note with. For syntax information view Jamf’s documentation.

Returns:

New Jamf Connect history note information in JSON


Pro.update_jamf_connect_app_update_method(data: dict, uuid: str) dict

Updates the way the Jamf Connect app gets updated on computers with the scope of the specified configuration profile by UUID with JSON

Parameters:
  • data – JSON data to update Jamf Connect app update method with. For syntax information view Jamf’s documentation.

  • uuid – Jamf Connect config profile UUID

Returns:

Updated Jamf Connect app update method information in JSON


jamf-content-distribution-server

Pro.get_jamf_content_distribution_server_files() List[dict]

Returns a list of files and file metadata from the Jamf Content Distribution Server

Returns:

List of files and file metadata from the Jamf Content Distribution Server


Pro.get_jamf_content_distribution_server_file(file_name: str) dict

Returns a download URL for a specific file from the Jamf Content Distribution Server

Parameters:

file_name – Name of the file

Returns:

Download URL for a specific file from the Jamf Content in JSON


Pro.get_jamf_content_distribution_server_properties() dict

Returns Jamf Content Distribution Server properties

Returns:

Jamf Content Distribution Server properties in JSON


Pro.create_jamf_content_distribution_server_upload() dict

Creates a temporary record and returns the credentials and information needed for uploading the file to the Jamf Content Distribution Server

Returns:

Credentials and information needed for uploading the file to the Jamf Content Distribution Server in JSON


Pro.create_jamf_content_distribution_server_renew_credentials() dict

Renews the credentials needed for uploading the file to the Jamf Content Distribution Server

Returns:

Credentials and information needed for uploading the file to the Jamf Content Distribution Server in JSON


Pro.delete_jamf_content_distribution_server_file(file_name: str) str

Deletes a file from the Jamf Content Distribution Server by file name

Parameters:

file_name – Name of the file

Returns:

Success message stating the file was deleted from the Jamf Content Distribution Server


jamf-management-framework

Pro.create_jamf_management_framework_redeploy(id: Union[int, str])

Redeploys the Jamf Management Framework for enrolled computer by ID

Parameters:

id – Computer ID

Returns:

Information on the Jamf Management Framework redeploy in JSON


jamf-package

Pro.get_jamf_package(application: str) dict

Returns the packages for a given Jamf application by application key

Parameters:

application – The Jamf Application key. The only supported values are protect and connect.

Returns:

Jamf package information in JSON


jamf-pro-information

Pro.get_jamf_pro_information() dict

Returns basic information about the Jamf Pro Server

Returns:

Jamf Pro information in JSON


jamf-pro-initialization

Pro.create_jamf_pro_initialization(data: dict) dict

Set up a freshly installed Jamf Pro Server

Parameters:

data – JSON data to set up Jamf Pro Server with. For syntax information view Jamf’s documentation.

Returns:

New Jamf Pro Server information in JSON


Pro.create_jamf_pro_initialization_password(data: dict) dict

Provides database password during startup. Endpoint is accessible when database password was not configured and Jamf Pro server has not been initialized yet.

Parameters:

data – JSON data to provide the database password with. For syntax information view Jamf’s documentation.

Returns:

New Jamf Pro Server password information in JSON


jamf-pro-initialization-preview

All endpoints deprecated.


jamf-pro-notifications

Pro.get_jamf_pro_notifications() dict

Returns notifications for user and site

Returns:

All Jamf Pro notifications in JSON


Pro.delete_jamf_pro_notifications(type: str, id: Union[int, str]) str

Deletes notifications with give type and ID

Parameters:
  • type

    Type of the notification

    Options: APNS_CERT_REVOKED, APNS_CONNECTION_FAILURE, APPLE_SCHOOL_MANAGER_T_C_NOT_SIGNED, BUILT_IN_CA_EXPIRED, BUILT_IN_CA_EXPIRING, BUILT_IN_CA_RENEWAL_FAILED, BUILT_IN_CA_RENEWAL_SUCCESS, CLOUD_LDAP_CERT_EXPIRED, CLOUD_LDAP_CERT_WILL_EXPIRE, DEP_INSTANCE_EXPIRED, DEP_INSTANCE_WILL_EXPIRE, DEVICE_ENROLLMENT_PROGRAM_T_C_NOT_SIGNED, EXCEEDED_LICENSE_COUNT, FREQUENT_INVENTORY_COLLECTION_POLICY, GSX_CERT_EXPIRED, GSX_CERT_WILL_EXPIRE, HCL_BIND_ERROR, HCL_ERROR, INSECURE_LDAP, INVALID_REFERENCES_EXT_ATTR, INVALID_REFERENCES_POLICIES, INVALID_REFERENCES_SCRIPTS, JAMF_CONNECT_UPDATE, JAMF_PROTECT_UPDATE, JIM_ERROR, LDAP_CONNECTION_CHECK_THROUGH_JIM_FAILED, LDAP_CONNECTION_CHECK_THROUGH_JIM_SUCCESSFUL, MDM_EXTERNAL_SIGNING_CERTIFICATE_EXPIRED, MDM_EXTERNAL_SIGNING_CERTIFICATE_EXPIRING, MDM_EXTERNAL_SIGNING_CERTIFICATE_EXPIRING_TODAY, MII_HEARTBEAT_FAILED_NOTIFICATION, MII_INVENTORY_UPLOAD_FAILED_NOTIFICATION, MII_UNATHORIZED_RESPONSE_NOTIFICATION, PATCH_EXTENTION_ATTRIBUTE, PATCH_UPDATE, POLICY_MANAGEMENT_ACCOUNT_PAYLOAD_SECURITY_MULTIPLE, POLICY_MANAGEMENT_ACCOUNT_PAYLOAD_SECURITY_SINGLE, PUSH_CERT_EXPIRED, PUSH_CERT_WILL_EXPIRE, PUSH_PROXY_CERT_EXPIRED, SSO_CERT_EXPIRED, SSO_IDP_CERT_EXPIRED, SSO_CERT_WILL_EXPIRE, SSO_IDP_CERT_WILL_EXPIRE, TOMCAT_SSL_CERT_EXPIRED, TOMCAT_SSL_CERT_WILL_EXPIRE, USER_INITIATED_ENROLLMENT_MANAGEMENT_ACCOUNT_SECURITY_ISSUE, USER_MAID_DUPLICATE_ERROR, USER_MAID_MISMATCH_ERROR, USER_MAID_ROSTER_DUPLICATE_ERROR, VPP_ACCOUNT_EXPIRED, VPP_ACCOUNT_WILL_EXPIRE, VPP_TOKEN_REVOKED, DEVICE_COMPLIANCE_CONNECTION_ERROR, CONDITIONAL_ACCESS_CONNECTION_ERROR, AZURE_AD_MIGRATION_REPORT_GENERATED, BEYOND_CORP_CONNECTION_ERROR, APP_INSTALLERS_NEW_APP_VERSION_AVAILABLE, APP_INSTALLERS_NEW_APP_VERSION_DEPLOYMENT_STARTED, APP_INSTALLERS_APP_VERSION_REMOVED, APP_INSTALLERS_APP_TITLE_REMOVED, APP_INSTALLERS_DEPLOYMENT_INSTALLATION_FAILED, SAML_RESPONSE_ASSERTION_SIGNING_REQUIRED

  • id – Instance ID of the notification

Returns:

Success message stating the Jamf Pro notifications were deleted


jamf-pro-notifications-preview

All endpoints deprecated.


jamf-pro-server-url-preview

Pro.get_jamf_pro_server_url_settings() dict

Returns Jamf Pro Server URL settings

Returns:

Jamf Pro Server URL settings information in JSON


Pro.get_jamf_pro_server_url_settings_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc']) dict

Returns sorted, paginated Jamf Pro Server URL settings history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

Returns:

Jamf Pro Server URL settings history information in JSON


Pro.create_jamf_pro_server_url_settings_history_note(data: dict) dict

Creates Jamf Pro Server URL settings history note with JSON. Only usable on non-hosted JPS environments.

Parameters:

data – JSON data to create Jamf Pro Server URL settings history note with. For syntax information view Jamf’s documentation.

Returns:

New Jamf Pro Server URL settings history note information in JSON


Pro.update_jamf_pro_server_url_settings(data: dict) dict

Updates Jamf Pro Server URL settings with JSON. Only usable on non-hosted JPS environments.

Parameters:

data – JSON data to update the Jamf Pro Server URL settings with. For syntax information view Jamf’s documentation.

Returns:

Updated Jamf Pro Server URL settings information in JSON


jamf-pro-version

Pro.get_jamf_pro_version() dict

Returns information about the Jamf Pro Server including the current version

Returns:

Jamf Pro version information in JSON


jamf-protect

Pro.get_jamf_protect_config_profile_deployment_tasks(uuid: str, page: int = None, page_size: int = None, sort: List[str] = ['status:desc'], filter: str = None) dict

Returns deployment tasks linked to Jamf Protect config profiles by UUID

Parameters:
  • uuid – Jamf Protect config profile UUID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort order is [“status:desc”]. Multiple sort criteria are supported and must be separated by a comma.

    Example [“id:asc”, “version:desc”]

  • filter

    Query in the RSQL format, allowing to filter results. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: version, updated, status This param can be combined with paging and sorting.

    Example: name==”Test”

Returns:

Jamf Protect config profile deployment tasks information in JSON


Pro.get_jamf_protect_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns sorted, paginated Jamf Protect history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Jamf Protect history information in JSON


Pro.get_jamf_protect_plans(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all of the previously synced Jamf Protect Plans with information about their associated configuration profile

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: profileId, name, description, id, uuid. This param can be combined with paging and sorting.

    Example: id==1001

Returns:

All Jamf Protect plans in JSON


Pro.create_jamf_protect_config_profile_deployment_tasks_retry(data: dict, uuid: str) dict

Requests a retry of Jamf Protect install tasks with JSON by UUID

Parameters:
  • data – JSON data containing the IDs of the tasks to retry. For syntax information view Jamf’s documentation.

  • uuid – Jamf Protect config profile UUID

Returns:

Jamf Protect config profile deployment tasks retry information in JSON


Pro.create_jamf_protect_history_note(data: dict) dict

Creates a Jamf Protect history note with JSON

Parameters:

data – JSON data to create the Jamf Protect history note. For syntax information view Jamf’s documentation.

Returns:

New Jamf Protect history note information in JSON


Pro.create_jamf_protect_plans_sync() str

Syncs plans with Jamf Protect. Configuration profiles associated with new plans will be imported to Jamf Pro.

Returns:

Jamf Protect plans sync information in JSON


Pro.create_jamf_protect_api_configuration(data: dict) dict

Registers a Jamf Protect API configuration with Jamf Pro with JSON

Parameters:

data – JSON data to register the Jamf Protect API configuration with. For syntax information view Jamf’s documentation.

Returns:

New Jamf Protect API configuration information in JSON


Pro.update_jamf_protect_integration_settings(data: dict) dict

Updates the Jamf Protect integration settings with JSON

Parameters:

data – JSON data to update the Jamf Protect integration settings with. For syntax information view Jamf’s documentation.

Returns:

Updated Jamf Protect integration settings information in JSON


Pro.delete_jamf_protect_api_registration() dict

Deletes an existing Jamf Protect API registration if present. Jamf Protect API integration will be disabled.

Returns:

Success message stating the Jamf Protect API registration was deleted


jamf-remote-assist

Pro.get_jamf_remote_assist_sessions(page: int = None, page_size: int = None, sort: List[str] = ['sessionId:asc'], filter: str = None) dict

Returns tenants sessions history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is sessionId:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“sessionId:desc”, “deviceId:asc”]

  • filter

    Query in the RSQL format, allowing to filter session history items collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: sessionId, deviceId, sessionAdminId. This param can be combined with paging and sorting.

    Example: ‘sessionId==”1001”’

Returns:

Jamf Remote Assist sessions information in JSON


Pro.get_jamf_remote_assist_session(id: str) dict

Returns a specific session by session ID

Parameters:

id – Session ID

Returns:

Jamf Remote Assist session information in JSON


Pro.get_jamf_remote_assist_sessions_export(data: dict) str

Exports jamf remote assist history collection in CSV format

Parameters:

data – JSON data to export jamf remote assist history collection in CSV format. For syntax information view Jamf’s documentation.

Returns:

Jamf Remote Assist session export information in CSV


ldap

Pro.get_ldap_servers() dict

Returns all active servers including LDAP and cloud identity providers

Returns:

All active LDAP servers in JSON


Pro.get_ldap_local_servers() dict

Returns all not migrated, LDAP servers

Returns:

All local LDAP servers in JSON


Returns the configured access groups that contain the text in the search param

Returns:

LDAP group search information in JSON


local-admin-password

Pro.get_local_admin_password_settings() dict

Returns information about if Local Admin Password auto-deploy feature is enabled. When it is enabled, all computers will have the SetAutoAdminPassword command sent to them automatically.

Returns:

Local Admin Password auto-deploy information in JSON


Pro.get_local_admin_password_pending_rotations() dict

Returns information about all devices and usernames currently in the state of a pending LAPS rotation

Returns:

Pending rotations information in JSON


Pro.get_local_admin_password_accounts(clientManagementId: str) dict

Returns a full list of admin accounts that are LAPS capable

Parameters:

clientManagementId – Client management ID of target device

Returns:

All LAPS capable accounts for the device in JSON


Pro.get_local_admin_password_history(clientManagementId: str) dict

Returns the full history of all local admin passwords for all accounts for a specific management ID. History will include password, who viewed the password and when it was viewed. This will include rotation history as well.

Parameters:

clientManagementId – Client management ID of target device

Returns:

LAPS password viewed history for the device in JSON


Pro.get_local_admin_password_user_audit(clientManagementId: str, username: str) dict

Returns the full history of all local admin passwords for a specific username on a target device. History will include password, who viewed the password and when it was viewed. Get audit history by using the client management id and username as the path parameters. If multiple accounts with the same username exist, the MDM source will be selected by default.

Parameters:
  • clientManagementId – Client management ID of target device

  • username – Username to view audit information for

Returns:

LAPS password viewed history for the device and username in jSON


Pro.get_local_admin_password_user_guid_audit(clientManagementId: str, username: str, guid: str) dict

Returns the full history of all local admin passwords for a specific user guid on a target device. History will include password, who viewed the password and when it was viewed. Get audit history by using the client management id, username, and user guid as the path parameters.

Parameters:
  • clientManagementId – Client management ID of target device

  • username – Username to view audit information for

  • guid – User GUID to view audit information for

Returns:

LAPS password viewed history for the device, username, and user guid in JSON


Pro.get_local_admin_password_user_history(clientManagementId: str, username: str) dict

Returns the full history of all for a specific username on a target device. History will include date created, date last seen, expiration time, and rotational status. Get audit history by using the client management id and username as the path parameters.

Parameters:
  • clientManagementId – Client management ID of target device

  • username – Username to view audit information for

Returns:

LAPS historical records for the device and username in JSON


Pro.get_local_admin_password_user_guid_history(clientManagementId: str, username: str, guid: str) dict

Returns the full history of all for a specific user guid on a target device. History will include date created, date last seen, expiration time, and rotational status. Get audit history by using the client management id, username, and user guid as the path parameters.

Parameters:
  • clientManagementId – Client management ID of target device

  • username – Username to view history information for

  • guid – User GUID to view history information for

Returns:

LAPS historical records for the device, username, and user guid in JSON


Pro.get_local_admin_password_user_current(clientManagementId: str, username: str) dict

Returns current LAPS password for specified client by using the client management id and username as the path parameters. Once the password is viewed it will be rotated out with a new password based on the rotation time settings. If multiple accounts with the same username exist, the MDM source will be selected by default.

Parameters:
  • clientManagementId – Client management ID of target device

  • username – Username for the account

Returns:

Current local admin password used for user on device in JSON


Pro.get_local_admin_password_user_guid_current(clientManagementId: str, username: str, guid: str) dict

Returns current LAPS password for specified client by using the client management id, username, and user guid as the path parameters. Once the password is viewed it will be rotated out with a new password based on the rotation time settings.

Parameters:
  • clientManagementId – Client management ID of target device

  • username – Username for the account

  • guid – User GUID for the account

Returns:

Current local admin password used for user on device in JSON


Pro.update_local_admin_password_settings(data: dict) dict

Updates Local Admin Password auto-deploy feature to be enabled or not. When it is enabled (true), all computers will have the SetAutoAdminPassword command sent to them automatically.

Parameters:

data – JSON data to update local admin password settings with. For syntax information view Jamf’s documentation.

Returns:

Updated local admin password settings in JSON


Pro.update_local_admin_password(data: dict, clientManagementId: str) dict

Updates the LAPS password for a device. This will set the password for all LAPS capable accounts.

Parameters:
  • data – JSON data to update local admin password with. For syntax information view Jamf’s documentation.

  • clientManagementId – Client management ID of target device

Returns:

Information on the updated account in JSON


locales-preview

Pro.get_locales() dict

Returns locales that can be used in other features

Returns:

All locales in JSON


macos-managed-software-updates

Pro.get_macos_managed_software_updates() dict

Deprecated since version 1.3.0.

Returns available macOS managed software updates

Returns:

All available macOS managed software updates in JSON


Pro.create_macos_managed_software_updates(data: dict) dict

Deprecated since version 1.3.0.

Sends macOS managed software updates

Parameters:

data – JSON data to send macOS managed software updates with. For syntax information view Jamf’s documentation.

Returns:

Sent macOS managed software updates information in JSON


managed-software-updates

Pro.get_managed_software_updates_available() dict

Returns available macOS and iOS managed software updates

Returns:

Available macOS and iOS managed software update information in JSON


Pro.get_managed_software_updates_statuses(filter: str = None) dict

Returns managed software update statuses

Parameters:

filter

Query in the RSQL format, allowing to filter Managed Software Updates collection. Default filter is empty query - returning all results for the requested page.

Options: osUpdatesStatusId, device.deviceId, device.objectType, downloaded, downloadPercentComplete, productKey, status, deferralsRemaining, maxDeferrals, nextScheduledInstall, created and updated.

Returns:

Managed software update statuses information in JSON


Pro.get_managed_software_updates_plans(page: Union[int, str] = None, page_size: int = None, sort: List[str] = ['planUuid:asc'], filter: str = None) dict

Returns managed software update plans

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“planUuid:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“planUuid:desc”, “maxDeferrals:asc”]

  • filter

    Query in the RSQL format, allowing to filter Managed Software Updates collection. Default filter is empty query - returning all results for the requested page.

    Options: planUuid, device.deviceId, device.objectType, updateAction, versionType, specificVersion, maxDeferrals, recipeId, forceInstallLocalDateTime, state

    Example: ‘maxDeferrals >= 1 and versionType == “LATEST_ANY”’

Returns:

Managed software update plans in JSON


Pro.get_managed_software_updates_feature_toggle() dict

Returns current value of the Feature Toggle

Returns:

Status of the managed software updates feature toggle in JSON


Pro.get_managed_software_updates_feature_toggle_status() dict

Returns background status of the managed software updates feature toggle

Returns:

Background status of the managed software updates feature toggle in JSON


Pro.get_managed_software_updates_group_plans(id: Union[int, str], group_type: str) dict

Returns managed software update plans for a group by ID

Parameters:
  • id – Managed software update group ID

  • group_type

    Managed software update group type

    Options: COMPUTER_GROUP, MOBILE_DEVICE_GROUP

    Example: “COMPUTER_GROUP”

Returns:

Managed software update plans for a group in JSON


Pro.get_managed_software_updates_plan(id: str) dict

Returns a managed software update plan by UUID

Parameters:

id – Managed software update plan UUID

Returns:

Managed software update plan in JSON


Pro.get_managed_software_updates_plan_declarations(id: str) dict

Returns managed software update plan declarations by UUID

Parameters:

id – Managed software update plan UUID

Returns:

Managed software update plan declarations in JSON


Pro.get_managed_software_updates_plan_events(id: str) dict

Returns managed software update plan events by UUID

Parameters:

id – Managed software update plan UUID

Returns:

Managed software update plan events in JSON


Pro.get_managed_software_updates_computer_group(id: Union[int, str]) dict

Returns managed software update statuses for computer group by ID

Parameters:

id – Computer group ID

Returns:

Managed software update status information for a computer group in JSON


Pro.get_managed_software_updates_computer(id: Union[int, str]) dict

Returns managed software update statuses for computer by ID

Parameters:

id – Computer ID

Returns:

Managed software update status information for a computer in JSON


Pro.get_managed_software_updates_mobile_device_group(id: Union[int, str]) dict

Returns managed software update statuses for mobile device group by ID

Parameters:

id – Mobile device group ID

Returns:

Managed software update status information for a mobile device group in JSON


Pro.get_managed_software_updates_mobile_device(id: Union[int, str]) dict

Returns managed software update statuses for mobile device by ID

Parameters:

id – Mobile device ID

Returns:

Managed software update status information for a mobile device in JSON


Pro.create_managed_software_updates_plan(data: dict) dict

Creates a managed software update plan with JSON data

Parameters:

data – JSON data to create managed software update plan with. For syntax information view Jamf’s documentation.

Returns:

New managed software update plan in JSON


Pro.create_managed_software_updates_group_plan(data: dict) dict

Creates a managed software update plans for a group with JSON data

Parameters:

data – JSON data to create managed software update plans for a group with. For syntax information view Jamf’s documentation.

Returns:

New managed software update plans for the group in JSON


Pro.update_managed_software_updates_feature_toggle(data: dict) dict

Updates the value of the Feature Toggle - This endpoint is asynchronous, the provided value will not be immediately updated. Please use the following endpoint to track the status of your toggle request. Pro.get_managed_software_updates_feature_toggle_status

Parameters:

data – JSON data to update the managed software updates feature toggle with. For syntax information view Jamf’s documentation.

Returns:

Updated status of the managed software update feature toggle status in JSON



Pro.delete_managed_software_updates_feature_toggle_process() dict

“Break Glass” endpoint, not for nominal usage. Use this endpoint to forcefully abandon the feature-toggle background process if the status of the feature-toggle is ‘stuck’ or has reached an non-restartable failed state. Usage of this endpoint under nominal conditions is undefined and unsupported.

Returns:

Success message stating the managed software updates feature toggle process was abandoned


mdm

Pro.get_mdm_commands(page: int = None, page_size: int = None, sort: List[str] = ['dateSent:asc'], filter: str = 'dateSent>=1970-01-01T00:00:00Z') dict

Returns information about MDM commands made by Jamf Pro. The filter needs to be set to something otherwise it will return a 400 error.

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Default sort is dateSent:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“dateSent:desc”, “command:asc”]

  • filter

    Query in the RSQL format, allowing to filter, for a list of commands. All url must contain minimum one filter field. Fields allowed in the query: uuid, clientManagementId, command, status, clientType, dateSent, validAfter, dateCompleted, profileIdentifier, and active. This param can be combined with paging. Filter needs to be set to something otherwise it will return a 400 error.

    Example: ‘status==Pending’

Returns:

All MDM commands in JSON


Pro.create_mdm_command(data: dict) dict

Create and queue an MDM command with given JSON data

Parameters:

data – JSON data to create the MDM command with. For syntax information view Jamf’s documentation.

Returns:

New MDM command information in JSON


Pro.create_mdm_profile_renew(data: dict) dict

Renews the device’s MDM Profile, including the device identity certificate within the MDM Profile with JSON data.

Parameters:

data – JSON data to define which profiles to renew. For syntax information view Jamf’s documentation.

Returns:

Renewed MDM profile information in JSON


Pro.create_mdm_deploy_package(data: dict, verbose: bool = False) dict

Deploys packages to macOS devices using the InstallEnterpriseApplication MDM command.

Parameters:
  • data – JSON data to deploy package with. For syntax information view Jamf’s documentation.

  • verbose – Deploys packages to macOS devices using the InstallEnterpriseApplication MDM command.

Returns:

Deployed package information in JSON


mobile-device-apps

Pro.create_mobile_device_app_reinstall_config(data: dict) str

Creates a redeploy of the managed app configuration for a specific app on a specific device using the $APP_CONFIG_REINSTALL_CODE generated during deployment

Parameters:

data – JSON data to create the redeploy with. For syntax information view Jamf’s documentation.

Returns:

Success message stating the app config was redeployed


mobile-device-enrollment-profile

Pro.get_mobile_device_enrollment_profile(id: Union[int, str]) dict

Downloads the MDM enrollment profile to the current users Downloads folder by ID

Parameters:

id – MDM enrollment profile ID

Returns:

Mobile device enrollment profile information in JSON


mobile-device-extension-attributes-preview

Pro.get_mobile_device_extension_attributes(select: str = 'name') dict

Returns mobile device extension attribute values placed in select parameter. The only supported select value currently is name.

Parameters:

select – Extension attribute value to return, the only supported value currently is name. Default value is name.

Returns:

Mobile device extension attribute information in JSON


mobile-device-groups

Pro.get_mobile_device_groups_static(page: int = None, page_size: int = None, sort: List[str] = ['groupId:asc'], filter: str = None) dict

Returns all mobile device static group in JSON

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“groupId:asc”]. Available criteria to sort on: groupId, groupName, siteId.

    Example: [“groupName:desc”]

  • filter

    Query in the RSQL format, allowing to filter department collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: groupId, groupName, siteId. The siteId field can only be filtered by admins with full access. Any sited admin will have siteId filtered automatically. This param can be combined with paging and sorting.

    Example: ‘groupName==”staticGroup1”’

Returns:

All mobile device static groups in JSON


Pro.get_mobile_device_group_static(id: Union[int, str]) dict

Returns mobile device static group by ID

Parameters:

id – Mobile device static group ID

Returns:

Mobile device static group information in JSON


Pro.get_mobile_device_group_static_membership(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['displayName:asc'], filter: str = None) dict

Returns mobile device static group membership by ID

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“displayName:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Fields allowed in the sort: airPlayPassword, appAnalyticsEnabled, assetTag, availableSpaceMb, batteryLevel, bluetoothLowEnergyCapable, bluetoothMacAddress, capacityMb, lostModeEnabledDate, declarativeDeviceManagementEnabled, deviceId, deviceLocatorServiceEnabled, devicePhoneNumber, diagnosticAndUsageReportingEnabled, displayName, doNotDisturbEnabled, enrollmentSessionTokenValid, exchangeDeviceId, cloudBackupEnabled, osBuild, osRapidSecurityResponse, osSupplementalBuildVersion, osVersion, ipAddress, itunesStoreAccountActive, mobileDeviceId, languages, lastBackupDate, lastEnrolledDate, lastCloudBackupDate, lastInventoryUpdateDate, locales, locationServicesForSelfServiceMobileEnabled, lostModeEnabled, managed, mdmProfileExpirationDate, model, modelIdentifier, modelNumber, modemFirmwareVersion, quotaSize, residentUsers, serialNumber, sharedIpad, supervised, tethered, timeZone, udid, usedSpacePercentage, wifiMacAddress, deviceOwnershipType, building, department, emailAddress, fullName, userPhoneNumber, position, room, username, appleCareId, leaseExpirationDate, lifeExpectancyYears, poDate, poNumber, purchasePrice, purchasedOrLeased, purchasingAccount, purchasingContact, vendor, warrantyExpirationDate, activationLockEnabled, blockEncryptionCapable, dataProtection, fileEncryptionCapable, hardwareEncryptionSupported, jailbreakStatus, passcodeCompliant, passcodeCompliantWithProfile, passcodeLockGracePeriodEnforcedSeconds, passcodePresent, personalDeviceProfileCurrent, carrierSettingsVersion, cellularTechnology, currentCarrierNetwork, currentMobileCountryCode, currentMobileNetworkCode, dataRoamingEnabled, eid, network, homeMobileCountryCode, homeMobileNetworkCode, iccid, imei, imei2, meid, personalHotspotEnabled, voiceRoamingEnabled, roaming

    Example: [“displayName:desc”, “username:asc”]

  • filter

    Query in the RSQL format, allowing to filter mobile device collection. Default filter is empty query - returning all results for the requested page. This param can be combined with paging and sorting.

    Fields allowed in the query: airPlayPassword, appAnalyticsEnabled, assetTag, availableSpaceMb, batteryLevel, bluetoothLowEnergyCapable, bluetoothMacAddress, capacityMb, declarativeDeviceManagementEnabled, deviceId, deviceLocatorServiceEnabled, devicePhoneNumber, diagnosticAndUsageReportingEnabled, displayName, doNotDisturbEnabled, exchangeDeviceId, cloudBackupEnabled, osBuild, osSupplementalBuildVersion, osVersion, osRapidSecurityResponse, ipAddress, itunesStoreAccountActive, mobileDeviceId, languages, lastInventoryUpdateDate, locales, locationServicesForSelfServiceMobileEnabled, lostModeEnabled, managed, model, modelIdentifier, modelNumber, modemFirmwareVersion, quotaSize, residentUsers, serialNumber, sharedIpad, supervised, tethered, timeZone, udid, usedSpacePercentage, wifiMacAddress, building, department, emailAddress, fullName, userPhoneNumber, position, room, username, appleCareId, lifeExpectancyYears, poNumber, purchasePrice, purchasedOrLeased, purchasingAccount, purchasingContact, vendor, activationLockEnabled, blockEncryptionCapable, dataProtection, fileEncryptionCapable, passcodeCompliant, passcodeCompliantWithProfile, passcodeLockGracePeriodEnforcedSeconds, passcodePresent, personalDeviceProfileCurrent, carrierSettingsVersion, currentCarrierNetwork, currentMobileCountryCode, currentMobileNetworkCode, dataRoamingEnabled, eid, network, homeMobileCountryCode, homeMobileNetworkCode, iccid, imei, imei2, meid, personalHotspotEnabled, roaming

    Example: ‘displayName==”iPad”’


Pro.create_mobile_device_group_static(data: dict) dict

Creates mobile device static group with JSON data

Parameters:

data – JSON data to create the mobile device static group with. For syntax information view Jamf’s documentation.

Returns:

New mobile device static group information in JSON


Pro.update_mobile_device_group_static(data: dict, id: Union[int, str]) dict

Updates mobile device static group with JSON by ID

Parameters:
  • data – JSON data to update the mobile device static group with.For syntax information view Jamf’s documentation.

  • id – Mobile device static group ID

Returns:

Updated mobile device static group information in JSON


Pro.delete_mobile_device_group_static(id: Union[int, str]) str

Deletes mobile device static group by ID

Parameters:

id – Mobile device static group ID

Returns:

Success message stating the mobile device static group was deleted


mobile-device-groups-preview

Pro.get_mobile_device_groups() dict

Returns all mobile device groups

Returns:

All mobile device groups in JSON


mobile-device-prestages

Pro.get_mobile_device_prestages(page: int = None, page_size: int = None, sort: int = ['id:desc']) dict

Returns sorted and paged mobile device prestages

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Multiple sort criteria are supported and must be separated with a comma. Default sort is id:desc.

    Example: [“id:asc”, “defaultPrestage:desc”]

Returns:

All mobile device prestages in JSON


Pro.get_mobile_device_prestages_scopes() dict

Returns all device scopes for all mobile device prestages

Returns:

All prestage scopes for all mobile devices in JSON


Pro.get_mobile_device_prestages_sync_states() dict

Returns all prestage sync states for all prestages

Returns:

All prestage sync states for all prestages in JSON


Pro.get_mobile_device_prestage(id: Union[int, str]) dict

Returns a mobile device prestage by ID

Parameters:

id – Mobile device prestage ID

Returns:

Mobile device prestage information in JSON


Pro.get_mobile_device_prestage_attachments(id: Union[int, str]) dict

Returns attachments for a mobile device prestage by ID

Parameters:

id – Mobile device prestage ID

Returns:

Mobile device prestage attachments information in JSON


Pro.get_mobile_device_prestage_history(id: Union[int, str], page: int = None, page_size: int = None, sort: int = ['date:desc']) dict

Returns sorted and paged mobile device prestage history by ID

Parameters:
  • id – Mobile device prestage ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

Returns:

Mobile deice prestage history information in JSON


Pro.get_mobile_device_prestage_scope(id: Union[int, str]) dict

Returns device scope for a specific mobile device prestage by ID

Parameters:

id – Mobile device prestage ID

Returns:

Mobile device prestage scope information in JSON


Pro.get_mobile_device_prestage_sync_states(id: Union[int, str]) dict

Returns all prestage sync states for a single prestage by ID

Parameters:

id – Mobile device prestage ID

Returns:

All prestage sync states for the prestage in JSON


Pro.get_mobile_device_prestage_latest_sync_state(id: Union[int, str]) dict

Returns the latest sync state for a single prestage by ID

Parameters:

id – Mobile device prestage ID

Returns:

Latest sync state for the prestage in JSON


Pro.create_mobile_device_prestage(data: dict) dict

Creates a mobile device prestage with JSON data

Parameters:

data – JSON data to create mobile device prestage with. For syntax information view Jamf’s documentation.

Returns:

New mobile device prestage information in JSON


Pro.create_mobile_device_prestage_attachment(filepath: str, id: Union[int, str]) dict

Uploads a mobile device prestage attachment by ID and filepath

Parameters:
  • filepath – Literal path to file to upload

  • id – Mobile device prestage ID

Returns:

Uploaded mobile device prestage attachment information in JSON


Pro.create_mobile_device_prestage_history_note(data: dict, id: Union[int, str]) dict

Creates a mobile device prestage history note by ID with JSON

Parameters:
  • data – JSON data to create mobile device prestage history note with. For syntax information view Jamf’s documentation.

  • id – Mobile device prestage ID

Returns:

New mobile device prestage history note information in JSON


Pro.create_mobile_device_prestage_scope(data: dict, id: Union[int, str]) dict

Adds device scope for a specific mobile device prestage by ID

Parameters:
  • data – JSON data to add device scope with. For syntax information view Jamf’s documentation.

  • id – Mobile device prestage ID

Returns:

New mobile device prestage scope information in JSON


Pro.update_mobile_device_prestage(data: dict, id: Union[int, str]) dict

Updates a mobile device prestage by ID with JSON

Parameters:
  • data – JSON data to update mobile device prestage with. For syntax information view Jamf’s documentation.

  • id – Mobile device prestage ID

Returns:

Updated mobile device prestage information in JSON


Pro.replace_mobile_device_prestage_scope(data: dict, id: Union[int, str]) dict

Replaces device scope for a specific mobile device prestage by ID with JSON

Parameters:
  • data – JSON data to replace device scope with. For syntax information view Jamf’s documentation.

  • id – Mobile device prestage ID

Returns:

Replaced mobile device prestage scope information in JSON


Pro.delete_mobile_device_prestage(id: Union[int, str]) str

Deletes a mobile device prestage by ID

Parameters:

id – Mobile device prestage ID

Returns:

Success message stating the mobile device prestage was deleted


Pro.delete_mobile_device_prestage_attachment(data: dict, id: Union[int, str]) str

Deletes mobile device prestage attachment(s) by ID with JSON

Parameters:
  • data – JSON data to delete mobile device prestage attachments with. For syntax information view Jamf’s documentation.

  • id – Mobile device prestage ID

Returns:

Success message stating the mobile device prestage attachment was deleted


Pro.delete_mobile_device_prestage_scope(data: dict, id: Union[int, str]) dict

Removes device scope for a specific mobile device prestage by ID with JSON

Parameters:
  • data – JSON data to remove device scope with. For syntax information view Jamf’s documentation.

  • id – Mobile device prestage ID

Returns:

Mobile device prestage scope information in JSON


mobile-devices

Pro.get_mobile_devices(page: int = None, page_size: int = None, sort: List[str] = None) dict

Returns sorted and paginated mobile devices

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

Returns:

All mobile devices in JSON


Pro.get_mobile_devices_detail(section: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['displayName:asc'], filter: str = None) dict

Returns all sorted and paginated mobile devices with detailed info

Parameters:
  • section

    Section of mobile device details, if not specified, General section data is returned. Multiple section parameters are supported.

    Options: GENERAL, HARDWARE, USER_AND_LOCATION, PURCHASING, SECURITY, APPLICATIONS, EBOOKS, NETWORK, SERVICE_SUBSCRIPTIONS, CERTIFICATES, PROFILES, USER_PROFILES, PROVISIONING_PROFILES, SHARED_USERS, EXTENSION_ATTRIBUTES

    Example: [“GENERAL”, “HARDWARE”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is displayName:asc. Multiple sort criteria are supported and must be separated with a comma.

    Options: airPlayPassword, appAnalyticsEnabled, assetTag, availableSpaceMb, batteryLevel, bluetoothLowEnergyCapable, bluetoothMacAddress, capacityMb, lostModeEnabledDate, declarativeDeviceManagementEnabled, deviceId, deviceLocatorServiceEnabled, devicePhoneNumber, diagnosticAndUsageReportingEnabled, displayName, doNotDisturbEnabled, enrollmentSessionTokenValid, exchangeDeviceId, cloudBackupEnabled, osBuild, osSupplementalBuildVersion, osVersion, osRapidSecurityResponse, ipAddress, itunesStoreAccountActive, mobileDeviceId, languages, lastBackupDate, lastEnrolledDate, lastCloudBackupDate, lastInventoryUpdateDate, locales, locationServicesForSelfServiceMobileEnabled, lostModeEnabled, managed, mdmProfileExpirationDate, model, modelIdentifier, modelNumber, modemFirmwareVersion, quotaSize, residentUsers, serialNumber, sharedIpad, supervised, tethered, timeZone, udid, usedSpacePercentage, wifiMacAddress, deviceOwnershipType, building, department, emailAddress, fullName, userPhoneNumber, position, room, username, appleCareId, leaseExpirationDate, lifeExpectancyYears, poDate, poNumber, purchasePrice, purchasedOrLeased, purchasingAccount, purchasingContact, vendor, warrantyExpirationDate, activationLockEnabled, blockEncryptionCapable, dataProtection, fileEncryptionCapable, hardwareEncryptionSupported, jailbreakStatus, passcodeCompliant, passcodeCompliantWithProfile, passcodeLockGracePeriodEnforcedSeconds, passcodePresent, personalDeviceProfileCurrent, carrierSettingsVersion, cellularTechnology, currentCarrierNetwork, currentMobileCountryCode, currentMobileNetworkCode, dataRoamingEnabled, eid, network, homeMobileCountryCode, homeMobileNetworkCode, iccid, imei, imei2, meid, personalHotspotEnabled, voiceRoamingEnabled, roaming

    Example: [“deviceId:desc”, “displayName:asc”]

  • filter

    Query in the RSQL format, allowing to filter mobile device collection. Default filter is empty query - returning all results for the requested page.

    Options: airPlayPassword, appAnalyticsEnabled, assetTag, availableSpaceMb, batteryLevel, bluetoothLowEnergyCapable, bluetoothMacAddress, capacityMb, declarativeDeviceManagementEnabled, deviceId, deviceLocatorServiceEnabled, devicePhoneNumber, diagnosticAndUsageReportingEnabled, displayName, doNotDisturbEnabled, exchangeDeviceId, cloudBackupEnabled, osBuild, osSupplementalBuildVersion, osVersion, osRapidSecurityResponse, ipAddress, itunesStoreAccountActive, mobileDeviceId, languages, lastInventoryUpdateDate, locales, locationServicesForSelfServiceMobileEnabled, lostModeEnabled, managed, model, modelIdentifier, modelNumber, modemFirmwareVersion, quotaSize, residentUsers, serialNumber, sharedIpad, supervised, tethered, timeZone, udid, usedSpacePercentage, wifiMacAddress, building, department, emailAddress, fullName, userPhoneNumber, position, room, username, appleCareId, lifeExpectancyYears, poNumber, purchasePrice, purchasedOrLeased, purchasingAccount, purchasingContact, vendor, activationLockEnabled, blockEncryptionCapable, dataProtection, fileEncryptionCapable, passcodeCompliant, passcodeCompliantWithProfile, passcodeLockGracePeriodEnforcedSeconds, passcodePresent, personalDeviceProfileCurrent, carrierSettingsVersion, currentCarrierNetwork, currentMobileCountryCode, currentMobileNetworkCode, dataRoamingEnabled, eid, network, homeMobileCountryCode, homeMobileNetworkCode, iccid, imei, imei2, meid, personalHotspotEnabled, roaming

    Example: ‘displayName==”iPad” and deviceId==1001’


Pro.get_mobile_device(id: Union[int, str]) dict

Returns mobile device with limited details by ID

Parameters:

id – Mobile device ID

Returns:

Mobile device information in JSON


Pro.get_mobile_device_detail(id: Union[int, str]) dict

Returns mobile device with all info by ID

Parameters:

id – Mobile device ID

Returns:

Detailed mobile device information in JSON


Pro.get_mobile_device_paired_devices(id: Union[int, str], section: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['displayName:asc'], filter: str = None) dict

Returns all paired devices for a specific mobile device by ID

Parameters:
  • id – Mobile device ID

  • section

    Section of mobile device details, if not specified, General section data is returned. Multiple section parameters are supported.

    Options: GENERAL, HARDWARE, USER_AND_LOCATION, PURCHASING, SECURITY, APPLICATIONS, EBOOKS, NETWORK, SERVICE_SUBSCRIPTIONS, CERTIFICATES, PROFILES, USER_PROFILES, PROVISIONING_PROFILES, SHARED_USERS, EXTENSION_ATTRIBUTES

    Example: [“GENERAL”, “HARDWARE”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is displayName:asc. Multiple sort criteria are supported and must be separated with a comma.

    Options: airPlayPassword, appAnalyticsEnabled, assetTag, availableSpaceMb, batteryLevel, bluetoothLowEnergyCapable, bluetoothMacAddress, capacityMb, lostModeEnabledDate, declarativeDeviceManagementEnabled, deviceId, deviceLocatorServiceEnabled, devicePhoneNumber, diagnosticAndUsageReportingEnabled, displayName, doNotDisturbEnabled, enrollmentSessionTokenValid, osBuild, osSupplementalBuildVersion, osVersion, osRapidSecurityResponse, ipAddress, itunesStoreAccountActive, mobileDeviceId, languages, lastEnrolledDate, lastCloudBackupDate, lastInventoryUpdateDate, locales, lostModeEnabled, managed, mdmProfileExpirationDate, model, modelIdentifier, modelNumber, modemFirmwareVersion, serialNumber, supervised, timeZone, udid, usedSpacePercentage, wifiMacAddress, deviceOwnershipType, building, department, emailAddress, fullName, userPhoneNumber, position, room, username, appleCareId, leaseExpirationDate,lifeExpectancyYears, poDate, poNumber, purchasePrice, purchasedOrLeased, purchasingAccount, purchasingContact, vendor, warrantyExpirationDate, activationLockEnabled, blockEncryptionCapable, dataProtection, fileEncryptionCapable, hardwareEncryptionSupported, jailbreakStatus, passcodeCompliant, passcodeCompliantWithProfile, passcodeLockGracePeriodEnforcedSeconds, passcodePresent, personalDeviceProfileCurrent, carrierSettingsVersion, cellularTechnology, currentCarrierNetwork, currentMobileCountryCode, currentMobileNetworkCode, dataRoamingEnabled, eid, network, homeMobileCountryCode, homeMobileNetworkCode, iccid, imei, imei2, meid, personalHotspotEnabled, voiceRoamingEnabled, roaming

    Example: [“deviceId:desc”, “displayName:asc”]

  • filter

    Query in the RSQL format, allowing to filter mobile device collection. Default filter is empty query - returning all results for the requested page.

    Options: airPlayPassword, appAnalyticsEnabled, assetTag, availableSpaceMb, batteryLevel, bluetoothLowEnergyCapable, bluetoothMacAddress, capacityMb, declarativeDeviceManagementEnabled, deviceId, deviceLocatorServiceEnabled, devicePhoneNumber, diagnosticAndUsageReportingEnabled, displayName, doNotDisturbEnabled, osBuild, osSupplementalBuildVersion, osVersion, osRapidSecurityResponse, ipAddress, itunesStoreAccountActive, mobileDeviceId, languages, lastInventoryUpdateDate, locales, lostModeEnabled, managed, model, modelIdentifier, modelNumber, modemFirmwareVersion, serialNumber, supervised, timeZone, udid, usedSpacePercentage, wifiMacAddress, building, department, emailAddress, fullName, userPhoneNumber, position, room, username, appleCareId, lifeExpectancyYears, poNumber, purchasePrice, purchasedOrLeased, purchasingAccount, purchasingContact, vendor, activationLockEnabled, blockEncryptionCapable, dataProtection, fileEncryptionCapable, passcodeCompliant, passcodeCompliantWithProfile, passcodeLockGracePeriodEnforcedSeconds, passcodePresent, personalDeviceProfileCurrent, carrierSettingsVersion, currentCarrierNetwork, currentMobileCountryCode, currentMobileNetworkCode, dataRoamingEnabled, eid, network, homeMobileCountryCode, homeMobileNetworkCode, iccid, imei, imei2, meid, personalHotspotEnabled, roaming

    Example: ‘displayName==”iPad” and deviceId==1001’

Returns:

All paired devices for a specific mobile device in JSON


Pro.update_mobile_device(data: dict, id: Union[int, str]) dict

Updates mobile device by ID with JSON

Parameters:
  • data – JSON data to update mobile device with. For syntax information view Jamf’s documentation.

  • id – Mobile device ID

Returns:

Updated mobile device information in JSON


Pro.update_mobile_device_extension_attributes(attributes: dict, id: Union[int, str]) dict

Updates mobile device extension attributes by ID with JSON

Parameters:
  • attributes

    Dictionary object containing the extension attributes to update in the following format

    {“EA name 1”: “EA value 1”, “EA name 2”: “EA value 2”}

  • id – Mobile device ID

Returns:

Updated mobile device information in JSON


onboarding

Pro.get_onboarding_settings() dict

Returns the current onboarding settings configuration

Returns:

Current onboarding settings configuration in JSON


Pro.get_onboarding_eligible_apps(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

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

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

Returns:

Applications that are eligible to be used in an onboarding configuration in JSON


Pro.get_onboarding_eligible_configuration_profiles(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

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

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

Returns:

Configuration profiles that are eligible to be used in an onboarding configuration in JSON


Pro.get_onboarding_eligible_policies(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

Returns a list of policies that are eligible to be used in an onboarding configuration

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

Returns:

Policies that are eligible to be used in an onboarding configuration in JSON


Pro.get_onboarding_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns onboarding history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“date:desc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: ‘username!=admin and date<2019-12-15’

Returns:

Onboarding history in JSON



Pro.get_onboarding_history_export(export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) str

Exports onboarding history collection in CSV format

Parameters:
  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Options: id, username, date, note, details

    Example: [“id”, “username”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: export_labels=[“identification”, “name”] with matching: export_fields=[“id”, “username”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“date:desc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “date:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: ‘username==”exampleuser”’


Pro.create_onboarding_history_note(data: dict) dict

Creates an onboarding history note with JSON

Parameters:

data – JSON data to create the onboarding history note with. For syntax information view Jamf’s documentation.

Returns:

New onboarding history note information in JSON


Pro.update_onboarding_settings(data: dict) dict

Updates the onboarding settings with JSON

Parameters:

data – JSON data to update the onboarding settings with. For syntax information view Jamf’s documentation.

Returns:

Updated onboarding settings in JSON


packages

Pro.get_packages(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all packages

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “fileName:asc”]

  • filter

    Query in the RSQL format, allowing to filter packages collection. Default filter is empty query - returning all results for the requested page.

    Options: id, fileName, packageName, categoryId, info, notes, manifestFileName

    Example: ‘fileName==”example.pkg”’

Returns:

All packages information in JSON


Pro.get_package(id: Union[int, str]) dict

Returns package by ID

Parameters:

id – Package ID

Returns:

Package information in JSON


Pro.get_package_history_notes(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns package history notes by ID

Parameters:
  • id – Package ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: ‘username!=admin and date<2019-12-15’

Returns:

Package history notes information in JSON


Pro.get_package_export(export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) str

Returns packages collection in CSV format

Parameters:
  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Options: id, packageName, categoryId, fileName, info, notes, manifestFileName, priority, fillUserTemplate, fillExistingUsers, uninstall, rebootRequired, osRequirements, swu, ignoreConflicts, size

    Example: [“id”, “fileName”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: export_labels=[“identification”, “name”] with matching: export_fields=[“id”, “fileName”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Options: id, packageName, categoryId, fileName, info, notes, manifestFileName, priority, fillUserTemplate, fillExistingUsers, uninstall, rebootRequired, osRequirements, swu, ignoreConflicts, size

    Example: [“id:desc”, “fileName:asc”]

  • filter

    Query in the RSQL format, allowing to filter packages collection. Default filter is empty query - returning all results for the requested page.

    Options: id, packageName, categoryId, fileName, info, notes, manifestFileName, priority, fillUserTemplate, fillExistingUsers, uninstall, rebootRequired, osRequirements, swu, ignoreConflicts, size

    Example: ‘fileName==”example.pkg”’

Returns:

Packages collection in CSV format



Pro.create_package(data: dict) dict

Creates a package with JSON

Parameters:

data – JSON data to create the package with. For syntax information view Jamf’s documentation.

Returns:

New package information in JSON


Pro.create_package_history_note(data: dict, id: Union[int, str]) dict

Creates a package history note with JSON by ID

Parameters:
  • data – JSON data to create the package history note with. For syntax information view Jamf’s documentation.

  • id – Package ID

Returns:

New package history note information in JSON


Pro.create_package_manifest(filepath: str, id: Union[int, str]) dict

Creates a manifest for a package by ID

Parameters:
  • filepath – Path to the manifest file

  • id – Package ID

Returns:

New package manifest information in JSON


Pro.create_package_file(filepath: str, id: Union[int, str]) dict

Uploads a file to a package by ID

Parameters:
  • filepath – Path to the file

  • id – Package ID

Returns:

New package file information in JSON


Pro.update_package(data: dict, id: Union[int, str]) dict

Updates a package by ID with JSON

Parameters:
  • data – JSON data to update the package with. For syntax information view Jamf’s documentation.

  • id – Package ID

Returns:

Updated package information in JSON


Pro.delete_package(id: Union[int, str] = None, ids: List[Union[int, str]] = None) str

Deletes a package or multiple packages by ID or IDs

Parameters:
  • id – Package ID

  • ids – List of package IDs

Returns:

Success message stating that the package or packages was deleted


Pro.delete_package_manifest(id: Union[int, str]) str

Deletes a package manifest by ID


parent-app-preview

Pro.get_parent_app_settings() dict

Returns the current Jamf Parent app settings

Returns:

Jamf Parent app settings information in JSON


Pro.get_parent_app_settings_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns Jamf Parent app settings history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: ‘username!=admin and details==disabled and date<2019-12-15’

Returns:

Jamf Parent app settings history information in JSON


Pro.create_parent_app_settings_history_note(data: dict) dict

Creates a Jamf Parent app settings history note with JSON

Parameters:

data – JSON data to create the Jamf parent app settings history note with. For syntax information view Jamf’s documentation.

Returns:

New Jamf Parent app settings history note information in JSON


Pro.update_parent_app_settings(data: dict) dict

Updates Jamf Parent app settings with JSON

Parameters:

data – JSON data to update Jamf Parent app settings with. For syntax information view Jamf’s documentation.

Returns:

Updated Jamf Parent app settings information in JSON


patch-management

Pro.create_patch_management_disclaimer_accept() str

Accepts patch management disclaimer

Returns:

Success message stating the patch management disclaimer was accepted


patch-policies

Pro.get_patch_policies(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns all patch policies

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“policyName:asc”, “id:desc”]

  • filter

    Query in the RSQL format, allowing to filter Patch Policy collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, policyName, policyEnabled, policyTargetVersion, policyDeploymentMethod, softwareTitle, softwareTitleConfigurationId, pending, completed, deferred, and failed. This param can be combined with paging and sorting.

    Example: ‘policyName==”Example name”’

Returns:

All patch policies information in JSON


Pro.get_patch_policies_policy_details(page: int = None, page_size: int = None, sort: List[str] = None, filter: str = None)

Returns policy details on all patch policies

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“id:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter Patch Policy collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name, enabled, targetPatchVersion, deploymentMethod, softwareTitleId, softwareTitleConfigurationId, killAppsDelayMinutes, killAppsMessage, isDowngrade, isPatchUnknownVersion, notificationHeader, selfServiceEnforceDeadline, selfServiceDeadline, installButtonText, selfServiceDescription, iconId, reminderFrequency, reminderEnabled. This param can be combined with paging and sorting.

    Example: ‘name == “Example Name”’

Returns:

Policy details for all patch policies in JSON


Pro.get_patch_policy_dashboard_v2(id: Union[int, str]) dict

Returns whether or not the requested patch policy is on the dashboard by ID

Parameters:

id – Patch policy ID

Returns:

Patch policy information in JSON


Pro.create_patch_policy_dashboard_v2(id: Union[int, str]) str

Adds a patch policy to the dashboard by ID

Parameters:

id – Patch policy ID

Returns:

Success message stating that the patch policy was added to the dashboard


Pro.delete_patch_policy_dashboard_v2(id: Union[int, str]) str

Deletes a patch policy from the dashboard by ID

Parameters:

id – Patch policy ID

Returns:

Success message stating that the patch policy was removed from the dashboard


patch-policy-logs

Pro.get_patch_policy_logs(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['deviceName:asc'], filter: str = None) dict

Returns patch policy logs by ID

Parameters:
  • id – Patch policy ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“deviceName:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“deviceName:desc”]

  • filter

    Query in the RSQL format, allowing to filter Patch Policy Logs collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: deviceId, deviceName, statusCode, statusDate, attemptNumber, ignoredForPatchPolicyId. This param can be combined with paging and sorting.

    Example: “deviceId==1001”

Returns:

Patch policy logs information in JSON


Pro.get_patch_policy_logs_eligible_retry_count(id: Union[int, str]) dict

Returns the count of the patch policy logs for the patch policy ID that are eligible for a retry attempt

Parameters:

id – Patch policy ID

Returns:

Count of patch policy logs that are eligible for a retry attempt in JSON


Pro.get_patch_policy_log_device(id: Union[int, str], deviceId: Union[int, str]) dict

Returns a patch policy log for a device by ID and deviceID

Parameters:
  • id – Patch policy ID

  • deviceId – Device ID

Returns:

Patch policy log information for a device in JSON


Pro.get_patch_policy_log_device_detail(id: Union[int, str], deviceId: Union[int, str]) dict

Returns a detailed patch policy log for a device by ID and deviceId

Parameters:
  • id – Patch policy ID

  • deviceId – Device ID

Returns:

Detailed patch policy log information for a device in JSON


Pro.create_patch_policy_logs_retry_devices(data: dict, id: Union[int, str]) str

Sends retry attempts for a specific device in a patch policy with JSON by ID

Parameters:
  • data – JSON data to create patch policy log retries with. For syntax information view Jamf’s documentation.

  • id – Patch policy ID

Returns:

Success message stating that the specified patch policy log for the specified devices were retried


Pro.create_patch_policy_logs_retry_devices_all(id: Union[int, str]) str

Sends retry attempts for all devices in a patch policy

Parameters:

id – Patch policy ID

Returns:

Success message stating that the specified patch policy logs for all devices were retried


patch-policy-logs-preview

All endpoints deprecated.


patch-software-title-configurations

Pro.get_patch_software_title_configurations() dict

Returns all patch software title configurations

Returns:

All patch software title configurations information in JSON


Pro.get_patch_software_title_configuration(id: Union[int, str]) dict

Returns patch software title configuration by ID

Parameters:

id – Software title configuration ID

Returns:

Patch software title configuration information in JSON


Pro.get_patch_software_title_configuration_dashboard(id: Union[int, str]) dict

Returns whether or not the requested software title configuration is on the dashboard by ID

Parameters:

id – Patch software title configuration ID

Returns:

Whether the software title configuration is on the dashboard in JSON


Pro.get_patch_software_title_configuration_definitions(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['absoluteOrderId:asc'], filter: str = None) dict

Returns patch software title definitions by ID

Parameters:
  • id – Patch software title configuration ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“absoluteOrderId:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“releaseDate:asc”]

  • filter

    Query in the RSQL format, allowing to filter Patch Software Title Definition collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, version, minimumOperatingSystem, releaseDate, reboot, standalone and absoluteOrderId. This param can be combined with paging and sorting.

    Example: ‘id==”1001”’

Returns:

Patch software title definition in JSON


Pro.get_patch_software_title_configuration_dependencies(id: Union[int, str]) dict

Returns Patch Software Title Configuration Dependencies by ID

Parameters:

id – Patch Software Title Configuration ID

Returns:

Patch software title configuration dependencies in JSON


Pro.get_patch_software_title_configuration_export(id: Union[int, str], columns_to_export: List[str] = ['all'], page: int = None, page_size: int = None, sort: List[str] = ['computerName:asc'], filter: str = None) str

Returns CSV data on patch software title configuration data by ID

Parameters:
  • id – Patch software title configuration ID

  • columns_to_export – List of column names to export. Allowed fields: all, computerName, deviceId, username, operatingSystemVersion, lastContactTime, buildingName, departmentName, siteName, version.

  • filter

    Query in the RSQL format, allowing to filter Patch Report collection on version equality only. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: version. Comparators allowed in the query: ==, != This param can be combined with paging and sorting.

    Example: “version==10.1”

Returns:

CSV formatted string of the requested patch software title configuration


Pro.get_patch_software_title_configuration_extension_attributes(id: Union[int, str]) List[dict]

Returns software title extension attributes by ID

Parameters:

id – Patch software title configuration ID

Returns:

Patch software title configuration extension attributes information in a list of dictionaries


Pro.get_patch_software_title_configuration_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns specified patch software title configuration history by ID

Parameters:
  • id – Patch software title configuration ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“date:desc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“username:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: “username!=admin and details==disabled”

Returns:

Patch software title configuration history information in JSON


Pro.get_patch_software_title_configuration_patch_report(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['computerName:asc'], filter: str = None) dict

Returns patch software title configuration patch report by ID

Parameters:
  • id – Patch software title configuration ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“computerName:asc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“computerName:desc”, “buildingName:asc”]

  • filter

    Query in the RSQL format, allowing to filter patch report collection on version equality only. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: version. Comparators allowed in the query: ==, != This param can be combined with paging and sorting.

    Example: “version==10.1”

Returns:

Patch software title configuration report information in JSON


Pro.get_patch_software_title_configuration_patch_summary(id: Union[int, str]) dict

Returns active patch summary for the patch software title configuration by ID

Parameters:

id – Patch software title configuration ID

Returns:

Active patch summary for the patch software title configuration in JSON


Pro.get_patch_software_title_configuration_patch_versions(id: Union[int, str]) List[dict]

Returns patch versions for the patch software title configuration by ID

Parameters:

id – Patch software title configuration ID

Returns:

Patch versions for the patch software title configuration in a list of dictionaries


Pro.create_patch_software_title_configuration(data: dict) dict

Creates patch software title configuration with JSON data

Parameters:

data – JSON data to create the patch software title configuration with. For syntax information view Jamf’s documentation.

Returns:

New patch software title configuration information in JSON


Pro.create_patch_software_title_configuration_dashboard(id: Union[int, str]) str

Adds patch software title configuration to the dashboard by ID

Parameters:

id – Patch software title configuration ID

Returns:

Success message stating the patch software title configuration was added to the dashboard


Pro.create_patch_software_title_configuration_history_note(data: dict, id: Union[int, str]) dict

Creates patch software title configuration history note by ID with JSON

Parameters:
  • data – JSON data to create the patch software title configuration history note with. For syntax information view Jamf’s documentation.

  • id – Patch software title configuration ID

Returns:

New patch policy title configuration history note information in JSON


Pro.update_patch_software_title_configuration(data: dict, id: Union[int, str]) dict

Updates patch software title configuration with JSON by ID

Parameters:
  • data – JSON data to update the patch software title configuration history note with. For syntax information view Jamf’s documentation.

  • id – Patch software title configuration ID

Returns:

Updated patch policy title configuration history note information in JSON


Pro.delete_patch_software_title_configuration(id: Union[int, str]) str

Deletes patch software title configuration by ID

Parameters:

id – Patch software title configuration ID

Returns:

Success message stating the patch software title configuration was successfully deleted


Pro.delete_patch_software_title_configuration_dashboard(id: Union[int, str]) str

Removes a patch software title configuration from the dashboard

Parameters:

id – Patch software title configuration ID

Returns:

Success message stating the patch software title configuration was removed from the dashboard


policies-preview

Pro.get_policy_properties() dict

Returns policy properties

Returns:

All policy properties in JSON


Pro.update_policy_properties(data: dict) dict

Updates policy properties with JSON

Parameters:

data – JSON data to update policy properties with. For syntax information view Jamf’s documentation.

Returns:

Updated policy properties information in JSON


re-enrollment-preview

Pro.get_reenrollment_settings() dict

Returns re-enrollment settings

Returns:

Re-enrollment settings information in JSON


Pro.get_reenrollment_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc']) dict

Returns paginated and sorted re-enrollment history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

Returns:

Re-enrollment history information in JSON


Pro.get_reenrollment_history_export(export_fields: List[str] = None, export_labels: List[str] = None, page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) str

Exports reenrollment history collection in CSV format

Parameters:
  • export_fields

    Export fields parameter, used to change default order or ignore some of the response properties. Default is empty array, which means that all fields of the response entity will be serialized.

    Options: id, username, date, note, details

    Example: [“id”, “username”]

  • export_labels

    Export labels parameter, used to customize fieldnames/columns in the exported file. Default is empty array, which means that response properties names will be used. Number of the provided labels must match the number of export-fields

    Example: export_labels=[“identification”, “name”] with matching: export_fields=[“id”, “username”]

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “date:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name. This param can be combined with paging and sorting.

    Example: username==”exampleuser”

Returns:

CSV export of re-enrollment history information


Pro.create_reenrollment_history_note(data: dict) dict

Adds specified re-enrollment history note with JSON

Parameters:

data – JSON data to create re-enrollment history note with. For syntax information view Jamf’s documentation.

Returns:

New re-enrollment history note information in JSON


Pro.update_reenrollment_settings(data: dict) dict

Updates the re-enrollment settings

Parameters:

data – JSON data to update re-enrollment settings with. For syntax information view Jamf’s documentation.

Returns:

Updated re-enrollment settings information in JSON


remote-administration

Pro.get_remote_administration_configurations(page: int = None, page_size: int = None) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Returns remote administration configurations

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

Returns:

All remote administration configurations in JSON


return-to-service

Pro.get_return_to_service_configurations() dict

Returns all return to service configurations

Returns:

All return to service configurations in JSON


Pro.get_return_to_service_configuration(id: Union[int, str]) dict

Returns return to service configuration by ID

Parameters:

id – Return to service configuration ID

Returns:

Return to service configuration information in JSON


Pro.create_return_to_service_configuration(data: dict) dict

Creates return to service configuration with JSON data

Parameters:

data – JSON data to create return to service configuration with. For syntax information view Jamf’s documentation.


Pro.update_return_to_service_configuration(data: dict, id: Union[int, str]) dict

Updates return to service configuration with JSON data by ID

Parameters:
  • data – JSON data to update return to service configuration with. For syntax information view Jamf’s documentation.

  • id – Return to service configuration ID

Returns:

Updated return to service configuration information in JSON


Pro.delete_return_to_service_configuration(id: Union[int, str]) str

Deletes return to service configuration by ID

Parameters:

id – Return to service configuration ID

Returns:

Success message stating the return to service configuration was successfully deleted


scheduler

Pro.get_scheduler_jobs() dict

Returns all Jamf Pro scheduler jobs

Returns:

All scheduler jobs in JSON


Pro.get_scheduler_job_triggers(job_key: str, page: int = None, page_size: int = None, sort: List[str] = ['nextFireTime:asc'], filter: str = None) dict

Returns all triggers for a scheduler job by job key

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorts results by one or more criteria, following the format [“property:asc/desc”]. Default sort is “nextFireTime:asc”.

    Example: [“nextFireTime:desc”, “previousFireTime:asc”]

  • filter

    Query in the RSQL format, allowing to filter the Jamf Pro Scheduler triggers collection. Default filter is empty string - returning all results for the requested page. Fields allowed in the query: triggerKey, previousFireTime, nextFireTime.

    Example: “triggerKey==exampleTriggerKey”

Returns:

All specified scheduler job triggers in JSON


Pro.get_scheduler_summary() dict

Returns a summary of the Jamf Pro scheduler

Returns:

Scheduler summary information in JSON


scripts

Pro.get_scripts(page: int = None, page_size: int = None, sort: List[str] = ['name:asc'], filter: str = None) dict

Returns sorted and paged scripts

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is name:asc. Multiple sort criteria are supported and must be separated with a comma. Fields allowed in the query: id, name, info, notes, priority, categoryId, categoryName, parameter4 up to parameter11, osRequirements, scriptContents.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter scripts collection. Default search is empty query - returning all results for the requested page. Fields allowed in the query: id, name, info, notes, priority, categoryId, categoryName, parameter4 up to parameter11, osRequirements, scriptContents. This param can be combined with paging and sorting.

    Example: categoryName==”Category” and name==”script name”

Returns:

All scripts in JSON


Pro.get_script(id: Union[int, str]) dict

Returns script by ID

Parameters:

id – Script ID

Returns:

Script information in JSON


Pro.get_script_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['name:asc'], filter: str = None) dict

Returns sorted and paged script history by ID

Parameters:
  • id – Script ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Script history information in JSON


Pro.get_script_file(id: Union[int, str]) str

Not working in Swagger documentation or here, returns 500 error

Downloads a text file of the script contents by ID

Parameters:

id – Script ID

Returns:

Success message stating that the script file was successfully downloaded to the user’s Downloads folder


Pro.create_script(data: dict) dict

Creates a script with JSON

Parameters:

data – JSON data to create script with. For syntax information view Jamf’s documentation.

Returns:

New script information in JSON


Pro.create_script_history_note(data: dict, id: Union[int, str]) dict

Creates specified script history note by ID with JSON

Parameters:
  • data – JSON data to create the script history note with. For syntax information view Jamf’s documentation.

  • id – Script ID

Returns:

New script history note information in JSON


Pro.update_script(data: dict, id: Union[int, str]) dict

Updates the script with ID by JSON

Parameters:
Returns:

Updated script information in JSON


Pro.delete_script(id: Union[int, str]) dict

Deletes a script by ID

Parameters:

id – Script ID

Returns:

Success message stating the script was deleted


self-service

Pro.get_self_service_settings() dict

Returns the Self Service settings of the Jamf Pro server

Returns:

Self Service settings information in JSON


Pro.update_self_service_settings(data: dict) dict

Updates the Self Service settings with JSON

Parameters:

data – JSON data to update Self Service settings with. For syntax information view Jamf’s documentation.

Returns:

Updated Self Service settings information in JSON


self-service-branding-ios

Pro.get_self_service_branding_ios_configurations(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

Returns paged and sorted Self Service branding configurations for iOS

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “brandingName:asc”]

Returns:

All Self Service branding configurations for iOS in JSON


Pro.get_self_service_branding_ios_configuration(id: Union[int, str]) dict

Returns iOS Self Service branding configuration by ID

Parameters:

id – iOS Self Service branding configuration ID

Returns:

Self Service branding configuration for iOS in JSON


Pro.create_self_service_branding_ios_configuration(data: dict) dict

Creates iOS Self Service branding configuration with JSON

Parameters:

data – JSON data to create iOS Self Service branding configuration with. For syntax information view Jamf’s documentation.

Returns:

New Self Service branding configuration for iOS in JSON


Pro.update_self_service_branding_ios_configuration(data: dict, id: Union[int, str]) dict

Updates iOS Self Service branding configuration with JSON by ID

Parameters:
  • data – JSON data to update iOS Self Service branding configuration with. For syntax information view Jamf’s documentation.

  • id – iOS Self Service branding configuration ID

Returns:

Updated Self Service branding configuration for iOS in JSON


Pro.delete_self_service_branding_ios_configuration(id: Union[int, str]) dict

Deletes iOS Self Service branding configuration by ID

Parameters:

id – iOS Self Service branding configuration by ID

Returns:

Success message stating the Self Service branding configuration for iOS was deleted


self-service-branding-macos

Pro.get_self_service_branding_macos_configurations(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

Returns paged and sorted Self Service branding configuration for macOS

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “brandingName:asc”]

Returns:

All Self Service branding configurations for macOS in JSON


Pro.get_self_service_branding_macos_configuration(id: Union[int, str]) dict

Returns macOS Self Service branding configuration by ID

Parameters:

id – macOS Self Service branding configuration ID

Returns:

Self Service branding configuration for macOS in JSON


Pro.create_self_service_branding_macos_configuration(data: dict) dict

Creates macOS Self Service branding configuration with JSON

Parameters:

data – JSON data to create macOS Self Service branding configuration with. For syntax information view Jamf’s documentation.

Returns:

New Self Service branding configuration for macOS in JSON


Pro.update_self_service_branding_macos_configuration(data: dict, id: Union[int, str]) dict

Updates macOS Self Service branding configuration with JSON by ID

Parameters:
  • data – JSON data to update macOS Self Service branding configuration with. For syntax information view Jamf’s documentation.

  • id – macOS Self Service branding configuration ID

Returns:

Updated Self Service branding configuration for macOS in JSON


Pro.delete_self_service_branding_macos_configuration(id: Union[int, str]) dict

Deletes macOS Self Service branding configuration by ID

Parameters:

id – macOS Self Service branding configuration by ID

Returns:

Success message stating the Self Service branding configuration for macOS was deleted


self-service-branding-preview

Pro.create_self_service_branding(filepath: str) dict

Uploads a self service branding image by ID and filepath

Parameters:
  • filepath – Literal path to file to upload

  • id – Self Service branding ID

Returns:

Uploaded Self Service branding image information in JSON


sites

Pro.get_sites() List[dict]

Returns all sites

Returns:

All sites in JSON


Pro.get_site_objects(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['objectType:asc'], filter: str = None) List[dict]

Returns site objects for Site ID, with the ability to filter out different object types and object IDs for the site ID

Parameters:
  • id – Site ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorts results by one or more criteria, following the format [“property:asc/desc”]. Default sort is “objectType:asc”.

    Example: [“objectType:desc”, “objectId:asc”]

  • filter

    Query in the RSQL format, allowing to filter the site objects collection. Default filter is empty string - returning all results for the requested page. Fields allowed in the query: objectType, objectId.

    List of objectType options (case-insensitive): “Computer”, “Peripheral”, “Licensed Software”, “Licensed Software Template”, “Policy”, “macOS Configuration Profile”, “Restricted Software”, “Managed Preference Profile”, “Computer Group”, “Mobile Device”, “Apple TV”, “Android Device”, “User Group”, “iOS Configuration Profile”, “Mobile Device App”, “E-book”, “Mobile Device Group”, “Classroom”, “Advanced Computer Search”, “Advanced Mobile Search”, “Advanced User Search”, “Advanced User Content Search”, “Computer Invitation”, “Mobile Device Invitation”, “Mobile Device Enrollment Profile”, “Device Enrollment Program Instance”, “Mobile Device Prestage”, “Computer DEP Prestage”, “Enrollment Customization”, “VPP Location”, “VPP Subscription”, “VPP Invitation”, “VPP Assignment”, “User”, “Network Integration”, “Mac App”, “App Installer”, “BYO Profile”, “Self Service Plugin”, “Software Title”, “Patch Software Title Summary”, “Patch Policy”, “Patch Software Title Configuration”, “Change Password”, “Mobile Device Inventory”, “Computer Inventory”, “Change Management”, “Licensed Software License”

    Example: ‘objectType==”Computer” and objectId==”1”’


site-preview

All endpoints deprecated.


slasa

Pro.get_slasa() dict

Returns if SLASA has been accepted or not

Returns:

SLASA information in JSON


Pro.create_slasa() dict

Creates an acceptance of the SLASA for Jamf Pro

Returns:

SLASA acceptance string


smart-computer-groups-preview

Pro.create_smart_computer_group_recalculate_computer(id: Union[int, str]) dict

Recalculates smart groups of the specified computer then returns the count of smart groups the computer falls into by ID

Parameters:

id – Computer ID

Returns:

Count of smart groups the computer falls into in JSON


Pro.create_smart_computer_group_recalculate_group(id: Union[int, str]) dict

Recalculates the smart group for the given ID and then returns the count of the computers in the smart group

Parameters:

id – Smart computer group ID

Returns:

Count fo the computer in the smart group in JSON


smart-mobile-device-groups-preview

Pro.create_smart_mobile_device_group_recalculate_device(id: Union[int, str]) dict

Recalculates smart groups of the specified mobile device then returns the count of smart groups the device falls into by ID

Parameters:

id – Mobile device ID

Returns:

Count of smart groups the device falls into in JSON


Pro.create_smart_mobile_device_group_recalculate_group(id: Union[int, str]) dict

Recalculates the smart group for the given ID and then returns the count of the mobile devices in the smart group

Parameters:

id – Smart mobile device group ID

Returns:

Count of the mobile devices in the smart group in JSON


smart-user-groups-preview

Pro.create_smart_user_group_recalculate_user(id: Union[int, str]) dict

Recalculates smart groups of the specified user then returns the count of smart groups the user falls into by ID

Parameters:

id – User ID

Returns:

Count fo the smart groups the user falls into in JSON


Pro.create_smart_user_group_recalculate_group(id: Union[int, str]) dict

Recalculates the smart group for the given ID and then returns the count of the users in the smart group

Parameters:

id – Smart user group ID

Returns:

Count of the users in the smart group in JSON


smtp-server

Pro.get_smtp_server() dict

Returns the SMTP server information

Returns:

SMTP server information in JSON


Pro.get_smtp_server_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns SMTP server history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is [“date:desc”]. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: ‘username!=admin and date<2019-12-15’

Returns:

SMTP server history in JSON


Pro.create_smtp_server_history_note(data: dict) dict

Creates a SMTP server history note with JSON

Parameters:

data – JSON data to create SMTP server history note with. For syntax information view Jamf’s documentation.

Returns:

New SMTP server history note in JSON


Pro.create_smtp_server_test(data: dict) str

Creates a SMTP server functionality test

Parameters:

data – JSON data to create SMTP server functionality test with. For syntax information view Jamf’s documentation.

Returns:

Success message stating the SMTP server test was created


Pro.update_smtp_server(data: dict) dict

Updates SMTP server information. If requiresAuthentication is set to True, a username and password must be provided.

Parameters:

data – JSON data to update SMTP server with. For syntax information view Jamf’s documentation.

Returns:

Updated SMTP server information in JSON


sso-certificate

Pro.get_sso_certificate() dict

Returns the certificate currently configured for use with SSO

Returns:

SSO certificate information in JSON


Pro.get_sso_certificate_file() dict

Downloads the certificate currently configured for use with Jamf Pro’s SSO configuration

Returns:

Success message stating the SSO certificate file was downloaded to the user’s Downloads folder


Pro.create_sso_certificate() dict

Generates a new certificate and use it to sign SSO requests to the identity provider

Returns:

New SSO certificate information in JSON


Pro.create_sso_certificate_parse(data: dict) dict

Parses the certificate to get details about certificate type and keys needed to upload certificate file with JSON

Parameters:

data – JSON data to parse certificate with. For syntax information view Jamf’s documentation.

Returns:

Results of the parsing of the SSO certificate in JSON


Pro.update_sso_certificate(data: dict) dict

Updates the certificate used by Jamf Pro to sign SSO requests to the identify provider with JSON

Parameters:

data – JSON data to update SSO certificate with. For syntax information view Jamf’s documentation.

Returns:

Updated SSO certificate information in JSON


Pro.delete_sso_certificate() str

Deletes the currently configured certificate used by SSO

Returns:

Success message stating the SSO certificate was successfully deleted


sso-certificate-preview

Use sso-certificate instead as that is a more up to date version of this endpoint collection.


sso-failover

Pro.get_sso_failover_settings() dict

Returns the current failover settings in JSON

Returns:

Current failover settings in JSON


Pro.create_sso_failover_settings() dict

Regenerates failover url, by changing failover key to new one, and returns new failover settings in JSON

Returns:

New failover settings in JSON


sso-settings

Pro.get_sso_settings() dict

Returns the current SSO configuration settings

Returns:

SSO settings in JSON


Pro.get_sso_settings_enrollment_customizations() dict

Returns the list of enrollment customizations using SSO

Returns:

Enrollment customization using SSO in JSON


Pro.get_sso_settings_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns paged and sorted SSO settings history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

SSO settings history information in JSON


Pro.get_sso_settings_saml_metadata_file() str

Downloads the Jamf Pro SAML metadata file to the current user’s Downloads folder

Returns:

Success message stating the SAML metadata file was downloaded to the user’s Downloads folder


Pro.create_sso_settings_disable() str

Disables SSO for the Jamf Pro Server

Returns:

Disabled SSO information in JSON


Pro.create_sso_settings_history_note(data: dict) dict

Creates SSO history note with JSON

Parameters:

data – JSON data to create SSO history note with. For syntax information view Jamf’s documentation.

Returns:

New SSO settings history note information in JSON


Pro.create_sso_settings_validate_saml_metadata_url(data: dict) str

Validates content available under provided metadata URL with JSON

Parameters:

data – JSON data to validate. For syntax information view Jamf’s documentation.

Returns:

Success message stating the metadata URL is valid


Pro.update_sso_settings(data: dict) dict

Updates the current SSO configuration settings

Parameters:

data – JSON data to update the SSO settings with. For syntax information view Jamf’s documentation.

Returns:

Updated SSO settings information in JSON


startup-status

Pro.get_startup_status() dict

Returns information about application startup. Current startup operation taking place (if any) and overall startup completion percentage.

Returns:

Startup status information in JSON


static-user-groups-preview

Pro.get_static_user_groups() List

Returns all static user groups

Returns:

All static user groups in JSON


Pro.get_static_user_group(id: Union[int, str]) dict

Returns a static user group by ID

Parameters:

id – Static user group ID

Returns:

Static user group information in JSON


supervision-identities-preview

Pro.get_supervision_identities(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

Returns sorted and paged supervision identities

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “commonName:asc”]

Returns:

All supervision identities in JSON


Pro.get_supervision_identity(id: Union[int, str]) dict

Returns a supervision identity by ID

Parameters:

id – Supervision identity ID

Returns:

Supervision identity information in JSON


Pro.get_supervision_identity_file(id: Union[int, str]) dict

Downloads the supervision identity .p12 file by ID

Parameters:

id – Supervision identity ID

Returns:

Success message stating the supervision identity p12 file was downloaded to the user’s Downloads folder


Pro.create_supervision_identity(data: dict) dict

Creates a supervision identity with JSON

Parameters:

data – JSON data to create supervision identity with. For syntax information view Jamf’s documentation.

Returns:

New supervision identity information in JSON


Pro.create_supervision_identity_file(data: dict) dict

Creates the supervision identity .p12 file with JSON

Parameters:

data – JSON data to create supervision identity p12 file with. For syntax information view Jamf’s documentation.

Returns:

New supervision identity file information in JSON


Pro.update_supervision_identity(data: dict, id: Union[int, str]) dict

Updates a supervision identity by ID with JSON

Parameters:
  • data – JSON data to update supervision identity with. For syntax information view Jamf’s documentation.

  • id – Supervision identity ID

Returns:

Updated supervision identity information in JSON


Pro.delete_supervision_identity(id: Union[int, str]) str

Deletes a supervision identity by ID

Parameters:

id – Supervision identity ID

Returns:

Success message stating that the supervision identity was deleted


teacher-app

Pro.get_teacher_app_settings()

Returns the Jamf Teacher settings that the user has access to see

Returns:

Teacher app settings information in JSON


Pro.get_teacher_app_history(page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns Jamf Teacher settings history

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Teacher app history information in JSON


Pro.create_teacher_app_history_note(data: dict) dict

Creates a Jamf Teacher app settings history note with JSON

Parameters:

data – JSON data to create Jamf Teacher app settings history note with. For syntax information view Jamf’s documentation.

Returns:

New teacher app history note information in JSON


Pro.update_teacher_app_settings(data: dict) dict

Updates Jamf Teacher app settings with JSON

Parameters:

data – JSON data to update Jamf Teacher app settings with. For syntax information view Jamf’s documentation.

Returns:

Updated teacher app settings information in JSON


team-viewer-remote-administration

Pro.get_team_viewer_remote_administration_connection_configuration(id: Union[int, str]) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Returns Team Viewer remote administration connection configuration by ID

Parameters:

id – Team Viewer connection configuration ID

Returns:

Team Viewer remote administration connection configuration information in JSON


Pro.get_team_viewer_remote_administration_sessions(configuration_id: Union[int, str], page: int = None, page_size: int = None, filter: str = None) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Returns a paginated list of sessions by configuration ID

Parameters:
  • configuration_id – Team Viewer connection configuration ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • filter

    Query in the RSQL format, allowing to filter sessions collection. Default filter is empty query - returning all results for the requested page.

    Fields allowed in the query: deviceId, deviceType, state

    Example: deviceId==1 and deviceType==”COMPUTER” and state==”OPEN”

Returns:

Team Viewer remote administration sessions in JSON


Pro.get_team_viewer_remote_administration_session(configuration_id: Union[int, str], session_id: Union[int, str]) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Returns session details by session ID

Parameters:
  • configuration_id – Team Viewer connection configuration ID

  • session_id – Team Viewer session ID

Returns:

Team Viewer remote administration session information in JSON


Pro.get_team_viewer_remote_administration_session_status(configuration_id: Union[int, str], session_id: Union[int, str]) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Returns session status by ID

Parameters:
  • configuration_id – Team Viewer connection configuration ID

  • session_id – Team Viewer session ID

Returns:

Team Viewer remote administration session status information in JSON


Pro.get_team_viewer_remote_administration_connection_status(id: Union[int, str]) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Returns Team Viewer remote administration connection status by ID

Parameters:

id – Team Viewer connection configuration ID

Returns:

Team Viewer remote administration connection status information in JSON


Pro.create_team_viewer_remote_administration_connection_configuration(data: dict) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Creates Team Viewer remote administration connection configuration with JSON

Parameters:

data – JSON data to create Team Viewer connection configuration with. For syntax information view Jamf’s documentation.

Returns:

New Team Viewer remote administration connection configuration information in JSON


Pro.create_team_viewer_remote_administration_session(data: dict, configuration_id: Union[int, str]) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Creates a new Team Viewer session to be used to establish a remote connection

Parameters:
  • data – JSON data to create Team Viewer session with. For syntax information view Jamf’s documentation.

  • configuration_id – Team Viewer connection configuration ID

Returns:

New Team Viewer remote administration session information in JSON


Pro.create_team_viewer_remote_administration_session_notification(configuration_id: Union[int, str], session_id: Union[int, str]) str

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Resends configured notifications (e.g. Self Service push notifications) for Team Viewer session by ID

Parameters:
  • configuration_id – Team Viewer connection configuration ID

  • session_id – Team Viewer session ID

Returns:

Resent Team Viewer remote administration session notification information in JSON


Pro.update_team_viewer_remote_administration_connection_configuration(data: dict, id: Union[int, str]) dict

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Updates Team Viewer remote administration connection configuration by ID with JSON

Parameters:
  • data – JSON data to update Team Viewer connection configuration with. For syntax information view Jamf’s documentation.

  • id – Team Viewer connection configuration ID

Returns:

Updated Team Viewer remote administration connection configuration information in JSON


Pro.delete_team_viewer_remote_administration_connection_configuration(id: Union[int, str]) str

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Deletes Team Viewer remote administration connection configuration by ID

Parameters:

id – Team Viewer connection configuration ID

Returns:

Success message stating that the Team Viewer remote administration connection configuration in JSON


Pro.delete_team_viewer_remote_administration_session(configuration_id: Union[int, str], session_id: Union[int, str]) str

PREVIEW: THIS ENDPOINT IS A PREVIEW, IT CAN BE CHANGED OR REMOVED ON FUTURE JAMF PRO RELEASES. NOT RECOMMENDED FOR PRODUCTION USE.

Closes a Team Viewer remote session by ID

Parameters:
  • configuration_id – Team Viewer connection configuration ID

  • session_id – Team Viewer session ID

Returns:

Success message stating the Team Viewer remote administration session was closed


time-zones-preview

Pro.get_time_zones() dict

Returns information about the currently supported time zones

Returns:

All time zones in JSON


tomcat-zones-preview

Pro.create_tomcat_settings_ssl_certificate() str

Generates a SSL certificate using Jamf Certificate Authority

Returns:

Success message stating that the SSL certificate was created


user

Pro.create_user_password_change(data: dict) dict

Changes the account password for a currently authenticated user

Parameters:

data – JSON data to change user password with. For syntax information view Jamf’s documentation.

Returns:

Updated user password information in JSON


user-session-preview

Pro.get_user_session_accounts() dict

Returns all Jamf Pro user accounts

Returns:

All Jamf Pro user accounts in JSON


Pro.update_user_session(data: dict) dict

Updates values in the user’s current session with JSON

Parameters:

data – JSON data to update user’s current session values with. For syntax information view Jamf’s documentation.

Returns:

Updated user session information in JSON


venafi-preview

Pro.get_venafi_configuration(id: Union[int, str]) dict

Returns a Venafi PKI configuration from Jamf Pro by ID

Parameters:

id – Venafi configuration ID

Returns:

Venafi configuration information in JSON


Pro.get_venafi_connection_status(id: Union[int, str]) dict

Tests the communication between Jamf Pro and Jamf Pro PKI proxy server by ID

:param id : Venafi configuration ID

Returns:

Results of the Venafi connection status test in JSON


Pro.get_venafi_dependant_configuration_profiles(id: Union[int, str]) dict

Returns configuration profile data connected with the Venafi CA by ID

Parameters:

id – Venafi configuration ID

Returns:

Venafi dependant configuration profiles information in JSON


Pro.get_venafi_configuration_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns Venafi CA configuration history by ID

Parameters:
  • id – Venafi configuration ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Venafi configuration history information in JSON


Pro.get_venafi_jamf_public_key(id: Union[int, str]) dict

Downloads a certificate for an existing Venafi configuration that can be used to secure communication between Jamf Pro and a Jamf Pro PKI Proxy Server to the current user’s Downloads folder by ID

Parameters:

id – Venafi configuration ID

Returns:

Success message stating that the public key was downloaded to the user’s Downloads folder


Pro.get_venafi_pki_proxy_server_public_key(id: Union[int, str]) dict

Downloads the uploaded PKI Proxy Server public key to do basic TLS certificate validation between Jamf Pro and a Jamf Pro PKI Proxy Server to the current user’s Downloads folder by ID

Parameters:

id – Venafi configuration iD

Returns:

Success message stating that the public key was downloaded to the user’s Downloads folder


Pro.create_venafi_configuration(data: dict) dict

Creates a Venafi PKI configuration in Jamf Pro with JSON

Parameters:

data – JSON data to create Venafi configuration with. For syntax information view Jamf’s documentation.

Returns:

New Venafi PKI configuration information in JSON


Pro.create_venafi_configuration_history_note(data: dict, id: Union[int, str]) dict

Creates Venafi configuration history note by ID with JSON

Parameters:
  • data – JSON data to create Venafi configuration history note with. For syntax information view Jamf’s documentation.

  • id – Venafi configuration ID

Returns:

New Venafi configuration history note information in JSON


Pro.create_venafi_jamf_public_key(id: Union[int, str]) str

Regenerates a certificate for an existing Venafi configuration that can be used to secure communication between Jamf Pro and a Jamf Pro PKI Proxy Server by ID

Parameters:

id – Venafi configuration ID

Returns:

Success message stating that the public key was regenerated


Pro.create_venafi_pki_proxy_server_public_key(filepath: str, id: Union[int, str]) str

Uploads the PKI Proxy Server public key to do basic TLS certificate validation between Jamf Pro and a Jamf Pro PKI Proxy Server by ID

Parameters:
  • filepath – Literal path to file to upload

  • id – Venafi configuration ID

Returns:

Success message stating that the Venafi PKI proxy server public key was uploaded


Pro.update_venafi_configuration(data: dict, id: Union[int, str]) dict

Updates a Venafi PKI configuration in Jamf Pro by ID with JSON

Parameters:
  • data – JSON data to update Venafi configuration with. For syntax information view Jamf’s documentation.

  • id – Venafi configuration ID

Returns:

Updated Venafi configuration information in JSON


Pro.delete_venafi_configuration(id: Union[int, str]) str

Deletes a Venafi configuration from Jamf Pro by ID

Parameters:

id – Venafi configuration ID

Returns:

Success message stating that the Venafi configuration was deleted


Pro.delete_venafi_pki_proxy_server_public_key(id: Union[int, str]) str

Deletes the uploaded PKI Proxy Server public key by ID

Parameters:

id – Venafi configuration ID

Returns:

Success message stating the Venafi proxy server public key was deleted


volume-purchasing-locations

Pro.get_volume_purchasing_locations(page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns sorted and paged volume purchasing locations

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter Volume Purchasing Location collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: id, name, appleId, organizationName, tokenExpiration, countryCode, locationName, automaticallyPopulatePurchasedContent, sendNotificationWhenNoLongerAssigned, siteId and siteName. This param can be combined with paging and sorting.

    Example: name==”example.jamfcloud.com” and countryCode==”US”

Returns:

All volume purchasing locations in JSON


Pro.get_volume_purchasing_location(id: Union[int, str]) dict

Returns a volume purchasing location by ID

Parameters:

id – Volume purchasing location ID

Returns:

Volume purchasing location information in JSON


Pro.get_volume_purchasing_location_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns sorted and paginated volume purchasing location history by ID

Parameters:
  • id – Volume purchasing location ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details. This param can be combined with paging and sorting.

    Example: username!=admin and details==disabled and date<2019-12-15

Returns:

Volume purchasing location history information in JSON


Pro.get_volume_purchasing_location_content(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['id:asc'], filter: str = None) dict

Returns the volume purchasing content for the volume purchasing location by ID

Parameters:
  • id – Volume purchasing location ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“id:desc”, “name:asc”]

  • filter

    Query in the RSQL format, allowing to filter Volume Purchasing Content collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: name, licenseCountTotal, licenseCountInUse, licenseCountReported, contentType, and pricingParam. This param can be combined with paging and sorting.

    Example: name==”example” and licenseCountInUse==1

Returns:

Volume purchasing content for the volume purchasing location in JSON


Pro.create_volume_purchasing_location(data: dict) dict

Creates a volume purchasing location with JSON

Parameters:

data – JSON data to create volume purchasing location with. For syntax information view Jamf’s documentation.

Returns:

New volume purchasing location information in JSON


Pro.create_volume_purchasing_location_history_note(data: dict, id: Union[int, str]) dict

Creates a volume purchasing location history note by ID with JSON

Parameters:
  • data – JSON data to create volume purchasing location history note with. For syntax information view Jamf’s documentation.

  • id – Volume purchasing location ID

Returns:

New volume purchasing location history note information in JSON


Pro.create_volume_purchasing_location_reclaim(id: Union[int, str]) str

Reclaims a volume purchasing location by ID

Parameters:

id – Volume purchasing location ID

Returns:

Success message stating the reclaim was requested


Pro.create_volume_purchasing_location_revoke_licenses(id: Union[int, str]) str

Revokes licenses for a Volume Purchasing Location by ID. The licenses must be revokable - any asset whose licenses are irrevocable will not be revoked.

Parameters:

id – Volume purchasing location ID

Returns:

Success message stating the licenses were revoked


Pro.update_volume_purchasing_location(data: dict, id: Union[int, str]) dict

Updates a volume purchasing location by ID with JSON

Parameters:
  • data – JSON data to update volume purchasing location with. For syntax information view Jamf’s documentation.

  • id – Volume purchasing location ID

Returns:

Updated volume purchasing location information in JSON


Pro.delete_volume_purchasing_location(id: Union[int, str]) str

Deletes a volume purchasing location by ID

Parameters:

id – Volume purchasing location ID

Returns:

Success message stating the volume purchasing location was deleted


volume-purchasing-subscriptions

Pro.get_volume_purchasing_subscriptions(page: int = None, page_size: int = None, sort: List[str] = ['id:asc']) dict

Returns sorted and paged volume purchasing subscriptions

Parameters:
  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is id:asc. Multiple sort criteria are supported and must be separated with a comma. Allowable properties are id, name, and enabled.

    Example: [“id:desc”, “name:asc”]

Returns:

All volume purchasing subscriptions in JSON


Pro.get_volume_purchasing_subscription(id: Union[int, str]) dict

Returns a volume purchasing subscription by ID

Parameters:

id – Volume purchasing subscription ID

Returns:

Volume purchasing subscription information in JSON


Pro.get_volume_purchasing_subscription_history(id: Union[int, str], page: int = None, page_size: int = None, sort: List[str] = ['date:desc'], filter: str = None) dict

Returns sorted and paginated volume purchasing subscription history by ID

Parameters:
  • id – Volume purchasing subscription ID

  • page – Page to return, default page is 0.

  • page_size – Page size to return, default page-size is 100.

  • sort

    Sorting criteria in the format: property:asc/desc. Default sort is date:desc. Multiple sort criteria are supported and must be separated with a comma.

    Example: [“date:desc”, “note:asc”]

  • filter

    Query in the RSQL format, allowing to filter history notes collection. Default filter is empty query - returning all results for the requested page. Fields allowed in the query: username, date, note, details.

    Example: “username!=admin and details==disabled and date<2019-12-15”


Pro.create_volume_purchasing_subscription(data: dict) dict

Creates a volume purchasing subscription with JSON

Parameters:

data – JSON data to create volume purchasing subscription with. For syntax information view Jamf’s documentation.

Returns:

New volume purchasing subscription information in JSON


Pro.create_volume_purchasing_subscription_history_note(data: dict, id: Union[int, str]) dict

Creates a volume purchasing subscription history note by ID with JSON

Parameters:
  • data – JSON data to create volume purchasing subscription history note with. For syntax information view Jamf’s documentation.

  • id – Volume purchasing subscription ID

Returns:

New volume purchasing subscription history note information in JSON


Pro.update_volume_purchasing_subscription(data: dict, id: Union[int, str]) dict

Updates a volume purchasing subscription by ID with JSON

Parameters:
  • data – JSON data to update volume purchasing subscription with. For syntax information view Jamf’s documentation.

  • id – Volume purchasing subscription ID

Returns:

Updated volume purchasing subscription information in JSON


Pro.delete_volume_purchasing_subscription(id: Union[int, str]) str

Deletes a volume purchasing subscription by ID

Parameters:

id – Volume purchasing subscription ID

Returns:

Success message stating the volume purchasing subscription was deleted


vpp-admin-accounts-preview

All endpoints deprecated.


vpp-subscriptions-preview

All endpoints deprecated.