Slide 1

Slide 1 text

© JAMF Software, LLC Getting the Most Out of Patch 4:00 - 4:45 PM UP NEXT

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

© JAMF Software, LLC Duncan McCracken Technical Director Mondada Pty Ltd Gene Servadei Operations Manager Mondada Pty Ltd

Slide 4

Slide 4 text

© JAMF Software, LLC Getting the Most Out of Patch Presentation agenda: Creating Patch definitions Using Patch definitions in Jamf Pro Using the Classic API Using the Jamf Pro API (UAPI)

Slide 5

Slide 5 text

© JAMF Software, LLC Creating Patch Definitions

Slide 6

Slide 6 text

© JAMF Software, LLC Creating Patch Definitions Reference materials

Slide 7

Slide 7 text

© JAMF Software, LLC Creating Patch Definitions Reference materials Jamf Process for Updating Patch Management Software Titles https://www.jamf.com/jamf-nation/articles/424

Slide 8

Slide 8 text

© JAMF Software, LLC

Slide 9

Slide 9 text

© JAMF Software, LLC Creating Patch Definitions Reference materials Jamf Process for Updating Patch Management Software Titles https://www.jamf.com/jamf-nation/articles/424 Jamf Pro External Patch Source Endpoints 
 https://www.jamf.com/jamf-nation/articles/497

Slide 10

Slide 10 text

© JAMF Software, LLC

Slide 11

Slide 11 text

© JAMF Software, LLC Creating Patch Definitions

Slide 12

Slide 12 text

© JAMF Software, LLC Creating Patch Definitions https://github.com/mondada/kinobi

Slide 13

Slide 13 text

© JAMF Software, LLC

Slide 14

Slide 14 text

© JAMF Software, LLC

Slide 15

Slide 15 text

© JAMF Software, LLC

Slide 16

Slide 16 text

© JAMF Software, LLC

Slide 17

Slide 17 text

© JAMF Software, LLC

Slide 18

Slide 18 text

© JAMF Software, LLC

Slide 19

Slide 19 text

© JAMF Software, LLC

Slide 20

Slide 20 text

© JAMF Software, LLC

Slide 21

Slide 21 text

© JAMF Software, LLC

Slide 22

Slide 22 text

© JAMF Software, LLC

Slide 23

Slide 23 text

© JAMF Software, LLC

Slide 24

Slide 24 text

© JAMF Software, LLC

Slide 25

Slide 25 text

© JAMF Software, LLC

Slide 26

Slide 26 text

© JAMF Software, LLC

Slide 27

Slide 27 text

© JAMF Software, LLC

Slide 28

Slide 28 text

© JAMF Software, LLC

Slide 29

Slide 29 text

© JAMF Software, LLC

Slide 30

Slide 30 text

© JAMF Software, LLC

Slide 31

Slide 31 text

© JAMF Software, LLC

Slide 32

Slide 32 text

© JAMF Software, LLC

Slide 33

Slide 33 text

© JAMF Software, LLC Creating Patch Definitions A note about inventory data…

Slide 34

Slide 34 text

© JAMF Software, LLC Creating Patch Definitions A note about inventory data… App > Contents > Info.plist

Slide 35

Slide 35 text

© JAMF Software, LLC Creating Patch Definitions A note about inventory data… App > Contents > Info.plist Application Version = CFBundleShortVersionString

Slide 36

Slide 36 text

© JAMF Software, LLC Creating Patch Definitions A note about inventory data… App > Contents > Info.plist Application Version = CFBundleShortVersionString Except when CFBundleName contains ‘Microsoft’

Slide 37

Slide 37 text

© JAMF Software, LLC Creating Patch Definitions A note about inventory data… App > Contents > Info.plist Application Version = CFBundleShortVersionString Except when CFBundleName contains ‘Microsoft’ Application Version = CFBundleVersion

Slide 38

Slide 38 text

© JAMF Software, LLC Creating Patch Definitions A note about inventory data… App > Contents > Info.plist Application Version = CFBundleShortVersionString Except when CFBundleName contains ‘Microsoft’ Application Version = CFBundleVersion Example: Microsoft Remote Desktop 10.3.0 or later

Slide 39

Slide 39 text

© JAMF Software, LLC

