---
title: Jamf
slug: connectors/jamf
docTags: 
createdAt: 2026-06-09T16:30:13.781Z
---

The Jamf connector facilitates the integration of Jamf's device management capabilities with Swimlane's security automation platform, enabling streamlined management and security enforcement for Apple devices.

Jamf is a comprehensive enterprise management software for the Apple platform, simplifying IT management for Mac, iPad, iPhone, and Apple TV. The Jamf Turbine Connector enables seamless integration with Swimlane Turbine, allowing users to automate device enrollment, policy creation, and management tasks. By leveraging this connector, security teams can efficiently manage and secure their Apple device fleet, enforce compliance policies, and respond to incidents with automated workflows.

## Prerequisites

To effectively utilize the Jamf connector with Swimlane, ensure you have the following prerequisites:

- OAuth 2.0 client credentials for secure authentication, which include:
  - URL: The base URL for your Jamf instance.
  - Client ID: Your specific client identifier for API access.
  - Client Secret: A confidential secret key paired with your client ID for authentication.
- HTTP Basic Authentication, which requires:
  - Username: Your Jamf account username.
  - Password: The password associated with your Jamf account.
  - Subdomain: The unique subdomain of your Jamf instance.

## Capabilities

The Jamf connector provides the following capabilities:

- Enroll/Create computers
- Create Policy
- Delete computer
- Delete Policy
- Find Computer by ID
- Find Policy by ID
- Get Info About MDM Commands Made by Jamf
- List Computers
- List Policies
- Post a Command for Creation and Queuing
- Update Computer
- Update Policy

### Additional Information about Capabilities

- When creating a new policy or enrolling a new computer, ID's are always one more than the previous computer or policy.
  Attempting to use a higher number will result in the ID being the next number in the sequence regardless. They cannot
  be renumbered and even if a computer or policy has been deleted, that ID remains unavailable.
- ID, UDID, and serial number must all be unique for each computer.
- Name must be unique for each policy.

## Notes

