{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Jamf Pro Endpoint Management Configuration Guide","siteUrl":"https://docs.synqly.com","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This guide walks you through creating API credentials in Jamf Pro and configuring a Jamf Endpoint Management integration in Synqly."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-an-api-client-in-jamf-pro","__idx":0},"children":["Create an API Client in Jamf Pro"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You will need OAuth2 client credentials (a Client ID and Client Secret) to authenticate the integration."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"1-log-in-to-jamf-pro","__idx":1},"children":["1. Log in to Jamf Pro"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Navigate to your Jamf Pro instance (e.g., ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://yourorg.jamfcloud.com"]},")."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"2-open-api-roles-and-clients","__idx":2},"children":["2. Open API Roles and Clients"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Go to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Settings"]}," > ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["System"]}," > ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["API Roles and Clients"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"3-create-an-api-role","__idx":3},"children":["3. Create an API Role"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["New"]}," under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["API Roles"]},". Give the role a descriptive name (e.g., \"Synqly Integration\") and grant it the following privileges:"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required for device inventory:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Read Computers"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Read Mobile Devices"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required for compliance (smart group membership):"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Read Smart Computer Groups"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Read Smart Mobile Device Groups"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required for remediation (MDM commands):"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["View MDM command information in Jamf Pro API"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The remediation privilege is only needed if you intend to use the remediation operation (device lock, erase, restart, shutdown, or clear passcode). You can omit it for read-only integrations."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Save"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"4-create-an-api-client","__idx":4},"children":["4. Create an API Client"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["New"]}," under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["API Clients"]},". Give it a descriptive name and assign the API role you created in step 3. Set the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Access Token Lifetime"]}," to your organization's policy. Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Save"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"5-copy-the-client-id-and-generate-a-client-secret","__idx":5},"children":["5. Copy the Client ID and generate a Client Secret"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After saving, copy the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Client ID"]},". Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Generate Client Secret"]},", then copy the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Client Secret"]},". Store both values securely — the Client Secret is shown only once."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For more details, see the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://learn.jamf.com/en-US/bundle/jamf-pro-documentation/page/API_Roles_and_Clients.html"},"children":["Jamf Pro API documentation"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"configure-the-integration","__idx":6},"children":["Configure the Integration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Create your integration by supplying the following values."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Instance URL"]}," ","Your Jamf Pro instance URL, e.g. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://yourorg.jamfcloud.com"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Credential"]}," ","OAuth2 Client ID and Client Secret from step 5."]}]},"headings":[{"value":"Create an API Client in Jamf Pro","id":"create-an-api-client-in-jamf-pro","depth":2},{"value":"1. Log in to Jamf Pro","id":"1-log-in-to-jamf-pro","depth":3},{"value":"2. Open API Roles and Clients","id":"2-open-api-roles-and-clients","depth":3},{"value":"3. Create an API Role","id":"3-create-an-api-role","depth":3},{"value":"4. Create an API Client","id":"4-create-an-api-client","depth":3},{"value":"5. Copy the Client ID and generate a Client Secret","id":"5-copy-the-client-id-and-generate-a-client-secret","depth":3},{"value":"Configure the Integration","id":"configure-the-integration","depth":2}],"frontmatter":{"slug":"guides/provider-configuration/jamf-endpointmgmt-setup","seo":{"title":"Jamf Pro Endpoint Management Configuration Guide"}},"lastModified":"2026-05-07T14:49:21.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/provider-configuration/jamf-endpointmgmt-setup","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}