Setup & Authentication
API Authentication
Enable the API
Hosted clients can request enablement of the API via the helpdesk.
To enable the CIPP-API you'll need to activate the CIPP API Extension via the Settings -> Extensions menu.
Enabling the CIPP API requires the following:
Your CIPP-SAM user must be a global administrator in your tenant when activating the API
Your CIPP-SAM Application requires an extra permission
Go to your CIPP-SAM application via Settings -> Execute a permissions check -> Click Details -> Click on the CIPP SAM Link
Click on Add permission and add Azure Service Management - User Impersonation as a Delegate permission.
Your CIPP-SAM user must have access to the Azure Subscription with the minimum level of "contributor" during activation of the API:
Sign in to the Azure portal: https://portal.azure.com/
In the left-hand menu, navigate to "Subscriptions".
Click on the subscription where you want to add a user.
In the left-hand menu of the subscription, select "Access control (IAM)".
At the top of the Access control (IAM) pane, click "+ Add".
In the drop-down menu, select "Add role assignment".
In the "Role" drop-down list, type "Contributor" and select it. The Contributor role should allow the user to create and manage all types of Azure resources but does not allow them to grant access to others.
In the "Assign access to" drop-down menu, select "User, group, or service principal".
In the "Select" field, type "CIPP-SAM". As you begin typing, the list of options will narrow. If the user CIPP-SAM exists in your Azure AD, you should be able to select it.
After you've selected the user, click "Save" to assign the role.
After enablement of the API a new application will be created in your tenant.
Authentication
CIPP uses OAuth authentication to be able to connect to the API using your Application ID and secret. You can use the PowerShell example below to connect to the API
Time and rate limits
The API actions have a maximum timeout of 10 minutes. There are no active ratelimits, but heavy usage of the API can cause frontend operations to slow down.
Endpoint documentation
Each page in the user documentation has a list of the endpoints used to load or create data on that specific page
CIPP API Powershell Module
You can install the CIPP API Powershell module using PowerShell 7.x. The module takes care of all the authentication for you.
You will first need to set your CIPP API Details using the following command:
You can then test its working
Further documentation for the module and each of its available functions can be found here
Last updated