Skip to main content
Question

Another NOOB API Question - JAMF Pro API - Authorization Token - How in PAW

  • July 11, 2019
  • 1 reply
  • 16 views

Forum|alt.badge.img+3

Hello,

Using PAW (a product similar to Postman), I setup GET and Post requests to my JAMF instance using Classic API.

NowI want to use Universal API and I an confused how to use Authentication tokens.

I am kind of a newbie and would appreciate some help.

Thanks

steven

1 reply

anverhousseini
Forum|alt.badge.img+11
  • Valued Contributor
  • July 12, 2019

Here is an example on how to update the check-in settings, make sure you have jq installed for parsing the json output:

#!/bin/bash

credentials="dXNlcm5hbWU6cGFzc3dvcmQ="

jps="https://jps.example.com"

uapi_token=$(curl -s -H "Content-Type: application/json" -H "Authorization: Basic ${credentials}" -X POST "${jps}/uapi/auth/tokens" | jq -r '.token')

curl -s -H "Authorization: Bearer ${uapi_token}" -H "Content-Type: application/json" -X PUT --data @- "${jps}/uapi/v1/check-in" <<EOF
{
  "checkInFrequency": 15,
  "isCreateHooks": true,
  "isHookLog": true,
  "isHookPolicies": true,
  "isHookHideRestore": true,
  "isHookMCX": false,
  "isBackgroundHooks": true,
  "isHookDisplayStatus": true,
  "isCreateStartupScript": true,
  "isStartupLog": true,
  "isStartupPolicies": true,
  "isStartupSSH": true,
  "isStartupMCX": false,
  "isEnableLocalConfigurationProfiles": true
}
EOF

The credentials variable is a Base64 encoded username and password string:

printf "username:password" | iconv -t ISO-8859-1 | base64 -i -