Slide 40

Slide 40 text

© JAMF Software, LLC

Slide 41

Slide 41 text

© JAMF Software, LLC

Slide 42

Slide 42 text

© JAMF Software, LLC

Slide 43

Slide 43 text

© JAMF Software, LLC

Slide 44

Slide 44 text

© JAMF Software, LLC

Slide 45

Slide 45 text

© JAMF Software, LLC

Slide 46

Slide 46 text

© JAMF Software, LLC

Slide 47

Slide 47 text

© JAMF Software, LLC

Slide 48

Slide 48 text

© JAMF Software, LLC

Slide 49

Slide 49 text

© JAMF Software, LLC

Slide 50

Slide 50 text

© JAMF Software, LLC

Slide 51

Slide 51 text

© JAMF Software, LLC

Slide 52

Slide 52 text

© JAMF Software, LLC Creating Patch Definitions https://kinobi.io/

Slide 53

Slide 53 text

© JAMF Software, LLC

Slide 54

Slide 54 text

© JAMF Software, LLC

Slide 55

Slide 55 text

© JAMF Software, LLC

Slide 56

Slide 56 text

© JAMF Software, LLC

Slide 57

Slide 57 text

© JAMF Software, LLC

Slide 58

Slide 58 text

© JAMF Software, LLC

Slide 59

Slide 59 text

© JAMF Software, LLC

Slide 60

Slide 60 text

© JAMF Software, LLC

Slide 61

Slide 61 text

© JAMF Software, LLC

Slide 62

Slide 62 text

© JAMF Software, LLC

Slide 63

Slide 63 text

© JAMF Software, LLC

Slide 64

Slide 64 text

© JAMF Software, LLC

Slide 65

Slide 65 text

© JAMF Software, LLC

Slide 66

Slide 66 text

© JAMF Software, LLC

Slide 67

Slide 67 text

© JAMF Software, LLC

Slide 68

Slide 68 text

© JAMF Software, LLC

Slide 69

Slide 69 text

© JAMF Software, LLC

Slide 70

Slide 70 text

© JAMF Software, LLC

Slide 71

Slide 71 text

© JAMF Software, LLC

Slide 72

Slide 72 text

© JAMF Software, LLC Using Patch Definitions in Jamf Pro

Slide 73

Slide 73 text

© JAMF Software, LLC Using Patch Definitions in Jamf Pro Reference materials Jamf Pro Administrator’s Guide: Patch Management https://docs.jamf.com/jamf-pro/administrator-guide/Patch_Management.html

Slide 74

Slide 74 text

© JAMF Software, LLC

Slide 75

Slide 75 text

© JAMF Software, LLC Using Patch Definitions in Jamf Pro Adding an External Source

Slide 76

Slide 76 text

© JAMF Software, LLC

Slide 77

Slide 77 text

© JAMF Software, LLC

Slide 78

Slide 78 text

© JAMF Software, LLC

Slide 79

Slide 79 text

© JAMF Software, LLC

Slide 80

Slide 80 text

© JAMF Software, LLC

Slide 81

Slide 81 text

© JAMF Software, LLC

Slide 82

Slide 82 text

© JAMF Software, LLC

Slide 83

Slide 83 text

© JAMF Software, LLC Using Patch Definitions in Jamf Pro Adding an External Source Importing a Patch Definition

Slide 84

Slide 84 text

© JAMF Software, LLC

Slide 85

Slide 85 text

© JAMF Software, LLC

Slide 86

Slide 86 text

© JAMF Software, LLC

Slide 87

Slide 87 text

© JAMF Software, LLC

Slide 88

Slide 88 text

© JAMF Software, LLC

Slide 89

Slide 89 text

© JAMF Software, LLC Using Patch Definitions in Jamf Pro Adding an External Source Importing a Patch Definition Adding a Package to a Definition

Slide 90

Slide 90 text

© JAMF Software, LLC

Slide 91

Slide 91 text

© JAMF Software, LLC

Slide 92

Slide 92 text

© JAMF Software, LLC Feature Request Currently External Sources are not able to be code-signed Ability to provide code-signed patch definitions from an External Patch Source https://www.jamf.com/jamf-nation/feature-requests/7545

Slide 93

Slide 93 text

