API Requests PRO
Key name: APIRequests
Element type: Dictionary
Status: Optional
You can define here all the API requests you want Octory to make with a SendRequest action.
You can also define some useful keys that will be used by the requests.
Keys
Name | Type | Possible values | Required |
---|---|---|---|
JamfBaseURL | String | - | |
JamfProBaseURL | String | - | |
AirwatchBaseURL | String | - | |
DefaultMDMApi | String | Jamf , JamfPro , AirWatch | |
Models | Dictionary (API Request) | - | Required |
Detail
JamfBaseURL
Type: String
Explanation: The base URL of your Jamf API. Example: https://mycompany.jamfcloud.com/JSSResource/
JamfProBaseURL
Type: String
Explanation: The base URL of your Jamf Pro API. Example: https://mycompany.jamfcloud.com/api/v1/
AirwatchBaseURL
Type: String
Explanation: The base URL of your Workspace ONE API. Example: https://cnXXXX.awmdm.com/API/
DefaultMDMApi
Type: String
Possible values: Jamf
, JamfPro
, AirWatch
Explanation: When defining a api request, you can specify the MDM API to target to Octory. This way, Octory will process the request accordingly to the MDM API requirements. You can specify here a default MDM API to use when it is omitted.
Models Required
Type: Dictionary (API Request)
Explanation: The API Requests you want to reuse in Actions.
Example
- ComputerName: Retrieve the name of the computer with id 20 and write it inside the variable
ComputerName
. - TerminationSuccess: Modify the extension_attribute 7 of the computer with id 20. Give the extension_attribute a value depending on the dynamic placeholder.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- ... -->
<key>APIRequests</key>
<dict>
<key>JamfBaseURL</key>
<string>https://mycompany.jamfcloud.com/JSSResource/</string>
<key>DefaultMDMApi</key>
<string>Jamf</string>
<key>Models</key>
<dict>
<key>ComputerName</key>
<dict>
<key>Endpoint</key>
<string>computers/id/20</string>
<key>VariableReadingPaths</key>
<dict>
<key>ComputerName</key>
<string>computer->general->name</string>
</dict>
</dict>
<key>UserName</key>
<dict>
<key>Endpoint</key>
<string>accounts</string>
<key>VariableReadingPaths</key>
<dict>
<key>UserName</key>
<string>accounts->users->[0]->name</string>
</dict>
</dict>
<key>TerminationSuccess</key>
<dict>
<key>Endpoint</key>
<string>computers/id/20</string>
<key>Method</key>
<string>PUT</string>
<key>Body</key>
<dict>
<key>computer</key>
<dict>
<key>extension_attributes</key>
<dict>
<key>extension_attribute</key>
<dict>
<key>id</key>
<string>7</string>
<key>value</key>
<string>${INSTALLATION_COMPLETE}</string>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
<!-- ... -->
</dict>
</plist>