---
title: "Jamf Pro API Connector for Okta Workflows"
slug: "jamf-pro-api-connector-for-okta-workflows"
tags: ["Jamf Pro API"]
updated: 2026-01-16T16:00:51Z
published: 2026-01-16T16:00:51Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://trusted.jamf.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Jamf Pro API Connector for Okta Workflows

Changelog

| Version | Release date | What’s new |
| --- | --- | --- |
| 1.0.0 - 0.37.0 | July 2023 | Initial release |
| 1.1.0 - 0.43.0 | April 2025 | - Updated the connector to support both basic and API client authentication methods. You will need to reauthorize the connector to switch between authentication methods. - Added a new action "Send MDM Command" making use of the Jamf Pro API endpoint /v2/mdm/commands. - Updated the "Refresh Bearer Token" command to support API Client Authentication |

## Description

The Jamf Pro API connector for Okta Workflows enable Jamf customers to interact with Jamf Pro via Okta's low code automation engine, removing the need to manually write complex API scripts.

This connector leverages the Jamf Pro API, one of the two APIs offered to Jamf Pro customers along with the Classic API. A documentation of the Classic API connector for Okta Workflows is available here: [https://help.okta.com/wf/en-us/Content/Topics/Workflows/connector-reference/jamf/jamf.htm](https://help.okta.com/wf/en-us/Content/Topics/Workflows/connector-reference/jamf/jamf.htm)

Compared to the Classic API, the Jamf Pro API provides a more modern approach to interface with Jamf Pro, offering new features and exclusive API endpoints as Jamf Pro gets updated other time, but doesn’t intend to fully replace the Classic API connector in the near future.

The Jamf Pro API supports OAuth (ROPC grant type) authentication, offers full JSON support with filtering, sorting and pagination functions. The complete documentation of this API is available here: [https://developer.jamf.com/jamf-pro/reference/jamf-pro-api](https://developer.jamf.com/jamf-pro/reference/jamf-pro-api)

## Authorization

When you add a Jamf Pro API card to a flow for the first time, you'll be prompted to create a configuration. This will allow you to integrate the connector with your Jamf Pro tenant, save your authentication information, and reuse that configuration next time you build a flow with the connector. By doing so, you don't have to authenticate every time you want to build a flow with this connector. Instead, use the configuration you have already set up.

This connector supports two types of authentications:

- Basic authentication based on Jamf Pro user credentials.
- Client authentication based on an API client ID and secret.

### Prerequisites

To successfully register the connector in Okta Workflows, you will either require a Jamf Pro user with the proper permissions or you will need to create a new API client with at least one role assigned to it.

A Jamf Pro user should be configured based on the following settings:

- Type: **Standard User**
- Access level: **Full Access**
- Privileges: We recommend setting privileges to **Administrator** for testing purpose, then reducing account privileges to the minimum required by your workflows.

An API client should be configured based on the following settings:

- API roles: **Any role** is sufficient to register the connector. More roles must be assigned to the API client depending on the workflows you will build.
- Access token lifetime: Leave the value to its **default setting** or extend it based on your needs.
- Enable/disable API client: **Enabled**

**Tip:** You can create multiple Jamf Pro API connectors and manage them independently from your Connections page.

### Create a Jamf connection

To set up a new connection in Jamf Pro API:

1. Navigate to the **Connections** tab.
2. Click **New Connection**.
3. Enter a **Connection Nickname**. This should be unique. This is a helpful feature to enable you to differentiate between multiple Jamf Pro API connections.
4. Add an additional description to your connector if needed.
5. In the **Full Instance URL** field, enter the url. For example, **https://instance.jamfcloud.com**.
6. In the**Authentication Method** field, choose between the following based on your preferences:
  1. **API Client credentials**
  2. **Basic authentication**
7. In the **Username or API Client ID** field, enter a Jamf Pro username or a client ID.
8. In the **Password or API Client Secret** field, enter a Jamf Pro user password or a client secret.
9. Click **Create** to validate the information entered and check the connection to your Jamf Pro instance. This will also save your connection.

### Bearer Token authentication

The Jamf Pro API uses a token-based authentication scheme. In order to perform successful requests to the Jamf Pro API you must present a valid token in the Authorization header of each request. The workflow of requesting an initial token and using that token in API requests is outlined below:

1. In a new workflow, create a Jamf Pro API Action “Generate New Bearer Token”
2. Drag the “Jamf Pro Token” as an input variable in any other Jamf Pro API Action

![](https://cdn.document360.io/e5d71abd-07b9-46d0-8876-03cc9073df6b/Images/Documentation/jamf-pro-api-connector-for-okta-workflows-image-pxb9l6ls.png)

## Jamf Pro API connector action cards

| **Actions** | **Description** |
| --- | --- |
| Custom API Action | Perform your own action on any Jamf Pro API endpoint. |
| Deploy macOS Package Using MDM | Deploys packages to macOS devices using the InstallEnterpriseApplication MDM command. Please note, the JCDS is not supported for this command. You'll need to use another CDN, or an on-prem HTTPS file share. |
| Generate Bearer Token | Generate a new Bearer token based on provided Jamf Pro credentials. |
| List Automated Device Enrollment Instances | Search for device enrollment instances. |
| List Available Devices by Device Enrollment Instance ID | Retrieves a list of devices assigned to this Jamf Pro instance by the supplied Automated Device Enrollment instance id. |
| List Available macOS and iOS Managed Software Updates | Retrieves available macOS and iOS Managed Software Updates. |
| List Computer Inventories | Return paginated results of all computers inventory data, with the possibility to narrow down results with filtering options. |
| List Jamf Pro Notifications | Return all current notifications as shown in Jamf Pro UI. |
| List Managed Software Update Statuses | Retrieves macOS and iOS Managed Software Update Statuses, with the possibility to narrow down results with filtering options. |
| List Managed Software Update Statuses by Device or Group | Retrieves Managed Software Update Statuses, by Device ID or Group ID. |
| List Mobile Device Inventories | Return paginated results of all mobile devices inventory data. |
| List Volume Purchasing Locations | Return information on VPP locations, including token expiration date. |
| Read Computer Compliance Status | Return basic compliance information for the given computer device. |
| Read Computer FileVault Recovery Key | Return the FileVault 2 Personal Recovery Key information available for one computer. |
| Read Computer Inventory | Return all inventory sections of a given computer. |
| Read Computer Recovery Lock Password | Return the Recovery Lock Password of a given computer. Please note that this actions will throw an error if no Recovery Lock Password has been defined on the requested computer. |
| Read Jamf Pro Device Statistics | Gets statistics about managed/unmanaged devices and computers in the inventory. |
| Read Mobile Device Compliance Status | Return basic compliance information for the given mobile device. |
| Read Mobile Device Inventory | Return all inventory sections of a given mobile device. |
| Redeploy Jamf Application | Redeploys Jamf Protect or Jamf Connect to a given computer or computer group based on its ID. |
| Redeploy Jamf Management Framework | Redeploys the Jamf Management Framework for a given computer based on its ID. |
| Refresh Bearer Token | This action will invalidate the currently existing bearer token and generate a new one. |
| Rename Mobile Device | Rename a given mobile device with the option to enforce name change on the device. |
| Restart Device | Restarts Computer or Mobile Device using JSS ID. |
| Update Computer Inventory | Update one or several inventory fields for a given computer, using a JSON object as input data. |
| Update Mobile Device Inventory | Update one or several inventory fields for a given mobile device, using a JSON object as input data. |

### Custom API Action

Make an authenticated HTTP request to Jamf Pro API. See [Jamf Pro API Reference](https://developer.jamf.com/jamf-pro/reference/jamf-pro-api).

**Option**

| **Field** | Definition | Type | Required |
| --- | --- | --- | --- |
| Method | These are supported HTTP request methods, or HTTP verbs, in a custom API call (see [HTTP request methods](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods)). - GET: Retrieves data from a web server based on parameters. This method requests a representation of the specified resource. If a request is successful, a 200 (OK) response message is returned with the requested content. - POST: Sends data to a web server based on parameters (for example, uploading a file). Multiple POST requests may result in a different outcome than a single POST. Exercise caution to avoid sending multiple POST requests unintentionally. If a request is successful, a 200 (OK) response message is returned. - PUT: Sends data to be stored at a specific location on a web server based on parameters (for example, uploading a file). Unlike POST requests, PUT requests are idempotent. For successful requests, the result of a single PUT request is the same as many identical PUT requests. If a request is successful, a 200 (OK), 201 (Created), or 204 (No Content) response message is returned. - PATCH: Applies partial modifications to a resource on a web server based on parameters. PATCH isn't idempotent. Multiple PATCH requests could have unintended consequences. If a PATCH is successful, a 200 (OK) or 204 (No Content) response message is returned. - DELETE: Deletes the specified resource (if it exists) from the web server based on parameters. If a DELETE is successful, a 200 (OK) response message is returned. | Dropdown | TRUE |

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Relative URL | URL address on the web server to which you are attempting to interact. Specify the relative URL as /{insert_remaining_URL}. You can specify query parameters in the relative URL using "?", or specify the query parameters as an object key pair in the Query input. For example, for the Jamf Pro API endpoint **https://instance.jamfcloud.com/api/v1/categories** the relative URL is /v1/categories | String | TRUE |
| Headers | Specify any headers required in addition to authorization or content-type (these are already handled by this connector). | Object | FALSE |
| Query | Specify any additional query parameters that should be included in object format (key value pairs). | Object | FALSE |
| Body | Specify a request body in JSON format. This field is not available for the Get request type. | Object | FALSE |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | FALSE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Body | Data returned from your selected HTTP request. For example, the data from a GET request. | Object |
| Status Code | Result of the operation. The connector returns an HTTP status code that indicates whether the action taken by the card succeeded or failed. For example: - A 201 Created status code indicates success where a new resource was created. - A 403 Forbidden error indicates that the HTTP request wasn't processed because the necessary permissions were missing. For a full list of possible status codes, see [HTTP status codes](https://partner-jamf.workflows.okta.com/app/help/wf/en-us/Content/Topics/Workflows/execute/http-status-codes.htm). | Number |
| Headers | Detailed context for the status code, unrelated to the output body. Response headers are dependent on your selected HTTP request option. Note that not all headers are response headers. This will be usually similar to {"Content-type":"application/json"}. | Object |

### Deploy macOS Package Using MDM

Deploys packages to macOS devices using the InstallEnterpriseApplication MDM command.

Please note, the JCDS is not supported for this command. You'll need to use another CDN, or an on-prem HTTPS file share.

This actions uses the /v1/deploy-package API endpoint, more info in the [API Reference doc](https://developer.jamf.com/jamf-pro/reference/post_v1-deploy-package).

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Verbose Mode | Enables the 'verbose' response, which includes information about the commands queued as well as information about commands that failed to queue. | Boolean | TRUE |
| Install as Managed | Install the application as a managed one or not | Boolean | TRUE |
| Device IDs | List of computer IDs targeted to deploy a package. | List of numbers | FALSE |
| Group ID | Smart or static group of computers targeted to deploy a package. | Number | FALSE |
| URL | Package installer URL, it must trigger a .pkg file download. Please note, the Jamf Cloud Distribution Point is not supported for this command. ***example: https://example.jamf.com/this/package*** | String | TRUE |
| Hash | Hash result of the package installer ***example: dcb02a41cd6d842943459a88c96a5f72*** | String | TRUE |
| Hash Type | Hash Type, can be MD5 or SHA256 | String | TRUE |
| Display Image URL | URL of the application icon ***example: https://example.jamf.com/img/display/this/package.jpg*** | String | FALSE |
| Full Size Image URL | URL of the application icon in full size ***example: https://example.jamf.com/img/full/this/package.jpg*** | String | FALSE |
| Bundle ID | Application bundle ID ***example: com.jamf.example*** | String | TRUE |
| Bundle Version | Application version ***example: 0.1.0*** | String | TRUE |
| Subtitle | Application subtitle ***example: Subtitle*** | String | FALSE |
| Title | Application title ***example: App Title*** | String | TRUE |
| Size in Bytes | Size of the package installer, in bytes ***example: 12345*** | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Response | A user-friendly message based on the returned status code. | String |
| Queued Commands | A list of all MDM command UUIDs returned for each device receiving the package. | List of objects |
| Errors | A list of all errors returned. | List of objects |
| Raw Object | Result of the command as a JSON object. | Object |

### Generate Bearer Token

Generate a new Bearer token based on provided Jamf Pro credentials.

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Jamf Pro Token | Bearer Token required to authenticate any other API call on the Jamf Pro API. | String |
| Created Date | Creation date of the Bearer Token, given in ISO date format. | Date |
| Expiry Date | Expiration date of the Bearer Token, given in ISO date format. | Date |
| Authentication Method | This field indicates if the token has been generated based on a Jamf Pro user or an API client. | String |

### List Automated Device Enrollment Instances

Search for device enrollment instances

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| ADE Instance IDs | List of all Automated Device Enrollment instance IDs configured in the Jamf Pro instance. | List of numbers |
| Results | List of all Automated Device Enrollment instance configured in the Jamf Pro instance, given as a list of JSON object for advanced parsing needs. | List of objects |

### List Available Devices by Device Enrollment Instance ID

Retrieves a list of devices assigned to this Jamf Pro instance by the supplied Automated Device Enrollment instance id

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| ADE Instance ID | An Automated Device Enrollment ID, required to perform the API call. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Device IDs | List of all device IDs assigned to this Jamf Pro instance by the supplied Automated Device Enrollment instance id. | List of numbers |
| Device Serial Numbers | List of all device serial numbers assigned to this Jamf Pro instance by the supplied Automated Device Enrollment instance id. | List of strings |
| Computers List | List of computers assigned by the supplied ADE instance, given as a list of JSON objects. | List of objects |
| iOS Devices List | List of iOS devices assigned by the supplied ADE instance, given as a list of JSON objects. | List of objects |
| Apple TVs List | List of Apple TVs assigned by the supplied ADE instance, given as a list of JSON objects. | List of objects |
| Raw object | List of all items returned by the API call, given as a list of JSON object for advanced parsing needs. | List of objects |

### List Available macOS and iOS Managed Software Updates

Retrieves available macOS and iOS Managed Software Updates.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Available macOS Updates | A list of all the macOS versions available to use with specific remote MDM commands, as specified by the Apple MDM protocol. | List of strings |
| Available iOS Updates | A list of all the iOS versions available to use with specific remote MDM commands, as specified by the Apple MDM protocol. | List of strings |

### List Computer Inventories

Return paginated results of all computers inventory data, with the possibility to narrow down results with filtering options.

Additional Inventory Section, Sorting and Filter information available here: [https://developer.jamf.com/jamf-pro/reference/get_v1-computers-inventory](https://developer.jamf.com/jamf-pro/reference/get_v1-computers-inventory)

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Page Size | Size of each request during a paginated search. If left blank, the default value is 100. | Number | FALSE |
| Inventory Section | The inventory section to return in results. Can be: 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 | String | FALSE |
| Sorting | 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. | String | FALSE |
| Filter | Query in the RSQL format, allowing to filter computer inventory collection. Default filter is empty query - returning all results for the requested page. | String | FALSE |
| Custom RSQL Filter | A custom RSQL filter for advanced filtering needs, can be used in addition to pre-built filtering fields or to replace them. | String | FALSE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Total Count | Total count of all computer matching the filtering criteria. | Number |
| Results | List of all computer inventories matching the filtering criteria. | List of objects |

### List Jamf Pro Notifications

Return all current notifications as shown in Jamf Pro UI

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Notifications | A list of all notifications as displayed in Jamf Pro’s GUI. | List of objects |

### List Managed Software Update Statuses

Retrieves macOS and iOS Managed Software Update Statuses, with the possibility to narrow down results with filtering options.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |

**RSQL Filters**

Use RSQL filters to narrow down results, using various filter options. All built-in filter options use the default == statement. For more advanced RSQL filtering options, ignore the built-in filter options and use the Custom RSQL Filter input field.

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| OS Updates Status ID | ID of the OS update status entry. | Number | FALSE |
| Device ID | ID of the target device. | Number | FALSE |
| Device Type | Type of the target device, Computer/Mobile Device/Apple TV | String | FALSE |
| Downloaded | Has the update been downloaded on devices, True/False | Boolean | FALSE |
| Product Key | Product Key of the OS Update. ***Example: iOSUpdate19F77*** | String | FALSE |
| Status | Status of the OS update entry. ***Example: INSTALLED*** | String | FALSE |
| Custom RSQL Filter | Customer RSQL filter options for advanced filtering needs. This field supports multiple filter options as well as advanced logic (==, >=, <=, !=, etc). ***Example: status!=INSTALLED;created>=1970-01-01T00:00:00Z*** | String | FALSE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Total Count | Total number of entries returned by API call. | Number |
| Results | Return a list of entries with details on managed software update statuses, given as a list of JSON objects. | List of objects |

### List Managed Software Update Statuses by Device or Group

Retrieves Managed Software Update Statuses, by Device ID or Group ID.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Device Type | Type of devices to target, Computers or Mobile Devices. | String | TRUE |
| ID Type | Type of ID to search for, Device ID or Group ID. | String | TRUE |
| ID | Unique ID of the device/group. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Total Count | Total number of entries returned by API call. | Number |
| Results | Return a list of entries with details on managed software update statuses, given as a list of JSON objects. | List of objects |

### List Mobile Device Inventories

Return paginated results of all mobile devices inventory data

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Page Size | Size of each request during a paginated search. If left blank, the default value is 100. | Number | FALSE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Mobile Devices Count | Total of all mobile devices found, based on search criterias. | Number |
| Mobile Device IDs | List of all mobile device IDs found, based on search criterias. | List of numbers |
| Mobile Device Serial Numbers | List of all mobile device serial numbers found, based on search criterias. | List of strings |
| Mobile Devices | List of all items returned by the API call, given as a list of JSON object for advanced parsing needs. | List of objects |

### List Volume Purchasing Locations

Return information on VPP locations, including token expiration date.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| VPP Locations | List of all VPP Locations returned by the API call, given as a list of JSON objects for advanced parsing needs. | List of objects |

### Read Computer Compliance Status

Return basic compliance information for the given computer device

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Computer ID | Unique ID of the computer. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Result | Return information about the compliance states and compliance vendors applicable to the requested device, given as a list of JSON objects. | List of objects |

### Read Computer FileVault Recovery Key

Return the FileVault 2 Personal Recovery Key information available for one computer.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Computer ID | Unique ID of the computer. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| FileVault Recovery Key | FileVault 2 Personal Recovery Key for the requested computer. | String |
| Computer ID | Unique ID of the computer. | Number |
| Computer Name | Name of the computer. | String |
| Boot Partition Encryption Details | Information on the boot partition encryption, given as a JSON object. | Object |
| Key Validity Status | Validity of the Personal Recovery Key. | String |
| Institutional Recovery Key Present | Assess if an institutional recovery key is present or not. | Boolean |
| Disk Encryption Configuration | Name of the assigned disk encryption configuration. | String |

### Read Computer Inventory

Return all inventory sections of a given computer.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Computer ID | Unique ID of the computer. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Computer ID | Unique ID of the computer. | Number |
| Computer Name | Name of the computer. | String |
| Computer Serial Number | Serial Number of the computer. | String |
| Inventory | Complete inventory of the computer, given as a JSON object. | Object |

### Read Computer Recovery Lock Password

Return the Recovery Lock Password of a given computer. Please note that this action will throw an error if no Recovery Lock Password has been defined on the requested computer.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Computer ID | Unique ID of the computer. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Recovery Lock Password | Recovery Lock Password of the requested computer. | String |

### Read Jamf Pro Device Statistics

Gets statistics about managed/unmanaged devices and computers in the inventory.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Managed Computers | The total number of managed computers in this Jamf Pro instance. | Number |
| Unmanaged Computers | The total number of unmanaged computers in this Jamf Pro instance. | Number |
| Managed Mobile Devices | The total number of managed mobile devices in this Jamf Pro instance. | Number |
| Unmanaged Mobile Devices | The total number of unmanaged mobile devices in this Jamf Pro instance. | Number |

### Read Mobile Device Compliance Status

Return basic compliance information for the given mobile device

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Mobile Device ID | Unique ID of the mobile device. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Result | Return information about the compliance states and compliance vendors applicable to the requested device, given as a list of JSON objects. | List of objects |

### Read Mobile Device Inventory

Return all inventory sections of a given mobile device.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Mobile Device ID | Unique ID of the mobile device. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Mobile Device ID | Unique ID of the mobile device. | Number |
| Mobile Device Name | Name of the mobile device. | String |
| Mobile Device Serial Number | Serial number of the mobile device. | String |
| Inventory | Complete inventory of the mobile device, given as a JSON object. | Object |

### Redeploy Jamf Application

Redeploys Jamf Protect or Jamf Connect to a given computer or computer group based on its ID.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Computer ID | Unique ID of the computer. | Number | TRUE |
| Group ID | Unique ID of the group. | Number | TRUE |
| Jamf Application | Choose between Jamf Connect or Jamf Protect | Text | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Response | A user-friendly message based on the returned status code. | String |
| Queued Commands | A list of all MDM command UUIDs returned for each device receiving the package. | List of objects |
| Errors | A list of all errors returned. | List of objects |
| Raw Object | Result of the command as a JSON object. | Object |

### Redeploy Jamf Management Framework

Redeploys the Jamf Management Framework for a given computer based on its ID.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Computer ID | Unique ID of the computer. | Number | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Message | A user friendly message returned after a successful API call. | String |
| Device ID | Unique ID of the device receiving the command. | String |
| Command UUID | Unique ID of the MDM command sent to the device. | String |

### Refresh Bearer Token

This action will invalidate the currently existing bearer token and generate a new one.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Current Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Current Token Expiry Date | Expiration date of the currently active bearer token. If this field is left blank, basic authentication will be used to generated a new token. | Date | FALSE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| New Token | New Bearer Token required to authenticate any other API call on the Jamf Pro API. | String |
| Expiry Date | Expiration date of the Bearer Token, given in ISO date format. | Date |

### Rename Mobile Device

Rename a given mobile device with the option to enforce name change on the device.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Mobile Device ID | Unique ID of the mobile device. | Number | TRUE |
| Mobile Device Name | Name of the mobile device. | String | TRUE |
| Enforce Name | Determine if the mobile device name must be enforced by Jamf Pro to prevent name changes on the end-user side. | Boolean | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Updated Name | New name of the mobile device. | String |

### Restart Device

Restarts Computer or Mobile Device using JSS ID.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Device ID | Unique ID of the device. | Number | TRUE |
| Device Type | Device type to target, computer or mobile device. | Dropdown | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Device ID | Unique ID of the device. | Number |
| Management ID | Unique Management ID of the device. | String |

### Send MDM Command

Send a custom MDM command to one or several devices

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Device Management IDs | A list of device management IDs. | List of strings | TRUE |
| Command Type | The name of the MDM command to send (e.g.: DEVICE_RESTART). Refer to the Jamf Pro API reference for a list of supported command types. | String | TRUE |
| Command Parameters | A JSON object containing any additional parameters that may be required depending on the command type. | Object | FALSE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Status Code | Status code returned by the Jamf Pro server. | Number |
| Command IDs | A list of objects containing more the uuid of each command sent to devices. | List of objects |

### Update Computer Inventory

Update one or several inventory fields for a given computer, using a JSON object as input data.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Computer ID | Unique ID of the computer. | Number | TRUE |
| Inventory Data | Inventory fields to update on the requested computer, to provide as a JSON object. | Object | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Updated Inventory | Inventory of the updated computer, given as a JSON object. | Object |

### Update Mobile Device Inventory

Update one or several inventory fields for a given mobile device, using a JSON object as input data.

**Input**

| **Field** | **Definition** | **Type** | **Required** |
| --- | --- | --- | --- |
| Bearer Token | Specify a Jamf Pro bearer token to use for authenticating the call. | String | TRUE |
| Mobile Device ID | Unique ID of the mobile device. | Number | TRUE |
| Inventory Data | Inventory fields to update on the requested device, to provide as a JSON object. | Object | TRUE |

**Output**

| **Field** | **Definition** | **Type** |
| --- | --- | --- |
| Updated Inventory | Inventory of the updated device, given as a JSON object. | Object |