© JAMF Software, LLC

Slide 94

Slide 94 text

© JAMF Software, LLC

Slide 95

Slide 95 text

© JAMF Software, LLC

Slide 96

Slide 96 text

© JAMF Software, LLC

Slide 97

Slide 97 text

© JAMF Software, LLC

Slide 98

Slide 98 text

© JAMF Software, LLC Using Patch Definitions in Jamf Pro Adding an External Source Importing a Patch Definition Adding a Package to a Definition Creating a Patch Policy

Slide 99

Slide 99 text

© JAMF Software, LLC

Slide 100

Slide 100 text

© JAMF Software, LLC

Slide 101

Slide 101 text

© JAMF Software, LLC

Slide 102

Slide 102 text

© JAMF Software, LLC

Slide 103

Slide 103 text

© JAMF Software, LLC

Slide 104

Slide 104 text

© JAMF Software, LLC

Slide 105

Slide 105 text

© JAMF Software, LLC

Slide 106

Slide 106 text

© JAMF Software, LLC Importing Packages

Slide 107

Slide 107 text

© JAMF Software, LLC Importing Packages Currently there is no API for this

Slide 108

Slide 108 text

© JAMF Software, LLC Importing Packages Currently there is no API for this Facilitate uploads to cloud distribution point via API or other non-manual method https://www.jamf.com/jamf-nation/feature-requests/6665

Slide 109

Slide 109 text

© JAMF Software, LLC

Slide 110

Slide 110 text

© JAMF Software, LLC Importing Packages Yesterday’s session:
 Hands On With AutoPkg and CommunityPatch

Slide 111

Slide 111 text

© JAMF Software, LLC Importing Packages Yesterday’s session:
 Hands On With AutoPkg and CommunityPatch Tomorrow’s session:
 Jamf and AutoPkg - How JSSImporter Automates Package Management and Policy Creation in Jamf Pro

Slide 112

Slide 112 text

© JAMF Software, LLC What we’re working on https://kinobi.io/

Slide 113

Slide 113 text

© JAMF Software, LLC API Reference Materials

Slide 114

Slide 114 text

© JAMF Software, LLC API Reference Materials https://developer.jamf.com/apis

Slide 115

Slide 115 text

© JAMF Software, LLC

Slide 116

Slide 116 text

© JAMF Software, LLC API Reference Materials https://developer.jamf.com/apis Classic API https://developer.jamf.com/apis/classic-api/index

Slide 117

Slide 117 text

© JAMF Software, LLC

Slide 118

Slide 118 text

© JAMF Software, LLC API Reference Materials https://developer.jamf.com/apis Classic API https://developer.jamf.com/apis/classic-api/index Jamf API Documentation https://developer.jamf.com/documentation

Slide 119

Slide 119 text

© JAMF Software, LLC

Slide 120

Slide 120 text

© JAMF Software, LLC API Reference Materials https://developer.jamf.com/apis Classic API https://developer.jamf.com/apis/classic-api/index Jamf API Documentation https://developer.jamf.com/documentation Jamf Pro API (UAPI) https://developer.jamf.com/apis/jamf-pro-api/index

Slide 121

Slide 121 text

© JAMF Software, LLC

Slide 122

Slide 122 text

© JAMF Software, LLC API User Permissions (for Patch) Jamf Pro Server Objects External Patch Sources C R U D Packages R Patch Management Software Titles C R U D Patch Policies C R U D Jamf Pro Server Settings Internal Patch Sources R

Slide 123

Slide 123 text

© JAMF Software, LLC Classic API

Slide 124

Slide 124 text

© JAMF Software, LLC Classic API Documentation https://YOUR_JAMF_PRO_URL/api/

Slide 125

Slide 125 text

© JAMF Software, LLC

Slide 126

Slide 126 text

© JAMF Software, LLC Classic API Documentation https://YOUR_JAMF_PRO_URL/api/ Performing Actions https://YOUR_JAMF_PRO_URL/JSSResource/ROUTE

Slide 127

Slide 127 text

© JAMF Software, LLC Classic API Documentation https://YOUR_JAMF_PRO_URL/api/ Performing Actions https://YOUR_JAMF_PRO_URL/JSSResource/ROUTE Note: Must use XML, when performing write actions (POST, PUT, DELETE)

