Getting Started with go-api-sdk-jamfpro
This guide will help you GET started with go-api-sdk-jamfpro
, a Go SDK for interfacing with Jamf Pro.
Prerequisites
Ensure you have Go installed and set up on your system. If not, follow the instructions on the official Go website.
Installation
Install the go-api-sdk-jamfpro
package using go get
:
go get github.com/deploymenttheory/go-api-sdk-jamfpro
Usage
sample code: examples
Configuring the HTTP Client
To effectively use the go-api-sdk-jamfpro
SDK, you'll need to set up and configure the HTTP client. Here's a step-by-step guide:
1. Setting Constants
At the start of your main program, you can optionally define define some constants that will be used to configure the client for http client. If you don't set any then defaults from shared_api_client.go
will be used.
const (
maxConcurrentRequestsAllowed = 5 // Maximum allowed concurrent requests.
defaultTokenLifespan = 30 * time.Minute
defaultBufferPeriod = 5 * time.Minute
)
These constants are used to set the maximum number of concurrent requests the client can make, the lifespan of the token, and a buffer period.
- Loading OAuth Credentials
The http client for this SDK supports both classic auth and Oauth with bearer token. Since the direction of travel is Oauth, in this example store your credentials in a JSON file for secure and easy access. The structure of the client auth json should be like this:
{
"instanceName": "your_jamf_instance_name", // Required
"clientID": "your_client_id", // Required
"clientSecret": "your_client_secret", // Required
"overrideBaseDomain": "optional_custom_domain.com" // Optional field
}
Replace your_jamf_instance_name, with your jamf pro instance name. e.g for mycompany.jamfcloud.com , use "mycompany".
Replace your_client_id, and your_client_secret with your actual credentials.
In your Go program, load these credentials using:
configFilePath := "path_to_your/clientauth.json"
authConfig, err := http_client.LoadClientAuthConfig(configFilePath)
if err != nil {
log.Fatalf("Failed to load client OAuth configuration: %v", err)
}
- Configuring the HTTP Client
With the OAuth credentials loaded, you can now configure the HTTP client:
// Initialize a new default logger
logger := http_client.NewDefaultLogger()
// Set the desired log level on the logger
logger.SetLevel(http_client.LogLevelInfo) // LogLevel can be None, Warning, Info, or Debug
// Create the configuration for the HTTP client with the logger
config := http_client.Config{
Logger: logger,
}
The Logger uses the SDK's default logger.
- Initializing the Jamf Pro Client
Once the HTTP client is configured, initialize the Jamf Pro client:
client := jamfpro.NewClient(authConfig.InstanceName, config)
Then, set the OAuth credentials for the client's HTTP client:
oAuthCreds := http_client.OAuthCredentials{
ClientID: authConfig.ClientID,
ClientSecret: authConfig.ClientSecret,
}
client.HTTP.SetOAuthCredentials(oAuthCreds)
With these steps, the HTTP client will be fully set up and ready to make requests to the Jamf Pro API. You can then proceed to use the client to perform various actions as demonstrated in the sample code provided.
Note: Remember to always keep your OAuth credentials confidential and never expose them in your code or public repositories.
URL Construction in the Client
The go-api-sdk-jamfpro
SDK constructs URLs in a structured manner to ensure consistent and correct API endpoint accesses. Here's a breakdown of how it's done:
Instance Name:
The primary identifier for constructing URLs in the client is the InstanceName
which represents the Jamf Pro instance. For example, for the URL mycompany.jamfcloud.com
, the instance name would be mycompany
.
Base Domain:
If OverrideBaseDomain is provided during http client initialization, this will override jamfcloud.com and will be used as the base domain for URL construction. Otherwise, the default domain defined in the http_client package (jamfcloud.com) will be used.
URL Construction in the Client
URLs are constructed using the InstanceName and, optionally, the OverrideBaseDomain. If the OverrideBaseDomain is not specified, the default domain (jamfcloud.com) is used. The SDK automatically appends this domain to the InstanceName for API calls.
const (
BaseDomain = ".jamfcloud.com"
)
Endpoint Path:
Each API function in the SDK corresponds to a specific Jamf Pro API endpoint. The SDK appends this endpoint path to the constructed domain to derive the full URL.
URL Construction Example:
Given the InstanceName
as mycompany
and an endpoint path /JSSResource/accounts/userid/{id}
, the full URL constructed by the client would be:
https://mycompany.jamfcloud.com/JSSResource/accounts/userid/{id}
Customizability:
The SDK is designed to be flexible. While it uses the jamfcloud.com
domain by default, this can be updated to meet your requiremesnt for your environment.
Note:
Always ensure that the InstanceName
is correctly set when initializing the client. Avoid including the full domain (e.g., .jamfcloud.com
) in the InstanceName
as the SDK will automatically append it.
Putting it all together
package main
import (
"fmt"
"log"
"github.com/deploymenttheory/go-api-sdk-jamfpro/sdk/http_client" // Import http_client for logging
"github.com/deploymenttheory/go-api-sdk-jamfpro/sdk/jamfpro"
)
func main() {
// Define the path to the JSON configuration file
configFilePath := "/path/to/your/clientauth.json"
// Load the client OAuth credentials from the configuration file
authConfig, err := jamfpro.LoadClientAuthConfig(configFilePath)
if err != nil {
log.Fatalf("Failed to load client OAuth configuration: %v", err)
}
// Instantiate the default logger and set the desired log level
logger := http_client.NewDefaultLogger()
logLevel := http_client.LogLevelInfo // LogLevelNone // LogLevelWarning // LogLevelInfo // LogLevelDebug
// Configuration for the jamfpro
config := jamfpro.Config{
InstanceName: authConfig.InstanceName,
OverrideBaseDomain: authConfig.OverrideBaseDomain,
LogLevel: logLevel,
Logger: logger,
ClientID: authConfig.ClientID,
ClientSecret: authConfig.ClientSecret,
}
// Create a new jamfpro client instance
client, err := jamfpro.NewClient(config)
if err != nil {
log.Fatalf("Failed to create Jamf Pro client: %v", err)
}
}
Go SDK for Jamf Pro API Progress Tracker
API Coverage Progress
Date: Dec-2023
Maintainer: [ShocOne]
Overview
This document tracks the progress of API endpoint coverage tests. As endpoints are tested, they will be marked as covered.
Coverage Legend
- ✅ - Covered
- ❌ - Not Covered
- ⚠️ - Information
Endpoints
Accounts - /JSSResource/accounts
This documentation outlines the operations available for Jamf Pro Accounts and Account Groups.
Operations
-
✅ GET /JSSResource/accounts
GetAccounts
operation retrieves all user accounts.
-
✅ GET /JSSResource/accounts/userid/{id}
GetAccountByID
operation retrieves the Account by its ID.
-
✅ GET /JSSResource/accounts/username/{name}
GetAccountByName
operation retrieves the Account by its name.
-
✅ GET /JSSResource/accounts/groupid/{id}
GetAccountGroupByID
operation retrieves the Account Group by its ID.
-
✅ GET /JSSResource/accounts/groupname/{name}
GetAccountGroupByName
operation retrieves the Account Group by its name.
-
✅ POST /JSSResource/accounts/userid/{id}
CreateAccount
operation creates a new Jamf Pro Account.
-
✅ POST /JSSResource/accounts/groupid/{id}
CreateAccountGroup
operation creates a new Jamf Pro Account Group.
-
✅ PUT /JSSResource/accounts/userid/{id}
UpdateAccountByID
operation updates an existing Jamf Pro Account by ID.
-
✅ PUT /JSSResource/accounts/username/{name}
UpdateAccountByName
operation updates an existing Jamf Pro Account by Name.
-
✅ PUT /JSSResource/accounts/groupid/{id}
UpdateAccountGroupByID
operation updates an existing Jamf Pro Account Group by ID.
-
✅ PUT /JSSResource/accounts/groupname/{name}
UpdateAccountGroupByName
operation updates an existing Jamf Pro Account Group by Name.
-
✅ DELETE /JSSResource/accounts/userid/{id}
DeleteAccountByID
operation deletes an existing Jamf Pro Account by ID.
-
✅ DELETE /JSSResource/accounts/username/{name}
DeleteAccountByName
operation deletes an existing Jamf Pro Account by Name.
-
✅ DELETE /JSSResource/accounts/groupid/{id}
DeleteAccountGroupByID
operation deletes an existing Jamf Pro Account Group by ID.
-
✅ DELETE /JSSResource/accounts/groupname/{name}
DeleteAccountGroupByName
operation deletes an existing Jamf Pro Account Group by Name.
Summary
Activation Code - /JSSResource/activationcode
This documentation outlines the operations available for Activation Code in Jamf Pro.
Operations
Summary
Jamf Pro API Integrations - /api/v1/api-integrations
This documentation outlines the operations available for Jamf API Integrations.
Operations
-
✅ GET /api/v1/api-integrations
GetApiIntegrations
operation fetches all API integrations.
-
✅ GET /api/v1/api-integrations/{id}
GetApiIntegrationByID
operation fetches an API integration by its ID.
-
✅ GET /api/v1/api-integrations
followed by searching by name
GetApiIntegrationNameByID
operation fetches an API integration by its display name and then retrieves its details using its ID.
-
✅ POST /api/v1/api-integrations
CreateApiIntegration
operation creates a new API integration.
-
✅ POST /api/v1/api-integrations/{id}/client-credentials
CreateClientCredentialsByApiRoleID
operation creates new client credentials for an API integration by its ID.
-
✅ PUT /api/v1/api-integrations/{id}
UpdateApiIntegrationByID
operation updates an API integration by its ID.
-
✅ PUT /api/v1/api-integrations
followed by searching by name
UpdateApiIntegrationByName
operation updates an API integration based on its display name.
-
✅ POST /api/v1/api-integrations/{id}/client-credentials
(Used for updating)
UpdateClientCredentialsByApiIntegrationID
operation updates client credentials for an API integration by its ID.
-
✅ DELETE /api/v1/api-integrations/{id}
DeleteApiIntegrationByID
operation deletes an API integration by its ID.
-
✅ DELETE /api/v1/api-integrations
followed by searching by name
DeleteApiIntegrationByName
operation deletes an API integration by its display name.
Summary
Jamf Pro API Role Privileges - /api/v1/api-role-privileges
This documentation outlines the operations available for Jamf API Role Privileges.
Operations
Summary
Jamf Pro API Roles - /api/v1/api-roles
This documentation outlines the operations available for Jamf API Roles.
Operations
-
✅ GET /api/v1/api-roles
GetJamfAPIRoles
operation fetches all API roles.
-
✅ GET /api/v1/api-roles/{id}
GetJamfApiRolesByID
operation fetches a Jamf API role by its ID.
-
✅ GET /api/v1/api-roles
followed by searching by name
GetJamfApiRolesNameById
operation fetches a Jamf API role by its display name and then retrieves its details using its ID.
-
✅ POST /api/v1/api-roles
CreateJamfApiRole
operation creates a new Jamf API role.
-
✅ PUT /api/v1/api-roles/{id}
UpdateJamfApiRoleByID
operation updates a Jamf API role by its ID.
-
✅ PUT /api/v1/api-roles
followed by searching by name
UpdateJamfApiRoleByName
operation updates a Jamf API role based on its display name.
-
✅ DELETE /api/v1/api-roles/{id}
DeleteJamfApiRoleByID
operation deletes a Jamf API role by its ID.
-
✅ DELETE /api/v1/api-roles
followed by searching by name
DeleteJamfApiRoleByName
operation deletes a Jamf API role by its display name.
Summary
Jamf Pro Classic API - Advanced Computer Searches
This documentation outlines the operations available for Advanced Computer Searches.
Operations
-
✅ GET /JSSResource/advancedcomputersearches
GetAdvancedComputerSearches
operation fetches all advanced computer searches.
-
✅ GET /JSSResource/advancedcomputersearches/id/{id}
GetAdvancedComputerSearchByID
operation fetches an advanced computer search by its ID.
-
✅ GET /JSSResource/advancedcomputersearches/name/{name}
GetAdvancedComputerSearchesByName
operation fetches advanced computer searches by their name.
-
✅ POST /JSSResource/advancedcomputersearches
CreateAdvancedComputerSearch
operation creates a new advanced computer search.
-
✅ PUT /JSSResource/advancedcomputersearches/id/{id}
UpdateAdvancedComputerSearchByID
operation updates an existing advanced computer search by its ID.
-
✅ PUT /JSSResource/advancedcomputersearches/name/{name}
UpdateAdvancedComputerSearchByName
operation updates an advanced computer search by its name.
-
✅ DELETE /JSSResource/advancedcomputersearches/id/{id}
DeleteAdvancedComputerSearchByID
operation deletes an advanced computer search by its ID.
-
✅ DELETE /JSSResource/advancedcomputersearches/name/{name}
DeleteAdvancedComputerSearchByName
operation deletes an advanced computer search by its name.
Summary
Jamf Pro Classic API - Advanced Mobile Device Searches
This documentation outlines the operations available for Advanced Mobile Device Searches.
Operations
-
✅ GET /JSSResource/advancedmobiledevicesearches
GetAdvancedMobileDeviceSearches
operation fetches all advanced mobile device searches.
-
✅ GET /JSSResource/advancedmobiledevicesearches/id/{id}
GetAdvancedMobileDeviceSearchByID
operation fetches an advanced mobile device search by its ID.
-
✅ GET /JSSResource/advancedmobiledevicesearches/name/{name}
GetAdvancedMobileDeviceSearchByName
operation fetches advanced mobile device searches by their name.
-
✅ POST /JSSResource/advancedmobiledevicesearches
CreateAdvancedMobileDeviceSearch
operation creates a new advanced mobile device search.
-
✅ PUT /JSSResource/advancedmobiledevicesearches/id/{id}
UpdateAdvancedMobileDeviceSearchByID
operation updates an existing advanced mobile device search by its ID.
-
✅ PUT /JSSResource/advancedmobiledevicesearches/name/{name}
UpdateAdvancedMobileDeviceSearchByName
operation updates an advanced mobile device search by its name.
-
✅ DELETE /JSSResource/advancedmobiledevicesearches/id/{id}
DeleteAdvancedMobileDeviceSearchByID
operation deletes an advanced mobile device search by its ID.
-
✅ DELETE /JSSResource/advancedmobiledevicesearches/name/{name}
DeleteAdvancedMobileDeviceSearchByName
operation deletes an advanced mobile device search by its name.
Summary
Jamf Pro Classic API - Advanced User Searches
This documentation outlines the operations available for Advanced User Searches.
Operations
-
✅ GET /JSSResource/advancedusersearches
GetAdvancedUserSearches
operation fetches all advanced user searches.
-
✅ GET /JSSResource/advancedusersearches/id/{id}
GetAdvancedUserSearchByID
operation fetches an advanced user search by its ID.
-
✅ GET /JSSResource/advancedusersearches/name/{name}
GetAdvancedUserSearchesByName
operation fetches advanced user searches by their name.
-
✅ POST /JSSResource/advancedusersearches
CreateAdvancedUserSearch
operation creates a new advanced user search.
-
✅ PUT /JSSResource/advancedusersearches/id/{id}
UpdateAdvancedUserSearchByID
operation updates an existing advanced user search by its ID.
-
✅ PUT /JSSResource/advancedusersearches/name/{name}
UpdateAdvancedUserSearchByName
operation updates an advanced user search by its name.
-
✅ DELETE /JSSResource/advancedusersearches/id/{id}
DeleteAdvancedUserSearchByID
operation deletes an advanced user search by its ID.
-
✅ DELETE /JSSResource/advancedusersearches/name/{name}
DeleteAdvancedUserSearchByName
operation deletes an advanced user search by its name.
Summary
Allowed File Extensions - /JSSResource/allowedfileextensions
This documentation outlines the operations available for Allowed File Extensions.
Operations
-
✅ GET /JSSResource/allowedfileextensions
GetAllowedFileExtensions
operation retrieves all allowed file extensions.
-
✅ GET /JSSResource/allowedfileextensions/id/{id}
GetAllowedFileExtensionByID
operation retrieves the allowed file extension by its ID.
-
✅ GET /JSSResource/allowedfileextensions/extension/{extensionName}
GetAllowedFileExtensionByName
operation retrieves the allowed file extension by its name.
-
✅ POST /JSSResource/allowedfileextensions/id/0
CreateAllowedFileExtension
operation creates a new allowed file extension.
-
[] ⚠️ PUT /JSSResource/allowedfileextensions/id/{id}
UpdateAllowedFileExtensionByID
(API doesn't support update).
-
✅ DELETE /JSSResource/allowedfileextensions/id/{id}
DeleteAllowedFileExtensionByID
operation deletes an existing allowed file extension by ID.
-
✅ DELETE /JSSResource/allowedfileextensions/extension/{extensionName}
DeleteAllowedFileExtensionByNameByID
operation deletes an existing allowed file extension by resolving its name to an ID.
Summary
BYO Profiles - /JSSResource/byoprofiles
This documentation outlines the operations available for BYO profiles.
Operations
-
✅ GET /JSSResource/byoprofiles
GetBYOProfiles
operation retrieves all BYO profiles.
-
✅ GET /JSSResource/byoprofiles/id/{id}
GetBYOProfileByID
operation retrieves a BYO profile by its ID.
-
✅ GET /JSSResource/byoprofiles/name/{name}
GetBYOProfileByName
operation retrieves a BYO profile by its name.
-
✅ POST /JSSResource/byoprofiles/id/0
CreateBYOProfile
operation creates a new BYO profile.
-
✅ PUT /JSSResource/byoprofiles/id/{id}
UpdateBYOProfileByID
operation updates an existing BYO profile by its ID.
-
✅ PUT /JSSResource/byoprofiles/name/{oldName}
UpdateBYOProfileByName
operation updates an existing BYO profile by its name.
-
✅ DELETE /JSSResource/byoprofiles/id/{id}
DeleteBYOProfileByID
operation deletes an existing BYO profile by its ID.
-
✅ DELETE /JSSResource/byoprofiles/name/{name}
DeleteBYOProfileByName
operation deletes an existing BYO profile by its name.
Summary
Jamf Pro API - Categories
This documentation outlines the operations available for categories using the API.
Operations
-
✅ GET /api/v1/categories
GetCategories
operation retrieves categories based on query parameters.
-
✅ GET /api/v1/categories/{id}
GetCategoryByID
operation retrieves a category by its ID.
-
✅ GET /api/v1/categories/name/{name}
GetCategoryNameByID
operation retrieves a category by its name and then retrieves its details using its ID.
-
✅ POST /api/v1/categories
CreateCategory
operation creates a new category.
-
✅ PUT /api/v1/categories/{id}
UpdateCategoryByID
operation updates an existing category by its ID.
-
✅ PUT UpdateCategoryByNameByID
UpdateCategoryByNameByID
operation updates a category by its name and then updates its details using its ID.
-
✅ DELETE /api/v1/categories/{id}
DeleteCategoryByID
operation deletes a category by its ID.
-
✅ DELETE DeleteCategoryByNameByID
DeleteCategoryByNameByID
operation deletes a category by its name after inferring its ID.
-
✅ POST /api/v1/categories/delete-multiple
DeleteMultipleCategoriesByID
operation deletes multiple categories by their IDs.
Summary
Jamf Pro Classic API - Computer Groups
This documentation outlines the operations available for computer groups using the Classic API.
Operations
-
✅ GET /JSSResource/computergroups
GetComputerGroups
operation fetches all computer groups.
-
✅ GET /JSSResource/computergroups/id/{id}
GetComputerGroupByID
operation fetches a computer group by its ID.
-
✅ GET /JSSResource/computergroups/name/{name}
GetComputerGroupByName
operation fetches a computer group by its name.
-
✅ POST /JSSResource/computergroups/id/0
CreateComputerGroup
operation creates a new computer group.
-
✅ PUT /JSSResource/computergroups/id/{id}
UpdateComputerGroupByID
operation updates an existing computer group by its ID.
-
✅ PUT /JSSResource/computergroups/name/{name}
UpdateComputerGroupByName
operation updates a computer group by its name.
-
✅ DELETE /JSSResource/computergroups/id/{id}
DeleteComputerGroupByID
operation deletes a computer group by its ID.
-
✅ DELETE /JSSResource/computergroups/name/{name}
DeleteComputerGroupByName
operation deletes a computer group by its name.
Summary
macOS Configuration Profiles - /JSSResource/osxconfigurationprofiles
This documentation outlines the operations available for macOS configuration profiles using the API.
Operations
-
✅ GET /JSSResource/osxconfigurationprofiles
GetMacOSConfigurationProfiles
operation retrieves all macOS configuration profiles.
-
✅ GET /JSSResource/osxconfigurationprofiles/id/{id}
GetMacOSConfigurationProfileByID
operation retrieves the macOS configuration profile by its ID.
-
✅ GET /JSSResource/osxconfigurationprofiles/name/{name}
GetMacOSConfigurationProfileByName
operation retrieves the macOS configuration profile by its name.
-
✅ POST /JSSResource/osxconfigurationprofiles/id/0
CreateMacOSConfigurationProfile
operation creates a new macOS configuration profile.
-
✅ PUT /JSSResource/osxconfigurationprofiles/id/{id}
UpdateMacOSConfigurationProfileByID
operation updates an existing macOS configuration profile by ID.
-
✅ PUT /JSSResource/osxconfigurationprofiles/name/{name}
UpdateMacOSConfigurationProfileByName
operation updates an existing macOS configuration profile by its name.
-
✅ DELETE /JSSResource/osxconfigurationprofiles/id/{id}
DeleteMacOSConfigurationProfileByID
operation deletes an existing macOS configuration profile by ID.
-
✅ DELETE /JSSResource/osxconfigurationprofiles/name/{name}
DeleteMacOSConfigurationProfileByName
operation deletes an existing macOS configuration profile by its name.
Summary
Departments - /JSSResource/departments
This documentation outlines the operations available for departments using the API.
Operations
-
✅ GET /JSSResource/departments
GetDepartments
operation retrieves all departments.
-
✅ GET /JSSResource/departments/id/{id}
GetDepartmentByID
operation retrieves the department by its ID.
-
✅ GET /JSSResource/departments/name/{name}
GetDepartmentByName
operation retrieves the department by its name.
-
✅ POST /JSSResource/departments/id/0
CreateDepartment
operation creates a new department.
-
✅ PUT /JSSResource/departments/id/{id}
UpdateDepartmentByID
operation updates an existing department.
-
✅ PUT /JSSResource/departments/name/{oldName}
UpdateDepartmentByName
operation updates an existing department by its name.
-
✅ DELETE /JSSResource/departments/id/{id}
DeleteDepartmentByID
operation deletes an existing department by its ID.
-
✅ DELETE /JSSResource/departments/name/{name}
DeleteDepartmentByName
operation deletes an existing department by its name.
Summary
macOS Configuration Profiles - /JSSResource/osxconfigurationprofiles
- ✅ GET
/JSSResource/osxconfigurationprofiles
- GetMacOSConfigurationProfiles retrieves all macOS configuration profiles.
- ✅ GET
/JSSResource/osxconfigurationprofiles/id/{id}
- GetMacOSConfigurationProfileByID retrieves the macOS configuration profile by its ID.
- ✅ GET
/JSSResource/osxconfigurationprofiles/name/{name}
- GetMacOSConfigurationProfileByName retrieves the macOS configuration profile by its name.
- ✅ POST
/JSSResource/osxconfigurationprofiles/id/0
- CreateMacOSConfigurationProfile creates a new macOS configuration profile.
- ✅ PUT
/JSSResource/osxconfigurationprofiles/id/{id}
- UpdateMacOSConfigurationProfileByID updates an existing macOS configuration profile by ID.
- ✅ PUT
/JSSResource/osxconfigurationprofiles/name/{name}
- UpdateMacOSConfigurationProfileByName updates an existing macOS configuration profile by its name.
- ✅ DELETE
/JSSResource/osxconfigurationprofiles/id/{id}
- DeleteMacOSConfigurationProfileByID deletes an existing macOS configuration profile by ID.
- ✅ DELETE
/JSSResource/osxconfigurationprofiles/name/{name}
- DeleteMacOSConfigurationProfileByName deletes an existing macOS configuration profile by its name.
Policies - /JSSResource/policies
This documentation outlines the operations available for policies using the API.
Operations
-
✅ GET /JSSResource/policies
GetPolicies
operation retrieves a list of all policies.
-
✅ GET /JSSResource/policies/id/{id}
GetPolicyByID
operation retrieves the details of a policy by its ID.
-
✅ GET /JSSResource/policies/name/{name}
GetPolicyByName
operation retrieves a policy by its name.
-
✅ GET /JSSResource/policies/category/{category}
GetPolicyByCategory
operation retrieves policies by their category.
-
✅ GET /JSSResource/policies/createdBy/{createdBy}
GetPoliciesByType
operation retrieves policies by the type of entity that created them.
-
✅ POST /JSSResource/policies/id/0
CreatePolicy
operation creates a new policy.
-
✅ PUT /JSSResource/policies/id/{id}
UpdatePolicyByID
operation updates an existing policy by its ID.
-
✅ PUT /JSSResource/policies/name/{name}
UpdatePolicyByName
operation updates an existing policy by its name.
-
✅ DELETE /JSSResource/policies/id/{id}
DeletePolicyByID
operation deletes a policy by its ID.
-
✅ DELETE /JSSResource/policies/name/{name}
DeletePolicyByName
operation deletes a policy by its name.
Summary
Jamf Pro API - Self Service Branding macOS
This documentation outlines the operations available for self-service branding configurations for macOS using the API.
Operations
-
✅ GET /api/v1/self-service/branding/macos
GetSelfServiceBrandingMacOS
operation fetches all self-service branding configurations for macOS.
-
✅ GET /api/v1/self-service/branding/macos/{id}
GetSelfServiceBrandingMacOSByID
operation fetches a self-service branding configuration for macOS by its ID.
-
✅ GET /api/v1/self-service/branding/macos/name/{name}
GetSelfServiceBrandingMacOSByNameByID
operation fetches a self-service branding configuration for macOS by its name.
-
✅ POST /api/v1/self-service/branding/macos
CreateSelfServiceBrandingMacOS
operation creates a new self-service branding configuration for macOS.
-
✅ PUT /api/v1/self-service/branding/macos/{id}
UpdateSelfServiceBrandingMacOSByID
operation updates an existing self-service branding configuration for macOS by its ID.
-
✅ PUT - UpdateSelfServiceBrandingMacOSByName
operation updates a self-service branding configuration for macOS by its name.
-
✅ DELETE /api/v1/self-service/branding/macos/{id}
DeleteSelfServiceBrandingMacOSByID
operation deletes a self-service branding configuration for macOS by its ID.
-
✅ DELETE - DeleteSelfServiceBrandingMacOSByName
operation deletes a self-service branding configuration for macOS by its name.
Summary
Jamf Pro Classic API - Scripts
This documentation outlines the operations available for scripts using the API.
Operations
-
✅ GET /JSSResource/scripts
GetScripts
operation retrieves all scripts.
-
✅ GET /JSSResource/scripts/id/{id}
GetScriptsByID
operation retrieves the script details by its ID.
-
✅ GET /JSSResource/scripts/name/{name}
GetScriptsByName
operation retrieves the script details by its name.
-
✅ POST /JSSResource/scripts/id/0
CreateScriptByID
operation creates a new script.
-
✅ PUT /JSSResource/scripts/id/{id}
UpdateScriptByID
operation updates an existing script by its ID.
-
✅ PUT /JSSResource/scripts/name/{name}
UpdateScriptByName
operation updates an existing script by its name.
-
✅ DELETE /JSSResource/scripts/id/{id}
DeleteScriptByID
operation deletes an existing script by its ID.
-
✅ DELETE /JSSResource/scripts/name/{name}
DeleteScriptByName
operation deletes an existing script by its name.
Summary
Jamf Pro Classic API - Sites
This documentation outlines the operations available for sites using the API.
Operations
-
✅ GET /JSSResource/sites
GetSites
operation fetches all sites.
-
✅ GET /JSSResource/sites/id/{id}
GetSiteByID
operation fetches a site by its ID.
-
✅ GET /JSSResource/sites/name/{name}
GetSiteByName
operation fetches a site by its name.
-
✅ POST /JSSResource/sites/id/0
CreateSite
operation creates a new site.
-
✅ PUT /JSSResource/sites/id/{id}
UpdateSiteByID
operation updates an existing site by its ID.
-
✅ PUT /JSSResource/sites/name/{name}
UpdateSiteByName
operation updates a site by its name.
-
✅ DELETE /JSSResource/sites/id/{id}
DeleteSiteByID
operation deletes a site by its ID.
-
✅ DELETE /JSSResource/sites/name/{name}
DeleteSiteByName
operation deletes a site by its name.
Summary
Jamf Pro API - SSO Failover
This documentation outlines the operations available for SSO Failover using the API.
Operations
Summary
Jamf Pro API - Volume Purchasing Subscriptions
This documentation provides details on the API endpoints available for managing Volume Purchasing Subscriptions within Jamf Pro.
Operations
-
✅ GET /api/v1/volume-purchasing-subscriptions
GetVolumePurchasingSubscriptions
retrieves all volume purchasing subscriptions.
-
✅ GET /api/v1/volume-purchasing-subscriptions/{id}
GetVolumePurchasingSubscriptionByID
fetches a single volume purchasing subscription by its ID.
-
✅ POST /api/v1/volume-purchasing-subscriptions
CreateVolumePurchasingSubscription
creates a new volume purchasing subscription. If siteId
is not included in the request, it defaults to siteId: "-1"
.
-
✅ PUT /api/v1/volume-purchasing-subscriptions/{id}
UpdateVolumePurchasingSubscriptionByID
updates a volume purchasing subscription by its ID.
-
✅ DELETE /api/v1/volume-purchasing-subscriptions/{id}
DeleteVolumePurchasingSubscriptionByID
deletes a volume purchasing subscription by its ID.
-
✅ Custom Function
GetVolumePurchasingSubscriptionByNameByID
fetches a volume purchasing subscription by its display name and retrieves its details using its ID.
-
✅ Custom Function
UpdateVolumePurchasingSubscriptionByNameByID
updates a volume purchasing subscription by its display name.
-
✅ Custom Function
DeleteVolumePurchasingSubscriptionByName
deletes a volume purchasing subscription by its display name after resolving the name to an ID.
Summary
-
Total Endpoints Covered: 2
/api/v1/volume-purchasing-subscriptions
/api/v1/volume-purchasing-subscriptions/{id}
-
Total Operations Covered: 5
-
Total Custom Operations Covered: 3
Jamf Pro API - Computer Inventory Collection Settings
This documentation outlines the API endpoints available for managing Computer Inventory Collection Settings in Jamf Pro.
Operations
-
✅ GET /api/v1/computer-inventory-collection-settings
GetComputerInventoryCollectionSettings
retrieves the current computer inventory collection preferences and custom paths.
-
✅ PATCH /api/v1/computer-inventory-collection-settings
UpdateComputerInventoryCollectionSettings
updates the computer inventory collection preferences.
-
✅ POST /api/v1/computer-inventory-collection-settings/custom-path
CreateComputerInventoryCollectionSettingsCustomPath
creates a new custom path for the computer inventory collection settings.
-
✅ DELETE /api/v1/computer-inventory-collection-settings/custom-path/{id}
DeleteComputerInventoryCollectionSettingsCustomPathByID
deletes a custom path by its ID.
Summary
This documentation covers the API endpoints available for retrieving information about the Jamf Pro server.
Operations
- ✅ GET
/api/v2/jamf-pro-information
GetJamfProInformation
retrieves information about various services enabled on the Jamf Pro server, like VPP token, DEP account status, BYOD, and more.
Summary
Jamf Pro Classic API - Classes
This documentation provides details on the API endpoints available for managing classes within Jamf Pro using the Classic API which requires XML data structure support.
Operations
-
✅ GET /JSSResource/classes
GetClasses
retrieves a list of all classes.
-
✅ GET /JSSResource/classes/id/{id}
GetClassesByID
fetches a single class by its ID.
-
✅ GET /JSSResource/classes/name/{name}
GetClassesByName
retrieves a class by its name.
-
✅ POST /JSSResource/classes/id/0
CreateClassesByID
creates a new class with the provided details. Using ID 0
indicates creation as per API pattern. If siteId
is not included, it defaults to siteId: "-1"
.
-
✅ PUT /JSSResource/classes/id/{id}
UpdateClassesByID
updates an existing class with the given ID.
-
✅ PUT /JSSResource/classes/name/{name}
UpdateClassesByName
updates an existing class with the given name.
-
✅ DELETE /JSSResource/classes/id/{id}
DeleteClassByID
deletes a class by its ID.
-
✅ DELETE /JSSResource/classes/name/{name}
DeleteClassByName
deletes a class by its name.
Summary
Jamf Pro Classic API - Computer Invitations
This documentation outlines the API endpoints available for managing computer invitations within Jamf Pro using the Classic API, which relies on XML data structures.
Operations
-
✅ GET /JSSResource/computerinvitations
GetComputerInvitations retrieves a list of all computer invitations.
-
✅ GET /JSSResource/computerinvitations/id/{id}
GetComputerInvitationByID fetches a single computer invitation by its ID.
-
✅ GET /JSSResource/computerinvitations/invitation/{invitation}
GetComputerInvitationsByInvitationID retrieves a computer invitation by its invitation ID.
-
✅ POST /JSSResource/computerinvitations/id/0
CreateComputerInvitation creates a new computer invitation. Using ID 0 indicates creation as per API pattern. If siteId is not included, it defaults to using a siteId of -1, implying no specific site association.
-
[] ❌ PUT /JSSResource/computerinvitations/invitation/{invitation}
There is no documented endpoint for updating a computer invitation by its invitation ID.
-
✅ DELETE /JSSResource/computerinvitations/id/{id}
DeleteComputerInvitationByID deletes a computer invitation by its ID.
-
[] ❌ DELETE /JSSResource/computerinvitations/invitation/{invitation}
There is currently no SDK coverage for deleting an invitation by invitation ID
Summary
-
Total Endpoints Covered: 3
/JSSResource/computerinvitations
/JSSResource/computerinvitations/id/{id}
/JSSResource/computerinvitations/invitation/{invitation}
-
Total Operations Covered: 5
-
Total Operations Not Covered: 3
Jamf Pro Classic API - Disk Encryption Configurations
This documentation provides details on the API endpoints available for managing disk encryption configurations within Jamf Pro using the Classic API which requires XML data structure support.
Endpoints
-
✅ GET /JSSResource/diskencryptionconfigurations
GetDiskEncryptionConfigurations
retrieves a serialized list of all disk encryption configurations.
-
✅ GET /JSSResource/diskencryptionconfigurations/id/{id}
GetDiskEncryptionConfigurationByID
fetches a single disk encryption configuration by its ID.
-
✅ GET /JSSResource/diskencryptionconfigurations/name/{name}
GetDiskEncryptionConfigurationByName
retrieves a disk encryption configuration by its name.
-
✅ POST /JSSResource/diskencryptionconfigurations/id/0
CreateDiskEncryptionConfiguration
creates a new disk encryption configuration with the provided details. Using ID 0
indicates creation as per API pattern.
-
✅ PUT /JSSResource/diskencryptionconfigurations/id/{id}
UpdateDiskEncryptionConfigurationByID
updates an existing disk encryption configuration with the given ID.
-
✅ PUT /JSSResource/diskencryptionconfigurations/name/{name}
UpdateDiskEncryptionConfigurationByName
updates an existing disk encryption configuration with the given name.
-
✅ DELETE /JSSResource/diskencryptionconfigurations/id/{id}
DeleteDiskEncryptionConfigurationByID
deletes a disk encryption configuration by its ID.
-
✅ DELETE /JSSResource/diskencryptionconfigurations/name/{name}
DeleteDiskEncryptionConfigurationByName
deletes a disk encryption configuration by its name.
Summary
Jamf Pro Classic API - Distribution Points
This documentation outlines the operations available for managing Distribution Points within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/distributionpoints
GetDistributionPoints
operation retrieves a serialized list of all distribution points.
-
✅ GET /JSSResource/distributionpoints/id/{id}
GetDistributionPointByID
operation fetches a single distribution point by its ID.
-
✅ GET /JSSResource/distributionpoints/name/{name}
GetDistributionPointByName
operation retrieves a distribution point by its name.
-
✅ POST /JSSResource/distributionpoints/id/0
CreateDistributionPoint
operation creates a new distribution point with the provided details. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/distributionpoints/id/{id}
UpdateDistributionPointByID
operation updates an existing distribution point by its ID.
-
✅ PUT /JSSResource/distributionpoints/name/{name}
UpdateDistributionPointByName
operation updates an existing distribution point by its name.
-
✅ DELETE /JSSResource/distributionpoints/id/{id}
DeleteDistributionPointByID
operation deletes a distribution point by its ID.
-
✅ DELETE /JSSResource/distributionpoints/name/{name}
DeleteDistributionPointByName
operation deletes a distribution point by its name.
Summary
Jamf Pro Classic API - Directory Bindings
This documentation outlines the operations available for managing Directory Bindings within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/directorybindings
GetDirectoryBindings
operation retrieves a serialized list of all directory bindings.
-
✅ GET /JSSResource/directorybindings/id/{id}
GetDirectoryBindingByID
operation fetches a single directory binding by its ID.
-
✅ GET /JSSResource/directorybindings/name/{name}
GetDirectoryBindingByName
operation retrieves a directory binding by its name.
-
✅ POST /JSSResource/directorybindings/id/0
CreateDirectoryBinding
operation creates a new directory binding with the provided details. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/directorybindings/id/{id}
UpdateDirectoryBindingByID
operation updates an existing directory binding by its ID.
-
✅ PUT /JSSResource/directorybindings/name/{name}
UpdateDirectoryBindingByName
operation updates an existing directory binding by its name.
-
✅ DELETE /JSSResource/directorybindings/id/{id}
DeleteDirectoryBindingByID
operation deletes a directory binding by its ID.
-
✅ DELETE /JSSResource/directorybindings/name/{name}
DeleteDirectoryBindingByName
operation deletes a directory binding by its name.
Summary
Jamf Pro Classic API - Computers
This documentation outlines the operations available for managing Computers within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/computers
GetComputers
operation retrieves a serialized list of all computers.
-
✅ GET /JSSResource/computers/id/{id}
GetComputerByID
operation fetches a single computer by its ID.
-
✅ GET /JSSResource/computers/name/{name}
GetComputerByName
operation retrieves a computer by its name.
-
[] ❌ GET /JSSResource/computers/subset/basic
GetComputerByBasicDataSubset
operation retrieves a basic data about a computer.
-
[] ❌ GET /JSSResource/computers/match/{match}
GetComputerBySearchTerm
operation retrieves a Match and performs the same function as a simple search in the GUI.
-
[] ❌ GET /JSSResource/computers/match/name/{matchname}
GetComputerByNameParameter
operation retrieves a Match and performs the same function as a simple search in the GUI.
-
[] ❌ GET /JSSResource/computers/id/{id}/subset/{subset}
GetComputerByIDAndDataSubset
Subset values can also be appended using an ampersand to return multiple subsets (e.g. /subsets/General&Location).
-
[] ❌ GET /JSSResource/computers/name/{name}/subset/{subset}
GetComputerByNameAndDataSubset
Subset values can also be appended using an ampersand to return multiple subsets (e.g. /subsets/General&Location).
-
[] ❌ GET /JSSResource/computers/udid/{udid}
GetComputerByUUID
operation retrieves a computer by its UUID.
-
[] ❌ GET /JSSResource/computers/udid/{udid}/subset/{subset}
GetComputerByUUIDAndDataSubset
operation retrieves a computer by its UUID and a data subset.
-
[] ❌ GET /JSSResource/computers/serialnumber/{serialnumber}
GetComputerBySerialNumber
operation retrieves a computer by its serial number.
-
[] ❌ GET /JSSResource/computers/serialnumber/{serialnumber}/subset/{subset}
GetComputerBySerialNumberAndDataSubset
operation retrieves a computer by its Serial Number and a data subset.
-
[] ❌ GET /JSSResource/computers/macaddress/{macaddress}
GetComputerByMACAddress
operation retrieves a computer by its MAC Address.
-
[] ❌ GET /JSSResource/computers/macaddress/{macaddress}/subset/{subset}
GetComputerByMACAddressAndDataSubset
operation retrieves a computer by its MAC Address and a data subset.
-
✅ POST /JSSResource/computers/id/0
CreateComputer
operation creates a new computer with the provided details. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/computers/id/{id}
UpdateComputerByID
operation updates an existing computer by its ID.
-
✅ PUT /JSSResource/computers/name/{name}
UpdateComputerByName
operation updates an existing computer by its name.
-
[] ❌ PUT /JSSResource/computers/udid/{udid}
UpdateComputerByUUID
operation updates an existing computer by its UUID.
-
[] ❌ PUT /JSSResource/computers/serialnumber/{serialnumber}
UpdateComputerBySerialNumber
operation updates an existing computer by its Serial Number.
-
[] ❌ PUT /JSSResource/computers/macaddress/{macaddress}
UpdateComputerByMacAddress
operation updates an existing computer by its Mac Address.
-
✅ DELETE /JSSResource/computers/id/{id}
DeleteComputerByID
operation deletes a computer by its ID.
-
✅ DELETE /JSSResource/computers/name/{name}
DeleteComputerByName
operation deletes a computer by its name.
-
[] ❌ DELETE /JSSResource/computers/udid/{udid}
- `DeleteComputerByUUID operation deletes a computer by its UUID.
-
[] ❌ DELETE /JSSResource/computers/serialnumber/{serialnumber}
DeleteComputerBySerialNumber
operation deletes a computer by its Serial Number.
-
[] ❌ DELETE /JSSResource/computers/macaddress/{macaddress}
DeleteComputerByMacAddress
operation deletes a computer by its Mac Address.
-
[] ❌ DELETE /JSSResource/computers/extensionattributedataflush/id/{id}
Deletes data collected by an extension attribute
operation Deletes data collected by an extension attribute.
Summary
-
Total Endpoints Covered: 3
/JSSResource/computers
/JSSResource/computers/id/{id}
/JSSResource/computers/name/{name}
-
Total Operations Covered: 8
-
Total Operations Not Covered: 18
Jamf Pro Classic API - Dock Items
This documentation outlines the operations available for managing Dock Items within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/dockitems
GetDockItems
operation retrieves a serialized list of all dock items.
-
✅ GET /JSSResource/dockitems/id/{id}
GetDockItemByID
operation fetches a single dock item by its ID.
-
✅ GET /JSSResource/dockitems/name/{name}
GetDockItemByName
operation retrieves a dock item by its name.
-
✅ POST /JSSResource/dockitems/id/0
CreateDockItem
operation creates a new dock item with the provided details. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/dockitems/id/{id}
UpdateDockItemByID
operation updates an existing dock item by its ID.
-
✅ PUT /JSSResource/dockitems/name/{name}
UpdateDockItemByName
operation updates an existing dock item by its name.
-
✅ DELETE /JSSResource/dockitems/id/{id}
DeleteDockItemByID
operation deletes a dock item by its ID.
-
✅ DELETE /JSSResource/dockitems/name/{name}
DeleteDockItemByName
operation deletes a dock item by its name.
Summary
Jamf Pro Classic API - eBooks
This documentation outlines the operations available for managing eBooks within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/ebooks
GetEbooks
operation retrieves a serialized list of all eBooks.
-
✅ GET /JSSResource/ebooks/id/{id}
GetEbookByID
operation fetches a single eBook by its ID.
-
✅ GET /JSSResource/ebooks/name/{name}
GetEbookByName
operation retrieves an eBook by its name.
-
✅ GET /JSSResource/ebooks/name/{name}/subset/{subset}
GetEbooksByNameAndDataSubset
operation retrieves a specific subset (General, Scope, or SelfService) of an eBook by its name.
-
✅ POST /JSSResource/ebooks/id/0
CreateEbook
operation creates a new eBook with the provided details. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/ebooks/id/{id}
UpdateEbookByID
operation updates an existing eBook by its ID.
-
✅ PUT /JSSResource/ebooks/name/{name}
UpdateEbookByName
operation updates an existing eBook by its name.
-
✅ DELETE /JSSResource/ebooks/id/{id}
DeleteEbookByID
operation deletes an eBook by its ID.
-
✅ DELETE /JSSResource/ebooks/name/{name}
DeleteEbookByName
operation deletes an eBook by its name.
Summary
Jamf Pro Classic API - VPP Mac Applications
This documentation outlines the operations available for managing VPP Mac applications within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/macapplications
GetMacApplications
operation retrieves a serialized list of all VPP Mac applications.
-
✅ GET /JSSResource/macapplications/id/{id}
GetMacApplicationByID
operation fetches a single Mac application by its ID.
-
✅ GET /JSSResource/macapplications/name/{name}
GetMacApplicationByName
operation retrieves a Mac application by its name.
-
✅ GET /JSSResource/macapplications/name/{name}/subset/{subset}
GetMacApplicationByNameAndDataSubset
operation retrieves a specific subset (General, Scope, SelfService, VPPCodes, and VPP) of a Mac application by its name.
-
✅ GET /JSSResource/macapplications/id/{id}/subset/{subset}
GetMacApplicationByIDAndDataSubset
operation retrieves a specific subset (General, Scope, SelfService, VPPCodes, and VPP) of a Mac application by its ID.
-
✅ POST /JSSResource/macapplications/id/0
CreateMacApplication
operation creates a new Mac application with the provided details. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/macapplications/id/{id}
UpdateMacApplicationByID
operation updates an existing Mac application by its ID.
-
✅ PUT /JSSResource/macapplications/name/{name}
UpdateMacApplicationByName
operation updates an existing Mac application by its name.
-
✅ DELETE /JSSResource/macapplications/id/{id}
DeleteMacApplicationByID
operation deletes a Mac application by its ID.
-
✅ DELETE /JSSResource/macapplications/name/{name}
DeleteMacApplicationByName
operation deletes a Mac application by its name.
Summary
Jamf Pro Classic API - iBeacons
This documentation outlines the operations available for managing iBeacons within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/ibeacons
GetIBeacons
operation retrieves a serialized list of all iBeacons.
-
✅ GET /JSSResource/ibeacons/id/{id}
GetIBeaconByID
operation fetches a single iBeacon by its ID.
-
✅ GET /JSSResource/ibeacons/name/{name}
GetIBeaconByName
operation retrieves an iBeacon by its name.
-
✅ POST /JSSResource/ibeacons/id/0
CreateIBeacon
operation creates a new iBeacon with the provided details. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/ibeacons/id/{id}
UpdateIBeaconByID
operation updates an existing iBeacon by its ID.
-
✅ PUT /JSSResource/ibeacons/name/{name}
UpdateIBeaconByName
operation updates an existing iBeacon by its name.
-
✅ DELETE /JSSResource/ibeacons/id/{id}
DeleteIBeaconByID
operation deletes an iBeacon by its ID.
-
✅ DELETE /JSSResource/ibeacons/name/{name}
DeleteIBeaconByName
operation deletes an iBeacon by its name.
Summary
Jamf Pro Classic API - LDAP Servers
This documentation outlines the operations available for managing LDAP servers within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/ldapservers
GetLDAPServers
operation retrieves a serialized list of all LDAP servers.
-
✅ GET /JSSResource/ldapservers/id/{id}
GetLDAPServerByID
operation fetches a single LDAP server by its ID.
-
✅ GET /JSSResource/ldapservers/name/{name}
GetLDAPServerByName
operation retrieves an LDAP server by its name.
-
✅ GET /JSSResource/ldapservers/id/{id}/user/{user}
GetLDAPServerByIDAndUserDataSubset
operation retrieves user data for a specific LDAP server by its ID.
-
✅ GET /JSSResource/ldapservers/id/{id}/group/{group}
GetLDAPServerByIDAndGroupDataSubset
operation retrieves group data for a specific LDAP server by its ID.
-
✅ GET /JSSResource/ldapservers/id/{id}/group/{group}/user/{user}
GetLDAPServerByIDAndUserMembershipInGroupDataSubset
operation retrieves user group membership details for a specific LDAP server by its ID.
-
✅ GET /JSSResource/ldapservers/name/{name}/user/{user}
GetLDAPServerByNameAndUserDataSubset
operation retrieves user data for a specific LDAP server by its name.
-
✅ GET /JSSResource/ldapservers/name/{name}/group/{group}
GetLDAPServerByNameAndGroupDataSubset
operation retrieves group data for a specific LDAP server by its name.
-
✅ GET /JSSResource/ldapservers/name/{name}/group/{group}/user/{user}
GetLDAPServerByNameAndUserMembershipInGroupDataSubset
operation retrieves user group membership details for a specific LDAP server by its name.
-
✅ POST /JSSResource/ldapservers/id/0
CreateLDAPServer
operation creates a new LDAP server with the provided details.
-
✅ PUT /JSSResource/ldapservers/id/{id}
UpdateLDAPServerByID
operation updates an existing LDAP server by its ID.
-
✅ PUT /JSSResource/ldapservers/name/{name}
UpdateLDAPServerByName
operation updates an existing LDAP server by its name.
-
✅ DELETE /JSSResource/ldapservers/id/{id}
DeleteLDAPServerByID
operation deletes an LDAP server by its ID.
-
✅ DELETE /JSSResource/ldapservers/name/{name}
DeleteLDAPServerByName
operation deletes an LDAP server by its name.
Summary
Jamf Pro Classic API - Licensed Software
This documentation outlines the operations available for managing Licensed Software within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/licensedsoftware
GetLicensedSoftware
operation retrieves a serialized list of all Licensed Software.
-
✅ GET /JSSResource/licensedsoftware/id/{id}
GetLicensedSoftwareByID
operation fetches details of a single Licensed Software item by its ID.
-
✅ GET /JSSResource/licensedsoftware/name/{name}
GetLicensedSoftwareByName
operation retrieves details of a Licensed Software item by its name.
-
✅ POST /JSSResource/licensedsoftware/id/0
CreateLicensedSoftware
operation creates a new Licensed Software item. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/licensedsoftware/id/{id}
UpdateLicensedSoftwareByID
operation updates an existing Licensed Software item by its ID.
-
✅ PUT /JSSResource/licensedsoftware/name/{name}
UpdateLicensedSoftwareByName
operation updates an existing Licensed Software item by its name.
-
✅ DELETE /JSSResource/licensedsoftware/id/{id}
DeleteLicensedSoftwareByID
operation deletes a Licensed Software item by its ID.
-
✅ DELETE /JSSResource/licensedsoftware/name/{name}
DeleteLicensedSoftwareByName
operation deletes a Licensed Software item by its name.
Summary
Jamf Pro Classic API - Mobile Device Applications
This documentation outlines the operations available for managing Mobile Device Applications within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/mobiledeviceapplications
GetMobileDeviceApplications
operation retrieves a serialized list of all Mobile Device Applications.
-
✅ GET /JSSResource/mobiledeviceapplications/id/{id}
GetMobileDeviceApplicationByID
operation fetches details of a single Mobile Device Application by its ID.
-
✅ GET /JSSResource/mobiledeviceapplications/name/{name}
GetMobileDeviceApplicationByName
operation retrieves details of a Mobile Device Application by its name.
-
✅ GET /JSSResource/mobiledeviceapplications/bundleid/{bundleid}
GetMobileDeviceApplicationByAppBundleID
operation fetches details of a Mobile Device Application by its Bundle ID.
-
✅ GET /JSSResource/mobiledeviceapplications/bundleid/{bundleid}/version/{version}
GetMobileDeviceApplicationByAppBundleIDAndVersion
operation fetches details of a Mobile Device Application by its Bundle ID and specific version.
-
✅ GET /JSSResource/mobiledeviceapplications/id/{id}/subset/{subset}
GetMobileDeviceApplicationByIDAndDataSubset
operation fetches a Mobile Device Application by its ID and a specified data subset.
-
✅ GET /JSSResource/mobiledeviceapplications/name/{name}/subset/{subset}
GetMobileDeviceApplicationByNameAndDataSubset
operation fetches a Mobile Device Application by its name and a specified data subset.
-
✅ POST /JSSResource/mobiledeviceapplications/id/0
CreateMobileDeviceApplication
operation creates a new Mobile Device Application. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/mobiledeviceapplications/id/{id}
UpdateMobileDeviceApplicationByID
operation updates an existing Mobile Device Application by its ID.
-
✅ PUT /JSSResource/mobiledeviceapplications/name/{name}
UpdateMobileDeviceApplicationByName
operation updates an existing Mobile Device Application by its name.
-
✅ PUT /JSSResource/mobiledeviceapplications/bundleid/{bundleid}
UpdateMobileDeviceApplicationByApplicationBundleID
operation updates an existing Mobile Device Application by its Bundle ID.
-
✅ PUT /JSSResource/mobiledeviceapplications/bundleid/{bundleid}/version/{version}
UpdateMobileDeviceApplicationByIDAndAppVersion
operation updates an existing Mobile Device Application by its ID and specific version.
-
✅ DELETE /JSSResource/mobiledeviceapplications/id/{id}
DeleteMobileDeviceApplicationByID
operation deletes a Mobile Device Application by its ID.
-
✅ DELETE /JSSResource/mobiledeviceapplications/name/{name}
DeleteMobileDeviceApplicationByName
operation deletes a Mobile Device Application by its name.
-
✅ DELETE /JSSResource/mobiledeviceapplications/bundleid/{bundleid}
DeleteMobileDeviceApplicationByBundleID
operation deletes a Mobile Device Application by its Bundle ID.
-
✅ DELETE /JSSResource/mobiledeviceapplications/bundleid/{bundleid}/version/{version}
DeleteMobileDeviceApplicationByBundleIDAndVersion
operation deletes a Mobile Device Application by its Bundle ID and specific version.
Summary
Jamf Pro Classic API - Mobile Device Configuration Profiles
This documentation outlines the operations available for managing Mobile Device Configuration Profiles within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/mobiledeviceconfigurationprofiles
GetMobileDeviceConfigurationProfiles
operation retrieves a serialized list of all Mobile Device Configuration Profiles.
-
✅ GET /JSSResource/mobiledeviceconfigurationprofiles/id/{id}
GetMobileDeviceConfigurationProfileByID
operation fetches details of a single Mobile Device Configuration Profile by its ID.
-
✅ GET /JSSResource/mobiledeviceconfigurationprofiles/name/{name}
GetMobileDeviceConfigurationProfileByName
operation retrieves details of a Mobile Device Configuration Profile by its name.
-
✅ GET /JSSResource/mobiledeviceconfigurationprofiles/id/{id}/subset/{subset}
GetMobileDeviceConfigurationProfileByIDBySubset
operation fetches a specific Mobile Device Configuration Profile by its ID and a specified subset.
-
✅ GET /JSSResource/mobiledeviceconfigurationprofiles/name/{name}/subset/{subset}
GetMobileDeviceConfigurationProfileByNameBySubset
operation fetches a specific Mobile Device Configuration Profile by its name and a specified subset.
-
✅ POST /JSSResource/mobiledeviceconfigurationprofiles/id/0
CreateMobileDeviceConfigurationProfile
operation creates a new Mobile Device Configuration Profile. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/mobiledeviceconfigurationprofiles/id/{id}
UpdateMobileDeviceConfigurationProfileByID
operation updates an existing Mobile Device Configuration Profile by its ID.
-
✅ PUT /JSSResource/mobiledeviceconfigurationprofiles/name/{name}
UpdateMobileDeviceConfigurationProfileByName
operation updates an existing Mobile Device Configuration Profile by its name.
-
✅ DELETE /JSSResource/mobiledeviceconfigurationprofiles/id/{id}
DeleteMobileDeviceConfigurationProfileByID
operation deletes a Mobile Device Configuration Profile by its ID.
-
✅ DELETE /JSSResource/mobiledeviceconfigurationprofiles/name/{name}
DeleteMobileDeviceConfigurationProfileByName
operation deletes a Mobile Device Configuration Profile by its name.
Summary
Jamf Pro Classic API - Mobile Extension Attributes
This documentation outlines the operations available for managing Mobile Extension Attributes within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/mobiledeviceextensionattributes
GetMobileExtensionAttributes
operation retrieves a serialized list of all Mobile Extension Attributes.
-
✅ GET /JSSResource/mobiledeviceextensionattributes/id/{id}
GetMobileExtensionAttributeByID
operation fetches details of a single Mobile Extension Attribute by its ID.
-
✅ GET /JSSResource/mobiledeviceextensionattributes/name/{name}
GetMobileExtensionAttributeByName
operation retrieves details of a Mobile Extension Attribute by its name.
-
✅ POST /JSSResource/mobiledeviceextensionattributes/id/0
CreateMobileExtensionAttribute
operation creates a new Mobile Extension Attribute. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/mobiledeviceextensionattributes/id/{id}
UpdateMobileExtensionAttributeByID
operation updates an existing Mobile Extension Attribute by its ID.
-
✅ PUT /JSSResource/mobiledeviceextensionattributes/name/{name}
UpdateMobileExtensionAttributeByName
operation updates an existing Mobile Extension Attribute by its name.
-
✅ DELETE /JSSResource/mobiledeviceextensionattributes/id/{id}
DeleteMobileExtensionAttributeByID
operation deletes a Mobile Extension Attribute by its ID.
-
✅ DELETE /JSSResource/mobiledeviceextensionattributes/name/{name}
DeleteMobileExtensionAttributeByName
operation deletes a Mobile Extension Attribute by its name.
Summary
Jamf Pro Classic API - Mobile Device Enrollment Profiles
This documentation outlines the operations available for managing Mobile Device Enrollment Profiles within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/mobiledeviceenrollmentprofiles
GetMobileDeviceEnrollmentProfiles
operation retrieves a serialized list of all Mobile Device Enrollment Profiles.
-
✅ GET /JSSResource/mobiledeviceenrollmentprofiles/id/{id}
GetMobileDeviceEnrollmentProfileByID
operation fetches details of a single Mobile Device Enrollment Profile by its ID.
-
✅ GET /JSSResource/mobiledeviceenrollmentprofiles/name/{name}
GetMobileDeviceEnrollmentProfileByName
operation retrieves details of a Mobile Device Enrollment Profile by its name.
-
✅ GET /JSSResource/mobiledeviceenrollmentprofiles/invitation/{invitation}
GetProfileByInvitation
operation fetches a Mobile Device Enrollment Profile by its invitation.
-
✅ GET /JSSResource/mobiledeviceenrollmentprofiles/id/{id}/subset/{subset}
GetMobileDeviceEnrollmentProfileByIDBySubset
operation fetches a specific Mobile Device Enrollment Profile by its ID and a specified subset.
-
✅ GET /JSSResource/mobiledeviceenrollmentprofiles/name/{name}/subset/{subset}
GetMobileDeviceEnrollmentProfileByNameBySubset
operation fetches a specific Mobile Device Enrollment Profile by its name and a specified subset.
-
✅ POST /JSSResource/mobiledeviceenrollmentprofiles/id/0
CreateMobileDeviceEnrollmentProfile
operation creates a new Mobile Device Enrollment Profile. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/mobiledeviceenrollmentprofiles/id/{id}
UpdateMobileDeviceEnrollmentProfileByID
operation updates an existing Mobile Device Enrollment Profile by its ID.
-
✅ PUT /JSSResource/mobiledeviceenrollmentprofiles/name/{name}
UpdateMobileDeviceEnrollmentProfileByName
operation updates an existing Mobile Device Enrollment Profile by its name.
-
✅ PUT /JSSResource/mobiledeviceenrollmentprofiles/invitation/{invitation}
UpdateMobileDeviceEnrollmentProfileByInvitation
operation updates an existing Mobile Device Enrollment Profile by its invitation.
-
✅ DELETE /JSSResource/mobiledeviceenrollmentprofiles/id/{id}
DeleteMobileDeviceEnrollmentProfileByID
operation deletes a Mobile Device Enrollment Profile by its ID.
-
✅ DELETE /JSSResource/mobiledeviceenrollmentprofiles/name/{name}
DeleteMobileDeviceEnrollmentProfileByName
operation deletes a Mobile Device Enrollment Profile by its name.
-
✅ DELETE /JSSResource/mobiledeviceenrollmentprofiles/invitation/{invitation}
DeleteMobileDeviceEnrollmentProfileByInvitation
operation deletes a Mobile Device Enrollment Profile by its invitation.
Summary
Jamf Pro Classic API - Printers
This documentation outlines the API endpoints available for managing printers within Jamf Pro using the Classic API, which supports XML data structures.
Endpoints
-
✅ GET /JSSResource/printers
GetPrinters
retrieves a serialized list of all printers.
-
✅ GET /JSSResource/printers/id/{id}
GetPrinterByID
fetches details of a single printer by its ID.
-
✅ GET /JSSResource/printers/name/{name}
GetPrinterByName
retrieves details of a printer by its name.
-
✅ POST /JSSResource/printers/id/0
CreatePrinters
creates a new printer. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/printers/id/{id}
UpdatePrinterByID
updates an existing printer by its ID.
-
✅ PUT /JSSResource/printers/name/{name}
UpdatePrinterByName
updates an existing printer by its name.
-
✅ DELETE /JSSResource/printers/id/{id}
DeletePrinterByID
deletes a printer by its ID.
-
✅ DELETE /JSSResource/printers/name/{name}
DeletePrinterByName
deletes a printer by its name.
Jamf Pro Classic API - Network Segments
This documentation outlines the operations available for managing Network Segments within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/networksegments
GetNetworkSegments
operation retrieves a serialized list of all Network Segments.
-
✅ GET /JSSResource/networksegments/id/{id}
GetNetworkSegmentByID
operation fetches details of a single Network Segment by its ID.
-
✅ GET /JSSResource/networksegments/name/{name}
GetNetworkSegmentByName
operation retrieves details of a Network Segment by its name.
-
✅ POST /JSSResource/networksegments/id/0
CreateNetworkSegment
operation creates a new Network Segment. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/networksegments/id/{id}
UpdateNetworkSegmentByID
operation updates an existing Network Segment by its ID.
-
✅ PUT /JSSResource/networksegments/name/{name}
UpdateNetworkSegmentByName
operation updates an existing Network Segment by its name.
-
✅ DELETE /JSSResource/networksegments/id/{id}
DeleteNetworkSegmentByID
operation deletes a Network Segment by its ID.
-
✅ DELETE /JSSResource/networksegments/name/{name}
DeleteNetworkSegmentByName
operation deletes a Network Segment by its name.
Summary
Jamf Pro Classic API - Mobile Device Groups
This documentation outlines the operations available for managing Mobile Device Groups within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/mobiledevicegroups
GetMobileDeviceGroups
operation retrieves a serialized list of all Mobile Device Groups.
-
✅ GET /JSSResource/mobiledevicegroups/id/{id}
GetMobileDeviceGroupByID
operation fetches details of a single Mobile Device Group by its ID.
-
✅ GET /JSSResource/mobiledevicegroups/name/{name}
GetMobileDeviceGroupByName
operation retrieves details of a Mobile Device Group by its name.
-
✅ POST /JSSResource/mobiledevicegroups/id/0
CreateMobileDeviceGroup
operation creates a new Mobile Device Group. The ID 0
in the endpoint indicates creation.
-
✅ PUT /JSSResource/mobiledevicegroups/id/{id}
UpdateMobileDeviceGroupByID
operation updates an existing Mobile Device Group by its ID.
-
✅ PUT /JSSResource/mobiledevicegroups/name/{name}
UpdateMobileDeviceGroupByName
operation updates an existing Mobile Device Group by its name.
-
✅ DELETE /JSSResource/mobiledevicegroups/id/{id}
DeleteMobileDeviceGroupByID
operation deletes a Mobile Device Group by its ID.
-
✅ DELETE /JSSResource/mobiledevicegroups/name/{name}
DeleteMobileDeviceGroupByName
operation deletes a Mobile Device Group by its name.
Summary
Jamf Pro Classic API - Mobile Device Provisioning Profiles
This documentation outlines the operations available for managing Mobile Device Provisioning Profiles within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/mobiledeviceprovisioningprofiles
GetMobileDeviceProvisioningProfiles
operation retrieves a serialized list of all Mobile Device Provisioning Profiles.
-
✅ GET /JSSResource/mobiledeviceprovisioningprofiles/id/{id}
GetMobileDeviceProvisioningProfileByID
operation fetches a specific Mobile Device Provisioning Profile by its ID.
-
✅ GET /JSSResource/mobiledeviceprovisioningprofiles/name/{name}
GetMobileDeviceProvisioningProfileByName
operation fetches a specific Mobile Device Provisioning Profile by its name.
-
✅ GET /JSSResource/mobiledeviceprovisioningprofiles/uuid/{uuid}
GetMobileDeviceProvisioningProfileByUUID
operation fetches a specific Mobile Device Provisioning Profile by its UUID.
-
✅ POST /JSSResource/mobiledeviceprovisioningprofiles/id/{id}
CreateMobileDeviceProvisioningProfileByID
operation creates a new Mobile Device Provisioning Profile by its ID.
-
✅ POST /JSSResource/mobiledeviceprovisioningprofiles/name/{name}
CreateMobileDeviceProvisioningProfileByName
operation creates a new Mobile Device Provisioning Profile by its name.
-
✅ POST /JSSResource/mobiledeviceprovisioningprofiles/uuid/{uuid}
CreateMobileDeviceProvisioningProfileByUUID
operation creates a new Mobile Device Provisioning Profile by its UUID.
-
✅ PUT /JSSResource/mobiledeviceprovisioningprofiles/id/{id}
UpdateMobileDeviceProvisioningProfileByID
operation updates an existing Mobile Device Provisioning Profile by its ID.
-
✅ PUT /JSSResource/mobiledeviceprovisioningprofiles/name/{name}
UpdateMobileDeviceProvisioningProfileByName
operation updates an existing Mobile Device Provisioning Profile by its name.
-
✅ PUT /JSSResource/mobiledeviceprovisioningprofiles/uuid/{uuid}
UpdateMobileDeviceProvisioningProfileByUUID
operation updates an existing Mobile Device Provisioning Profile by its UUID.
-
✅ DELETE /JSSResource/mobiledeviceprovisioningprofiles/id/{id}
DeleteMobileDeviceProvisioningProfileByID
operation deletes a Mobile Device Provisioning Profile by its ID.
-
✅ DELETE /JSSResource/mobiledeviceprovisioningprofiles/name/{name}
DeleteMobileDeviceProvisioningProfileByName
operation deletes a Mobile Device Provisioning Profile by its name.
-
✅ DELETE /JSSResource/mobiledeviceprovisioningprofiles/uuid/{uuid}
DeleteMobileDeviceProvisioningProfileByUUID
operation deletes a Mobile Device Provisioning Profile by its UUID.
Summary
Jamf Pro API - Buildings
This documentation outlines the operations available for managing Buildings within Jamf Pro using the API, which supports JSON data structures.
Operations
-
✅ GET /api/v1/buildings
GetBuildings
operation retrieves a serialized list of all buildings.
-
✅ GET /api/v1/buildings/{id}
GetBuildingByID
operation fetches a specific building by its ID.
-
✅ GET /api/v1/buildings/{id}/history
GetBuildingResourceHistoryByID
operation retrieves the resource history of a specific building by its ID.
-
✅ POST /api/v1/buildings
CreateBuilding
operation creates a new building.
-
✅ PUT /api/v1/buildings/{id}
UpdateBuildingByID
operation updates an existing building by its ID.
-
✅ POST /api/v1/buildings/{id}/history
CreateBuildingResourceHistoryByID
operation updates the resource history of a building by its ID.
-
✅ DELETE /api/v1/buildings/{id}
DeleteBuildingByID
operation deletes a building by its ID.
-
✅ POST /api/v1/buildings/delete-multiple
DeleteMultipleBuildingsByID
operation deletes multiple buildings by their IDs.
-
[] ❌ POST /api/v1/buildings/{id}/history/export
ExportBuildingResourceHistoryByID
operation (not implemented/available).
Summary
-
Total Endpoints Covered: 4
/api/v1/buildings
/api/v1/buildings/{id}
/api/v1/buildings/{id}/history
/api/v1/buildings/delete-multiple
-
Total Operations Covered: 8
-
Total Operations Not Covered: 1
Jamf Pro Classic API - Users
This documentation outlines the operations available for managing Users within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/users
GetUsers
operation retrieves a serialized list of all Users.
-
✅ GET /JSSResource/users/id/{id}
GetUserByID
operation fetches a specific User by their ID.
-
✅ GET /JSSResource/users/name/{name}
GetUserByName
operation fetches a specific User by their name.
-
✅ GET /JSSResource/users/email/{email}
GetUserByEmail
operation fetches a specific User by their email.
-
✅ POST /JSSResource/users/id/0
CreateUser
operation creates a new User.
-
✅ PUT /JSSResource/users/id/{id}
UpdateUserByID
operation updates an existing User by their ID.
-
✅ PUT /JSSResource/users/name/{name}
UpdateUserByName
operation updates an existing User by their name.
-
✅ PUT /JSSResource/users/email/{email}
UpdateUserByEmail
operation updates an existing User by their email.
-
✅ DELETE /JSSResource/users/id/{id}
DeleteUserByID
operation deletes a User by their ID.
-
✅ DELETE /JSSResource/users/name/{name}
DeleteUserByName
operation deletes a User by their name.
-
✅ DELETE /JSSResource/users/email/{email}
DeleteUserByEmail
operation deletes a User by their email.
Summary
Jamf Pro Classic API - User Groups
This documentation outlines the operations available for managing User Groups within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/usergroups
GetUserGroups
operation retrieves a serialized list of all User Groups.
-
✅ GET /JSSResource/usergroups/id/{id}
GetUserGroupsByID
operation fetches a specific User Group by its ID.
-
✅ GET /JSSResource/usergroups/name/{name}
GetUserGroupsByName
operation fetches a specific User Group by its name.
-
✅ POST /JSSResource/usergroups/id/0
CreateUserGroup
operation creates a new User Group.
-
✅ PUT /JSSResource/usergroups/id/{id}
UpdateUserGroupByID
operation updates an existing User Group by its ID.
-
✅ PUT /JSSResource/usergroups/name/{name}
UpdateUserGroupByName
operation updates an existing User Group by its name.
-
✅ DELETE /JSSResource/usergroups/id/{id}
DeleteUserGroupByID
operation deletes a User Group by its ID.
-
✅ DELETE /JSSResource/usergroups/name/{name}
DeleteUserGroupByName
operation deletes a User Group by its name.
Summary
Jamf Pro Classic API - User Extension Attributes
This documentation outlines the operations available for managing User Extension Attributes within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/userextensionattributes
GetUserExtensionAttributes
operation retrieves a serialized list of all User Extension Attributes.
-
✅ GET /JSSResource/userextensionattributes/id/{id}
GetUserExtensionAttributeByID
operation fetches a specific User Extension Attribute by its ID.
-
✅ GET /JSSResource/userextensionattributes/name/{name}
GetUserExtensionAttributeByName
operation fetches a specific User Extension Attribute by its name.
-
✅ POST /JSSResource/userextensionattributes/id/0
CreateUserExtensionAttribute
operation creates a new User Extension Attribute.
-
✅ PUT /JSSResource/userextensionattributes/id/{id}
UpdateUserExtensionAttributeByID
operation updates an existing User Extension Attribute by its ID.
-
✅ PUT /JSSResource/userextensionattributes/name/{name}
UpdateUserExtensionAttributeByName
operation updates an existing User Extension Attribute by its name.
-
✅ DELETE /JSSResource/userextensionattributes/id/{id}
DeleteUserExtensionAttributeByID
operation deletes a User Extension Attribute by its ID.
-
✅ DELETE /JSSResource/userextensionattributes/name/{name}
DeleteUserExtensionAttributeByName
operation deletes a User Extension Attribute by its name.
Summary
Jamf Pro Classic API - Mobile Devices
This documentation details the operations available for managing Mobile Devices within Jamf Pro using the Classic API, which supports XML data structures.
Operations
-
✅ GET /JSSResource/mobiledevices
GetMobileDevices
operation retrieves a serialized list of all mobile devices.
-
✅ GET /JSSResource/mobiledevices/id/{id}
GetMobileDeviceByID
operation fetches a specific mobile device by its ID.
-
✅ GET /JSSResource/mobiledevices/name/{name}
GetMobileDeviceByName
operation fetches a specific mobile device by its name.
-
✅ GET /JSSResource/mobiledevices/id/{id}/subset/{subset}
GetMobileDeviceByIDAndDataSubset
operation retrieves a specific subset of data for a mobile device by its ID.
-
✅ GET /JSSResource/mobiledevices/name/{name}/subset/{subset}
GetMobileDeviceByNameAndDataSubset
operation retrieves a specific subset of data for a mobile device by its name.
-
[] ❌ GET /JSSResource/mobiledevices/match/{match}
GetMobileDeviceBySearchTerm
operation retrieves a Match and performs the same function as a simple search in the GUI.
-
[] ❌ GET /JSSResource/mobiledevices/udid/{udid}
GetMobileDeviceByUUID
operation retrieves a mobile device by its UUID.
-
[] ❌ GET /JSSResource/mobiledevices/udid/{udid}/subset/{subset}
GetMobileDeviceByUUIDAndDataSubset
operation retrieves a mobile device by its UUID and a data subset.
-
[] ❌ GET /JSSResource/mobiledevices/serialnumber/{serialnumber}
GetMobileDeviceBySerialNumber
operation retrieves a mobile device by its serial number.
-
[] ❌ GET /JSSResource/mobiledevices/serialnumber/{serialnumber}/subset/{subset}
GetMobileDeviceBySerialNumberAndDataSubset
operation retrieves a mobile device by its Serial Number and a data subset.
-
✅ POST /JSSResource/mobiledevices/id/0
CreateMobileDevice
operation creates a new mobile device.
-
✅ PUT /JSSResource/mobiledevices/id/{id}
UpdateMobileDeviceByID
operation updates an existing mobile device by its ID.
-
✅ PUT /JSSResource/mobiledevices/name/{name}
UpdateMobileDeviceByName
operation updates an existing mobile device by its name.
-
[] ❌ PUT /JSSResource/mobiledevices/udid/{udid}
UpdateMobileDeviceByUDID
operation updates an existing mobile device by its UDID.
-
[] ❌ PUT /JSSResource/mobiledevices/serialnumber/{serialnumber}
UpdateMobileDeviceBySerialNumber
operation updates an existing mobile device by its Serial number.
-
[] ❌ PUT /JSSResource/mobiledevices/macaddress/{macaddress}
UpdateMobileDeviceByMACAddress
operation updates an existing mobile device by its MAC Address.
-
✅ DELETE /JSSResource/mobiledevices/id/{id}
DeleteMobileDeviceByID
operation deletes a mobile device by its ID.
-
✅ DELETE /JSSResource/mobiledevices/name/{name}
DeleteMobileDeviceByName
operation deletes a mobile device by its name.
-
[] ❌ DELETE /JSSResource/computers/udid/{udid}
DeleteComputerByUUID
operation deletes a computer by its UUID.
-
[] ❌ DELETE /JSSResource/mobiledevices/serialnumber/{serialnumber}
DeletemobiledevicesBySerialNumber
operation deletes a computer by its Serial Number.
-
[] ❌ DELETE /JSSResource/mobiledevices/macaddress/{macaddress}
DeletemobiledevicesByMacAddress
operation deletes a computer by its Mac Address.
Summary
-
Total Endpoints Covered: 10
/JSSResource/mobiledevices
/JSSResource/mobiledevices/id/{id}
/JSSResource/mobiledevices/name/{name}
/JSSResource/mobiledevices/id/{id}/subset/{subset}
/JSSResource/mobiledevices/name/{name}/subset/{subset}
-
Total Operations Covered: 10
-
Total Operations Not Covered: 11
Progress Summary
- Total Operations: 393
- Total Covered Operations: 371
- Not Covered: 33
- Partially Covered: 0
- Deprecated:
Notes
- No preview api endpoints will be covered by this sdk. Only generally available endpoints will be covered.