[Jamf documentation](https://developer.jamf.com/jamf-pro/reference/classic-api)

# Configurations

## HTTP Basic Authentication

Authenticates using username and password.

### Configuration Parameters

| **Parameter** | **Description**                    | **Type** | **Required** |
| ------------- | ---------------------------------- | -------- | ------------ |
| username      | Username                           | string   | Required     |
| password      | Password                           | string   | Required     |
| subdomain     | Subdomain of Jamf                  | string   | Required     |
| verify\_ssl   | Verify SSL certificate             | boolean  | Optional     |
| http\_proxy   | A proxy to route requests through. | string   | Optional     |

## Oauth 2.0 Client Credentials

Authenticates using oauth 2.0 client credentials

### Configuration Parameters

| **Parameter**  | **Description**                    | **Type** | **Required** |
| -------------- | ---------------------------------- | -------- | ------------ |
| url            | A URL to the target host.          | string   | Required     |
| token\_url     |                                    | string   | Optional     |
| client\_id     | The client ID                      | string   | Required     |
| client\_secret | The client secret.                 | string   | Required     |
| verify\_ssl    | Verify SSL certificate             | boolean  | Optional     |
| http\_proxy    | A proxy to route requests through. | string   | Optional     |

# Actions

## Create Computer

Enrolls a new computer in Jamf by providing the necessary path parameters and data body.

### Endpoint

- **URL:** `/computers/id/{{id}}`
- **Method:** `POST`

### Input

| **Argument Name**                                | **Type** | **Required** | **Description**                           |
| ------------------------------------------------ | -------- | ------------ | ----------------------------------------- |
| `data_body`                                      | object   | Required     | Response data                             |
| `data_body.computer`                             | object   | Required     | Response data                             |
| `data_body.computer.general`                     | object   | Required     | Response data                             |
| `data_body.computer.general.name`                | string   | Required     | Response data                             |
| `data_body.computer.general.managed`             | string   | Optional     | Response data                             |
| `data_body.computer.general.username`            | string   | Optional     | Response data                             |
| `data_body.computer.general.management_password` | string   | Optional     | Response data                             |
| `data_body.computer.general.model`               | string   | Optional     | Response data                             |
| `data_body.computer.general.mac_address`         | string   | Optional     | Response data                             |
| `data_body.computer.general.udid`                | string   | Required     | Response data                             |
| `data_body.computer.general.serial_number`       | string   | Required     | Response data                             |
| `path_parameters.id`                             | number   | Required     | Parameters for the Create Computer action |

### Input Example

`{"data_body":{"computer":{"general":{"name":"Test computer name-2","managed":"true","username":"test user-2","management_password":"sample12","model":"13-inch MacBook Pro (Mid 2016)","mac_address":"E0:AC:CB:97:36:G4","udid":"55900BDC-347C-58B1-D249-F32244B11D47","serial_number":"C02Q7KHTGFWQ"}}},"path_parameters":{"id":42}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `computer`    | object   | Output field: computer           |
| `computer.id` | string   | Unique identifier                |

### Output Example

`{"status_code":201,"response_headers":{"Date":"Mon, 16 Oct 2023 13:02:35 GMT","Content-Type":"text/xml;charset=UTF-8","Transfer-Encoding":"chunked","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, A...`

## Create Policy

Creates a new policy in Jamf using the specified ID, requiring both path parameters and data body inputs.

### Endpoint

- **URL:** `/policies/id/{{id}}`
- **Method:** `POST`

### Input

| **Argument Name**                                                         | **Type** | **Required** | **Description**                         |
| ------------------------------------------------------------------------- | -------- | ------------ | --------------------------------------- |
| `data_body`                                                               | object   | Required     | Response data                           |
| `data_body.policy`                                                        | object   | Required     | Response data                           |
| `data_body.policy.general`                                                | object   | Required     | Response data                           |
| `data_body.policy.general.name`                                           | string   | Required     | Response data                           |
| `data_body.policy.general.enabled`                                        | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger`                                        | string   | Optional     | Response data                           |
| `data_body.policy.general.trigger_checkin`                                | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_enrollment_complete`                    | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_login`                                  | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_logout`                                 | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_network_state_changed`                  | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_startup`                                | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_other`                                  | string   | Optional     | Response data                           |
| `data_body.policy.general.frequency`                                      | string   | Optional     | Response data                           |
| `data_body.policy.general.location_user_only`                             | boolean  | Optional     | Response data                           |
| `data_body.policy.general.offline`                                        | boolean  | Optional     | Response data                           |
| `data_body.policy.general.network_limitations`                            | object   | Optional     | Response data                           |
| `data_body.policy.general.network_limitations.minimum_network_connection` | string   | Optional     | Response data                           |
| `data_body.policy.general.network_limitations.any_ip_address`             | boolean  | Optional     | Response data                           |
| `data_body.policy.general.network_requirements`                           | string   | Optional     | Response data                           |
| `path_parameters.id`                                                      | number   | Required     | Parameters for the Create Policy action |

### Input Example

`{"data_body":{"policy":{"general":{"name":"Disk Encryption test-1","enabled":true,"trigger":"Once per computer","trigger_checkin":false,"trigger_enrollment_complete":false,"trigger_login":false,"trigger_logout":false,"trigger_network_state_changed":false,"trigger_startup":false,"trigger_other":"beaconStateChange","frequency":"Once per computer","location_user_only":false,"offline":false,"network_limitations":{"minimum_network_connection":"No Minimum","any_ip_address":true},"network_requirements":"Any"}}},"path_parameters":{"id":36}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `policy`      | object   | Output field: policy             |
| `policy.id`   | string   | Unique identifier                |

### Output Example

`{"status_code":201,"response_headers":{"Date":"Mon, 16 Oct 2023 16:51:41 GMT","Content-Type":"text/xml;charset=UTF-8","Transfer-Encoding":"chunked","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, A...`

## Delete Computer

Removes a specified computer from the Jamf system using its unique ID.

### Endpoint

- **URL:** `/computers/id/{{id}}`
- **Method:** `DELETE`

### Input

| **Argument Name**    | **Type** | **Required** | **Description**                           |
| -------------------- | -------- | ------------ | ----------------------------------------- |
| `path_parameters.id` | number   | Required     | Parameters for the Delete Computer action |

### Input Example

`{"path_parameters":{"id":2}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `computer`    | object   | Output field: computer           |
| `computer.id` | string   | Unique identifier                |

### Output Example

`{"status_code":200,"response_headers":{"Date":"Mon, 16 Oct 2023 13:21:51 GMT","Content-Type":"text/xml;charset=UTF-8","Transfer-Encoding":"chunked","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, A...`

## Delete Policy

Removes a specified policy from Jamf using the unique identifier (ID) provided as a path parameter.

### Endpoint

- **URL:** `/policies/id/{{id}}`
- **Method:** `DELETE`

### Input

| **Argument Name**    | **Type** | **Required** | **Description**                         |
| -------------------- | -------- | ------------ | --------------------------------------- |
| `path_parameters.id` | number   | Required     | Parameters for the Delete Policy action |

### Input Example

`{"path_parameters":{"id":1}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `policy`      | object   | Output field: policy             |
| `policy.id`   | string   | Unique identifier                |

### Output Example

`{"status_code":200,"response_headers":{"Date":"Mon, 16 Oct 2023 17:08:40 GMT","Content-Type":"text/xml;charset=UTF-8","Transfer-Encoding":"chunked","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, A...`

## Find Computer by ID

Retrieve detailed information for a computer within Jamf using its unique identifier.

### Endpoint

- **URL:** `computers/id/{{id}}`
- **Method:** `GET`

### Input

| **Argument Name**    | **Type** | **Required** | **Description**                               |
| -------------------- | -------- | ------------ | --------------------------------------------- |
| `path_parameters.id` | number   | Required     | Parameters for the Find Computer by ID action |

### Input Example

`{"path_parameters":{"id":1}}`

### Output

| **Parameter**                                                   | **Type** | **Description**                                                                |
| --------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------ |
| `status_code`                                                   | number   | HTTP status code of the response                                               |
| `reason`                                                        | string   | Response reason phrase                                                         |
| `computer`                                                      | object   | Output field: computer                                                         |
| `computer.general`                                              | object   | Output field: computer.general                                                 |
| `computer.general.id`                                           | number   | Unique identifier                                                              |
| `computer.general.name`                                         | string   | Name of the resource                                                           |
| `computer.general.network_adapter_type`                         | string   | Type of the resource                                                           |
| `computer.general.mac_address`                                  | string   | Output field: computer.general.mac\_address                                    |
| `computer.general.alt_network_adapter_type`                     | string   | Type of the resource                                                           |
| `computer.general.alt_mac_address`                              | string   | Output field: computer.general.alt\_mac\_address                               |
| `computer.general.ip_address`                                   | string   | Output field: computer.general.ip\_address                                     |
| `computer.general.last_reported_ip`                             | string   | Output field: computer.general.last\_reported\_ip                              |
| `computer.general.serial_number`                                | string   | Output field: computer.general.serial\_number                                  |
| `computer.general.udid`                                         | string   | Unique identifier                                                              |
| `computer.general.jamf_version`                                 | string   | Output field: computer.general.jamf\_version                                   |
| `computer.general.platform`                                     | string   | Output field: computer.general.platform                                        |
| `computer.general.barcode_1`                                    | string   | Output field: computer.general.barcode\_1                                      |
| `computer.general.barcode_2`                                    | string   | Output field: computer.general.barcode\_2                                      |
| `computer.general.asset_tag`                                    | string   | Output field: computer.general.asset\_tag                                      |
| `computer.general.remote_management`                            | object   | Output field: computer.general.remote\_management                              |
| `computer.general.remote_management.managed`                    | boolean  | Output field: computer.general.remote\_management.managed                      |
| `computer.general.remote_management.management_username`        | string   | Name of the resource                                                           |
| `computer.general.remote_management.management_password_sha256` | string   | Output field: computer.general.remote\_management.management\_password\_sha256 |
| `computer.general.supervised`                                   | boolean  | Output field: computer.general.supervised                                      |
| `computer.general.mdm_capable`                                  | boolean  | Output field: computer.general.mdm\_capable                                    |

### Output Example

`{"status_code":200,"response_headers":{"Date":"Mon, 16 Oct 2023 13:08:14 GMT","Content-Type":"text/plain;charset=UTF-8","Content-Length":"3203","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, Accep...`

## Find Policy by ID

Locate a specific policy within Jamf using the unique identifier (ID) provided as a path parameter.

### Endpoint

- **URL:** `/policies/id/{{id}}`
- **Method:** `GET`

### Input

| **Argument Name**    | **Type** | **Required** | **Description**                             |
| -------------------- | -------- | ------------ | ------------------------------------------- |
| `path_parameters.id` | number   | Required     | Parameters for the Find Policy by ID action |

### Input Example

`{"path_parameters":{"id":36}}`

### Output

| **Parameter**                                  | **Type** | **Description**                                               |
| ---------------------------------------------- | -------- | ------------------------------------------------------------- |
| `status_code`                                  | number   | HTTP status code of the response                              |
| `reason`                                       | string   | Response reason phrase                                        |
| `policy`                                       | object   | Output field: policy                                          |
| `policy.general`                               | object   | Output field: policy.general                                  |
| `policy.general.id`                            | number   | Unique identifier                                             |
| `policy.general.name`                          | string   | Name of the resource                                          |
| `policy.general.enabled`                       | boolean  | Output field: policy.general.enabled                          |
| `policy.general.trigger`                       | string   | Output field: policy.general.trigger                          |
| `policy.general.trigger_checkin`               | boolean  | Output field: policy.general.trigger\_checkin                 |
| `policy.general.trigger_enrollment_complete`   | boolean  | Output field: policy.general.trigger\_enrollment\_complete    |
| `policy.general.trigger_login`                 | boolean  | Output field: policy.general.trigger\_login                   |
| `policy.general.trigger_network_state_changed` | boolean  | Output field: policy.general.trigger\_network\_state\_changed |
| `policy.general.trigger_startup`               | boolean  | Output field: policy.general.trigger\_startup                 |
| `policy.general.trigger_other`                 | string   | Output field: policy.general.trigger\_other                   |
| `policy.general.frequency`                     | string   | Output field: policy.general.frequency                        |
| `policy.general.retry_event`                   | string   | Output field: policy.general.retry\_event                     |
| `policy.general.retry_attempts`                | number   | Output field: policy.general.retry\_attempts                  |
| `policy.general.notify_on_each_failed_retry`   | boolean  | Output field: policy.general.notify\_on\_each\_failed\_retry  |
| `policy.general.location_user_only`            | boolean  | Output field: policy.general.location\_user\_only             |
| `policy.general.target_drive`                  | string   | Output field: policy.general.target\_drive                    |
| `policy.general.offline`                       | boolean  | Output field: policy.general.offline                          |
| `policy.general.category`                      | object   | Output field: policy.general.category                         |
| `policy.general.category.id`                   | number   | Unique identifier                                             |
| `policy.general.category.name`                 | string   | Name of the resource                                          |
| `policy.general.date_time_limitations`         | object   | Output field: policy.general.date\_time\_limitations          |

### Output Example

`{"status_code":200,"response_headers":{"Date":"Mon, 16 Oct 2023 17:00:07 GMT","Content-Type":"text/plain;charset=UTF-8","Content-Length":"2948","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, Accep...`

## Get Info About MDM Commands Made by Jamf

Retrieve details on MDM commands issued through Jamf Pro, including their statuses and associated devices.

### Endpoint

- **URL:** `api/v2/mdm/commands`
- **Method:** `GET`

### Input

| **Argument Name**      | **Type** | **Required** | **Description**                                                                                                                                                                                                                                                                            |
| ---------------------- | -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `parameters.page`      | number   | Optional     | The page number to retrieve.                                                                                                                                                                                                                                                               |
| `parameters.page-size` | number   | Optional     | The number of items to return per page.                                                                                                                                                                                                                                                    |
| `parameters.sort`      | string   | Optional     | The field to sort by, with optional direction.                                                                                                                                                                                                                                             |
| `parameters.filter`    | string   | Optional     | Query in the RSQL format, allowing to filter, for a list of commands. All url must contain minimum one filter field. Fields allowed in the query is uuid, clientManagementId, command, status, clientType, dateSent, validAfter, dateCompleted, profileId, profileIdentifier, and actives. |

### Input Example

`{"parameters":{"page":0,"page-size":10,"sort":"dateSent:asc","filter":"status==Pending"}}`

### Output

| **Parameter**                 | **Type** | **Description**                  |
| ----------------------------- | -------- | -------------------------------- |
| `status_code`                 | number   | HTTP status code of the response |
| `reason`                      | string   | Response reason phrase           |
| `totalCount`                  | number   | Count value                      |
| `results`                     | array    | Result of the operation          |
| `results.uuid`                | string   | Unique identifier                |
| `results.dateSent`            | string   | Result of the operation          |
| `results.client`              | object   | Result of the operation          |
| `results.client.managementId` | string   | Unique identifier                |
| `results.client.clientType`   | string   | Type of the resource             |
| `results.commandState`        | string   | Result of the operation          |
| `results.commandType`         | string   | Type of the resource             |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"totalCount":1,"results":[{}]}}`

## List Computer

Retrieve a list of all computers managed by Jamf, including details such as device specifications and status.

### Endpoint

- **URL:** `/computers`
- **Method:** `GET`

### Output

| **Parameter**    | **Type** | **Description**                  |
| ---------------- | -------- | -------------------------------- |
| `status_code`    | number   | HTTP status code of the response |
| `reason`         | string   | Response reason phrase           |
| `computers`      | array    | Output field: computers          |
| `computers.id`   | number   | Unique identifier                |
| `computers.name` | string   | Name of the resource             |

### Output Example

`{"status_code":200,"response_headers":{"Date":"Mon, 16 Oct 2023 13:05:36 GMT","Content-Type":"text/plain;charset=UTF-8","Content-Length":"1067","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, Accep...`

## List Policies

Retrieve a comprehensive list of all policies available within the Jamf platform.

### Endpoint

- **URL:** `/policies`
- **Method:** `GET`

### Output

| **Parameter**   | **Type** | **Description**                  |
| --------------- | -------- | -------------------------------- |
| `status_code`   | number   | HTTP status code of the response |
| `reason`        | string   | Response reason phrase           |
| `policies`      | array    | Output field: policies           |
| `policies.id`   | number   | Unique identifier                |
| `policies.name` | string   | Name of the resource             |

### Output Example

`{"status_code":200,"response_headers":{"Date":"Mon, 16 Oct 2023 17:02:04 GMT","Content-Type":"text/plain;charset=UTF-8","Content-Length":"564","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, Accept...`

## Post a Command for Creation and Queuing

Creates and queues an MDM command with the specified 'commandData' for devices in Jamf. Requires separate privileges per device type and command.

### Endpoint

- **URL:** `api/v2/mdm/commands`
- **Method:** `POST`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**                                                                                                              |
| ------------------------- | -------- | ------------ | ---------------------------------------------------------------------------------------------------------------------------- |
| `commandData`             | object   | Optional     | Response data                                                                                                                |
| `commandData.commandType` | string   | Required     | The type of command to be sent. This must be one of the supported MDM commands.                                              |
| `clientData`              | array    | Optional     | An array of client data objects. Each object should contain a managementId for the device to which the command will be sent. |
| `clientData.managementId` | string   | Optional     | Response data                                                                                                                |

### Input Example

`{"json_body":{"commandData":{"commandType":"APPLY_REDEMPTION_CODE"},"clientData":[{"managementId":"TEST"}]}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":[{"id":"1","href":"https://yourJamfProUrl.jamf/api/v1/resource/1"}]}`

## Update Computer

Modifies the attributes of a specified computer within Jamf by providing its unique ID and updated data body.

### Endpoint

- **URL:** `/computers/id/{{id}}`
- **Method:** `PUT`

### Input

| **Argument Name**                                | **Type** | **Required** | **Description**                           |
| ------------------------------------------------ | -------- | ------------ | ----------------------------------------- |
| `path_parameters.id`                             | number   | Required     | Parameters for the Update Computer action |
| `data_body`                                      | object   | Required     | Response data                             |
| `data_body.computer`                             | object   | Required     | Response data                             |
| `data_body.computer.general`                     | object   | Optional     | Response data                             |
| `data_body.computer.general.name`                | string   | Optional     | Response data                             |
| `data_body.computer.general.managed`             | string   | Optional     | Response data                             |
| `data_body.computer.general.username`            | string   | Optional     | Response data                             |
| `data_body.computer.general.management_password` | string   | Optional     | Response data                             |
| `data_body.computer.general.model`               | string   | Optional     | Response data                             |
| `data_body.computer.general.mac_address`         | string   | Optional     | Response data                             |
| `data_body.computer.general.udid`                | string   | Optional     | Response data                             |
| `data_body.computer.general.serial_number`       | string   | Optional     | Response data                             |

### Input Example

`{"path_parameters":{"id":40},"data_body":{"computer":{"general":{"name":"Test computer name update","managed":"true","username":"Laura","management_password":"sample","model":"13-inch MacBook Pro (Mid 2016)","mac_address":"E0:AC:CB:97:36:G4","udid":"55900BDC-347C-58B1-D249-F32244B11D59","serial_number":"C02Q7KHTGFWA"}}}}`

### Output

| **Parameter**   | **Type** | **Description**                  |
| --------------- | -------- | -------------------------------- |
| `status_code`   | number   | HTTP status code of the response |
| `reason`        | string   | Response reason phrase           |
| `response_text` | string   | Output field: response\_text     |

### Output Example

`{"status_code":201,"response_headers":{"Date":"Fri, 13 Oct 2023 17:23:41 GMT","Content-Type":"text/html;charset=UTF-8","Content-Length":"439","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","x-xss-protection":"1; mode=blo...`

## Update Policy

Updates an existing Jamf policy using the specified ID provided in the path parameters.

### Endpoint

- **URL:** `/policies/id/{{id}}`
- **Method:** `PUT`

### Input

| **Argument Name**                                                         | **Type** | **Required** | **Description**                         |
| ------------------------------------------------------------------------- | -------- | ------------ | --------------------------------------- |
| `data_body`                                                               | object   | Required     | Response data                           |
| `data_body.policy`                                                        | object   | Required     | Response data                           |
| `data_body.policy.general`                                                | object   | Optional     | Response data                           |
| `data_body.policy.general.name`                                           | string   | Optional     | Response data                           |
| `data_body.policy.general.enabled`                                        | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger`                                        | string   | Optional     | Response data                           |
| `data_body.policy.general.trigger_checkin`                                | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_enrollment_complete`                    | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_login`                                  | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_logout`                                 | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_network_state_changed`                  | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_startup`                                | boolean  | Optional     | Response data                           |
| `data_body.policy.general.trigger_other`                                  | string   | Optional     | Response data                           |
| `data_body.policy.general.frequency`                                      | string   | Optional     | Response data                           |
| `data_body.policy.general.location_user_only`                             | boolean  | Optional     | Response data                           |
| `data_body.policy.general.offline`                                        | boolean  | Optional     | Response data                           |
| `data_body.policy.general.network_limitations`                            | object   | Optional     | Response data                           |
| `data_body.policy.general.network_limitations.minimum_network_connection` | string   | Optional     | Response data                           |
| `data_body.policy.general.network_limitations.any_ip_address`             | boolean  | Optional     | Response data                           |
| `data_body.policy.general.network_requirements`                           | string   | Optional     | Response data                           |
| `path_parameters.id`                                                      | number   | Required     | Parameters for the Update Policy action |

### Input Example

`{"data_body":{"policy":{"general":{"name":"Disk Encryption test-update","enabled":true,"trigger":"Once per computer","trigger_checkin":false,"trigger_enrollment_complete":false,"trigger_login":false,"trigger_logout":false,"trigger_network_state_changed":false,"trigger_startup":false,"trigger_other":"beaconStateChange","frequency":"Once per computer","location_user_only":false,"offline":false,"network_limitations":{"minimum_network_connection":"No Minimum","any_ip_address":true},"network_requirements":"Any"}}},"path_parameters":{"id":36}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `policy`      | object   | Output field: policy             |
| `policy.id`   | string   | Unique identifier                |

### Output Example

`{"status_code":201,"response_headers":{"Date":"Mon, 16 Oct 2023 17:04:23 GMT","Content-Type":"text/xml;charset=UTF-8","Transfer-Encoding":"chunked","Connection":"keep-alive","x-frame-options":"DENY","x-content-type-options":"nosniff","cache-control":"no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0","permissions-policy":"geolocation=(), fullscreen=(self)","referrer-policy":"strict-origin-when-cross-origin","accept-ranges":"bytes","server":"Jamf","vary":"Accept-Charset, A...`

# Response Headers

| **Header**                | **Description**                                          | **Example**                                                               |
| ------------------------- | -------------------------------------------------------- | ------------------------------------------------------------------------- |
| accept-ranges             | HTTP response header: accept-ranges                      | bytes                                                                     |
| cache-control             | Directives for caching mechanisms                        | no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0 |
| Connection                | HTTP response header: Connection                         | keep-alive                                                                |
| Content-Length            | The length of the response body in bytes                 | 439                                                                       |
| Content-Type              | The media type of the resource                           | text/html;charset=UTF-8                                                   |
| Date                      | The date and time at which the message was originated    | Mon, 16 Oct 2023 17:04:23 GMT                                             |
| permissions-policy        | HTTP response header: permissions-policy                 | geolocation=(), fullscreen=(self)                                         |
| referrer-policy           | HTTP response header: referrer-policy                    | strict-origin-when-cross-origin                                           |
| server                    | Information about the software used by the origin server | Jamf                                                                      |
| set-cookie                | HTTP response header: set-cookie                         | jpro-ingress=595d0f1f6e37ed1f; path=/; HttpOnly                           |
| strict-transport-security | HTTP response header: strict-transport-security          | max-age=63072000; includeSubDomains;                                      |
| Transfer-Encoding         | HTTP response header: Transfer-Encoding                  | chunked                                                                   |
| vary                      | HTTP response header: vary                               | Accept-Charset, Accept-Encoding, Accept-Language, Accept                  |
| x-content-type-options    | HTTP response header: x-content-type-options             | nosniff                                                                   |
| x-frame-options           | HTTP response header: x-frame-options                    | DENY                                                                      |
| x-xss-protection          | HTTP response header: x-xss-protection                   | 1; mode=block                                                             |