Slide 128

Slide 128 text

© JAMF Software, LLC Classic API Authenticating

Slide 129

Slide 129 text

© JAMF Software, LLC Classic API Authenticating Basic curl -s -X GET \ --header 'Accept: application/xml' \ --user 'username:password' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/ROUTE'

Slide 130

Slide 130 text

© JAMF Software, LLC Classic API Authenticating Encode your credentials: printf 'username:password' | iconv -t ISO-8859-1 | base64 -i -

Slide 131

Slide 131 text

© JAMF Software, LLC Classic API Authenticating Encode your credentials: printf 'username:password' | iconv -t ISO-8859-1 | base64 -i - Using encoded credentials: curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/ROUTE'

Slide 132

Slide 132 text

© JAMF Software, LLC GET /patchinternalsources Finds all patch internal sources curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchinternalsources' Classic API

Slide 133

Slide 133 text

© JAMF Software, LLC 1 1 Jamf GET /patchinternalsources Finds all patch internal sources curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchinternalsources' Classic API

Slide 134

Slide 134 text

© JAMF Software, LLC GET /patchexternalsources Finds all patch external sources curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchexternalsources' Classic API

Slide 135

Slide 135 text

© JAMF Software, LLC 1 3 JNUC Demo GET /patchexternalsources Finds all patch external sources curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchexternalsources' Classic API

Slide 136

Slide 136 text

© JAMF Software, LLC GET /patchavailabletitles/sourceid/{id} Finds all available title from a source by Id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchavailabletitles/sourceid/3' Classic API

Slide 137

Slide 137 text

© JAMF Software, LLC 5 ... 0A4 2019-10-30... Microsoft Rem... 10.3.4Microsoft ... GET /patchavailabletitles/sourceid/{id} Finds all available title from a source by Id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchavailabletitles/sourceid/3' Classic API

Slide 138

Slide 138 text

© JAMF Software, LLC 5 ... 0A4 2019-10-30T09:02:47.000Z Microsoft Remote Desktop 10 10.3.4 Microsoft ... Classic API

Slide 139

Slide 139 text

© JAMF Software, LLC

Slide 140

Slide 140 text

© JAMF Software, LLC POST /patchsoftwaretitles/id/{id} Creates new patch software title by id curl -s -X POST \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/0' Classic API

Slide 141

Slide 141 text

© JAMF Software, LLC 3 0A4 POST /patchsoftwaretitles/id/{id} Creates new patch software title by id curl -s -X POST \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/0' Classic API

Slide 142

Slide 142 text

© JAMF Software, LLC 3 POST /patchsoftwaretitles/id/{id} Creates new patch software title by id curl -s -X POST \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/0' Classic API

Slide 143

Slide 143 text

© JAMF Software, LLC

Slide 144

Slide 144 text

© JAMF Software, LLC GET /patchsoftwaretitles Finds all patch software titles curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles' Classic API

Slide 145

Slide 145 text

© JAMF Software, LLC 1 Microsoft Remote Des... 3 3 0A4 GET /patchsoftwaretitles Finds all patch software titles curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles' Classic API

Slide 146

Slide 146 text

© JAMF Software, LLC 1 Microsoft Remote Desktop 10 3 3 0A4 Classic API

Slide 147

Slide 147 text

© JAMF Software, LLC GET /patchsoftwaretitles/id/{id} Finds patch software titles by id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/3' Classic API

Slide 148

Slide 148 text

© JAMF Software, LLC 3 Microsoft Remote Desktop... 0A4 3 ... 10.3.4 10.3.3 GET /patchsoftwaretitles/id/{id} Finds patch software titles by id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/3' Classic API

Slide 149

Slide 149 text

© JAMF Software, LLC 3 Microsoft Remote Desktop 10 0A4 3 ... 10.3.4 10.3.3 Classic API

Slide 150

Slide 150 text

© JAMF Software, LLC GET /packages Finds all packages curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/packages' Classic API

Slide 151

Slide 151 text

© JAMF Software, LLC 3 1 Microsoft_Remote_Des... 2 Microsoft_Remote_Des... 3 Microsoft_Remote_Des... GET /packages Finds all packages curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/packages' Classic API

Slide 152

Slide 152 text

© JAMF Software, LLC 3 1 Microsoft_Remote_Desktop_10.3.2_installer.pkg 2 Microsoft_Remote_Desktop_10.3.3_installer.pkg 3 Microsoft_Remote_Desktop_10.3.4_installer.pkg Classic API

Slide 153

Slide 153 text

© JAMF Software, LLC PUT /patchsoftwaretitles/id/{id} Updates a patch software title by id curl -s -X PUT \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/3' Classic API

Slide 154

Slide 154 text

© JAMF Software, LLC 10.3.4 3 Microsoft_Remo... PUT /patchsoftwaretitles/id/{id} Updates a patch software title by id curl -s -X PUT \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/3' Classic API

Slide 155

Slide 155 text

© JAMF Software, LLC 10.3.4 3 Microsoft_Remote_Desktop_10.3.4_installer.pkg Classic API

Slide 156

Slide 156 text

© JAMF Software, LLC 3 PUT /patchsoftwaretitles/id/{id} Updates a patch software title by id curl -s -X PUT \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/3' Classic API

Slide 157

Slide 157 text

© JAMF Software, LLC

Slide 158

Slide 158 text

© JAMF Software, LLC GET /patchsoftwaretitles/id/{id} Finds patch software titles by id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/3' Classic API

Slide 159

Slide 159 text

© JAMF Software, LLC 3 Microsoft Remote Desktop... 0A4 ... 10.3.4 3 Microsoft_Remo... 10.3.3 GET /patchsoftwaretitles/id/{id} Finds patch software titles by id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchsoftwaretitles/id/3' Classic API

Slide 160

Slide 160 text

© JAMF Software, LLC 3 Microsoft Remote Desktop 10 0A4 ... 10.3.4 3 Microsoft_Remote_Desktop_10.3.4_installer.pkg 10.3.3 Classic API

Slide 161

Slide 161 text

© JAMF Software, LLC POST /patchpolicies/softwaretitleconfig/id/{softwaretitleconfigid} Create a new patch policy by software title configuration id curl -s -X POST \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ’ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/softwaretitleconfig/id/3' Classic API

Slide 162

Slide 162 text

© JAMF Software, LLC Microsoft Remote Desktop false 10.3.4 selfservice Classic API

Slide 163

Slide 163 text

© JAMF Software, LLC 5 Classic API

Slide 164

Slide 164 text

© JAMF Software, LLC

Slide 165

Slide 165 text

© JAMF Software, LLC GET /patchpolicies/softwaretitleconfig/id/{softwaretitleconfigid} Finds all patch policy by software title configuration id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/softwaretitleconfig/id/3' Classic API

Slide 166

Slide 166 text

© JAMF Software, LLC 1 5 Microsoft Remote Desktop Classic API

Slide 167

Slide 167 text

© JAMF Software, LLC GET /patchpolicies/id/{id} Finds a patch policy by id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/id/5' Classic API

Slide 168

Slide 168 text

© JAMF Software, LLC 5 Microsoft Remote Des... false 10.3.41572426080000... falsefalse 10.12 Micros... co... GET /patchpolicies/id/{id} Finds a patch policy by id curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/id/5' Classic API

Slide 169

Slide 169 text

© JAMF Software, LLC 5 Microsoft Remote Desktop false 10.3.4 1572426080000 false false 10.12 Microsoft Remote Desktop.app com.microsoft.rdc.macos Classic API

Slide 170

Slide 170 text

© JAMF Software, LLC GET /patchpolicies/id/{id}/subset/{subset} Display subsets of information for a patch policy curl -s -X GET \ --header 'Accept: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/id/5/subset/Scope' Classic API

Slide 171

Slide 171 text

© JAMF Software, LLC false Classic API

Slide 172

Slide 172 text

© JAMF Software, LLC PUT /patchpolicies/id/{id} Updates an existing patch policy by id curl -s -X PUT \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' ‘https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/id/5' Classic API

Slide 173

Slide 173 text

© JAMF Software, LLC true true PUT /patchpolicies/id/{id} Updates an existing patch policy by id curl -s -X PUT \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' 'https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/id/5' Classic API

Slide 174

Slide 174 text

© JAMF Software, LLC true true Classic API

Slide 175

Slide 175 text

© JAMF Software, LLC 5 PUT /patchpolicies/id/{id} Updates an existing patch policy by id curl -s -X PUT \ --header 'content-type: application/xml' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ --data ' ... ' 'https://YOUR_JAMF_PRO_URL/JSSResource/patchpolicies/id/5' Classic API

Slide 176

Slide 176 text

© JAMF Software, LLC

Slide 177

Slide 177 text

© JAMF Software, LLC

Slide 178

Slide 178 text

© JAMF Software, LLC Jamf Pro API (UAPI)

Slide 179

Slide 179 text

© JAMF Software, LLC Jamf Pro API (UAPI) Documentation https://YOUR_JAMF_PRO_URL/uapi/doc/

Slide 180

Slide 180 text

© JAMF Software, LLC

Slide 181

Slide 181 text

© JAMF Software, LLC Jamf Pro API (UAPI) Documentation https://YOUR_JAMF_PRO_URL/uapi/doc/ Performing Actions https://YOUR_JAMF_PRO_URL/uapi/ROUTE

Slide 182

Slide 182 text

© JAMF Software, LLC Jamf Pro API (UAPI) Documentation https://YOUR_JAMF_PRO_URL/uapi/doc/ Performing Actions https://YOUR_JAMF_PRO_URL/uapi/ROUTE Schema https://YOUR_JAMF_PRO_URL/uapi/schema

Slide 183

Slide 183 text

© JAMF Software, LLC

Slide 184

Slide 184 text

© JAMF Software, LLC Jamf Pro API (UAPI) Authenticating

Slide 185

Slide 185 text

© JAMF Software, LLC Jamf Pro API (UAPI) Authenticating Using basic authentication to generate a token: curl -s -X POST \ --header 'Accept: application/json' \ --user 'username:password' \ 'https://YOUR_JAMF_PRO_URL/uapi/auth/tokens'

Slide 186

Slide 186 text

© JAMF Software, LLC Jamf Pro API (UAPI) Authenticating Encode your credentials: printf 'username:password' | iconv -t ISO-8859-1 | base64 -i -

Slide 187

Slide 187 text

© JAMF Software, LLC Jamf Pro API (UAPI) Authenticating Encode your credentials: printf 'username:password' | iconv -t ISO-8859-1 | base64 -i - Using encoded credentials to generate a token: curl -s -X POST \ --header 'Accept: application/json' \ --header 'Authorization: Basic YOUR_CREDENTIALS' \ 'https://YOUR_JAMF_PRO_URL/uapi/auth/tokens'

Slide 188

Slide 188 text

© JAMF Software, LLC { "token" : "eyJhbGciOiJIUzI1NiJ9.eyJhdXRoZW50aWNhdGVkLWFwcCI6IkdFTkVSSUMiLCJhdXRoZW50aWNhdGlvbi10eXB lIjoiSlNTIiwiZ3JvdXBzIjpbXSwic3ViamVjdC10eXBlIjoiSlNTX1VTRVJfSUQiLCJ0b2tlbi11dWlkIjoiYmE2NDViODctY2 FjNy00Y2I0LTlkOWYtMmJiMGFhOTA2ZDI4IiwibGRhcC1zZXJ2ZXItaWQiOi0xLCJzdWIiOiI2IiwiZXhwIjoxNTcyNTc2 NzM3fQ.n2eAlTI2pATNg_3TG3Hh0M8mz0a3jK_bvB65_Z8znGY", "expires" : 1572576737568 } Jamf Pro API (UAPI)

Slide 189

Slide 189 text

© JAMF Software, LLC Jamf Pro API (UAPI) Authenticating with a Token curl -s -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN' \ 'https://YOUR_JAMF_PRO_URL/uapi/ROUTE'

Slide 190

Slide 190 text

© JAMF Software, LLC Jamf Pro API (UAPI) Expiring a Token curl -s -X POST \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN' \ 'https://YOUR_JAMF_PRO_URL/uapi/auth/invalidateToken'

Slide 191

Slide 191 text

© JAMF Software, LLC GET /patch/obj/{id} Returns active patch summary curl -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN’ 'https://YOUR_JAMF_PRO_URL/uapi/patch/obj/3' Jamf Pro API (UAPI)

Slide 192

Slide 192 text

© JAMF Software, LLC { "softwareTitleID": 3, "title": "Microsoft Remote Desktop 1... "latestVersion": "10.3.4", "releaseDate": "2019-10-30T09:02:4... "upToDate": 3, "outOfDate": 0, "isOnDashboard": false, "softwareTitleConfigurationID": 3 } GET /patch/obj/{id} Returns active patch summary curl -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN’ 'https://YOUR_JAMF_PRO_URL/uapi/patch/obj/3' Jamf Pro API (UAPI)

Slide 193

Slide 193 text

© JAMF Software, LLC { "softwareTitleID": 3, "title": "Microsoft Remote Desktop 10", "latestVersion": "10.3.4", "releaseDate": "2019-10-30T09:02:47.000+0000", "upToDate": 3, "outOfDate": 0, "isOnDashboard": false, "softwareTitleConfigurationID": 3 } Jamf Pro API (UAPI)

Slide 194

Slide 194 text

© JAMF Software, LLC GET /patch/obj/softwareTitle/{id}/policies Returns the summaries of the patch policies for the software title curl -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN' \ 'https://YOUR_JAMF_PRO_URL/uapi/patch/obj/softwareTitle/3/policies' Jamf Pro API (UAPI)

Slide 195

Slide 195 text

© JAMF Software, LLC { "totalCount": 1, "results": [ { "policyId": 5, "policyName": "Microsoft Remote Desktop", "isPolicyEnabled": true, "policyTargetVersion": "10.3.4", "policyDeploymentMethod": "SELFSERVICE", "softwareTitle": "Microsoft Remote Desktop 10", "softwareTitleConfigurationId": 3, "pending": 0, "completed": 0, "deferred": 0, "failed": 0 } Jamf Pro API (UAPI)

Slide 196

Slide 196 text

© JAMF Software, LLC GET /patch/obj/{id}/versions Returns patch versions curl -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN' \ 'https://YOUR_JAMF_PRO_URL/uapi/patch/obj/3/versions' Jamf Pro API (UAPI)

Slide 197

Slide 197 text

© JAMF Software, LLC [ { "absoluteOrderId": 0, "version": "10.3.4", "onVersion": 0 } ] GET /patch/obj/{id}/versions Returns patch versions curl -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN' \ ‘https://YOUR_JAMF_PRO_URL/uapi/patch/obj/3/versions' Jamf Pro API (UAPI)

Slide 198

Slide 198 text

© JAMF Software, LLC GET /patch/objs/policy/{id} Returns patch policy summary curl -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN' \ ‘https://YOUR_JAMF_PRO_URL/uapi/patch/objs/policy/5' Jamf Pro API (UAPI)

Slide 199

Slide 199 text

© JAMF Software, LLC { "policyId": 5, "policyName": "Microsoft Remote D... "isPolicyEnabled": true, "policyTargetVersion": "10.3.4", "policyDeploymentMethod": "SELFS... "softwareTitle": "Microsoft Remote ... "softwareTitleConfigurationId": 3, "pending": 0, "completed": 0, "deferred": 0, "failed": 0 } GET /patch/objs/policy/{id} Returns patch policy summary curl -X GET \ --header 'Accept: application/json' \ --header 'Authorization: Bearer YOUR_TOKEN' \ ‘https://YOUR_JAMF_PRO_URL/uapi/patch/objs/policy/5' Jamf Pro API (UAPI)

Slide 200

Slide 200 text

© JAMF Software, LLC { "policyId": 5, "policyName": "Microsoft Remote Desktop", "isPolicyEnabled": true, "policyTargetVersion": "10.3.4", "policyDeploymentMethod": "SELFSERVICE", "softwareTitle": "Microsoft Remote Desktop 10", "softwareTitleConfigurationId": 3, "pending": 0, "completed": 0, "deferred": 0, "failed": 0 } Jamf Pro API (UAPI)

Slide 201

Slide 201 text

© JAMF Software, LLC Any Questions?

Slide 202

Slide 202 text

© JAMF Software, LLC Thank you for listening! Give us feedback by completing the 2-question session survey in the JNUC 2019 app. UP NEXT