CIPP

List Scheduled Items

get

Retrieves a list of scheduled items

Query parameters
ShowHiddenbooleanOptional

Whether to show hidden system jobs

NamestringOptional

Filter by job name

Responses
200
Scheduled items retrieved successfully
application/json
get
GET /api/ListScheduledItems HTTP/1.1
Host: 
Accept: */*
[
  {
    "ExecutedTime": "text",
    "TaskState": "Running",
    "Tenant": "text",
    "Name": "text",
    "ScheduledTime": 1,
    "Command": "text",
    "Parameters": {},
    "PostExecution": "text",
    "Recurrence": "text",
    "Results": "text",
    "RowKey": "text"
  }
]

Remove Scheduled Item

post

Removes a scheduled item

Body
idstringRequired

The RowKey of the scheduled item to remove

Responses
200
Scheduled item removed successfully
application/json
post
POST /api/RemoveScheduledItem HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 13

{
  "id": "text"
}
{
  "Results": {}
}

Add Scheduled Item

post

Adds a new scheduled item

Body
NamestringRequired

Name of the scheduled job

ScheduledTimeintegerRequired

When the job is scheduled to run (Unix timestamp)

Recurrencestring · enumRequired

How often the job recurs

Possible values:
parametersobjectOptional

Parameters for the command

RawJsonParametersstringOptional

JSON string of parameters for advanced configuration

RowKeystringOptional

Unique identifier for the job (for editing existing jobs)

Responses
200
Scheduled item added successfully
application/json
post
POST /api/AddScheduledItem HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 251

{
  "tenantFilter": {
    "value": "text",
    "label": "text"
  },
  "Name": "text",
  "command": {
    "label": "text",
    "value": "text"
  },
  "ScheduledTime": 1,
  "Recurrence": "0",
  "parameters": {},
  "RawJsonParameters": "text",
  "postExecution": [
    {
      "label": "text",
      "value": "Webhook"
    }
  ],
  "RowKey": "text"
}
{
  "Results": {}
}

List Function Parameters

get

Retrieves a list of available functions and their parameters

Query parameters
Modulestring · enumRequired

The module to list functions for

Possible values:
Responses
200
Function parameters retrieved successfully
application/json
get
GET /api/ListFunctionParameters?Module=CIPPCore HTTP/1.1
Host: 
Accept: */*
[
  {
    "Function": "text",
    "Synopsis": "text",
    "Parameters": [
      {
        "Name": "text",
        "Type": "text",
        "Required": true
      }
    ]
  }
]

List Tenants

get

Retrieves a list of tenants

Query parameters
AllTenantSelectorbooleanOptional

Whether to include the 'All Tenants' option

Responses
200
Tenants retrieved successfully
application/json
get
GET /api/ListTenants HTTP/1.1
Host: 
Accept: */*
[
  {
    "customerId": "text",
    "defaultDomainName": "text",
    "displayName": "text"
  }
]

Clear Tenant Cache

post

Clears the tenant cache

Body
ClearCachebooleanRequired

Whether to clear the cache

TenantsOnlybooleanOptional

Whether to only clear the tenant cache

Responses
200
Cache cleared successfully
application/json
post
POST /api/ListTenants HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 38

{
  "ClearCache": true,
  "TenantsOnly": true
}
{
  "Results": {}
}

Get Password Configuration

get

Retrieves the current password configuration

Query parameters
listbooleanRequired

Whether to list the password configuration

Responses
200
Password configuration retrieved successfully
application/json
get
GET /api/ExecPasswordConfig?list=true HTTP/1.1
Host: 
Accept: */*
{
  "Results": {
    "passwordType": "Classic"
  }
}

Update Password Configuration

post

Updates the password configuration

Body
passwordTypestring · enumRequired

The type of password generation

Possible values:
Responses
200
Password configuration updated successfully
application/json
post
POST /api/ExecPasswordConfig HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 26

{
  "passwordType": "Classic"
}
{
  "Results": {}
}

List Backups

get

Retrieves a list of backups

Query parameters
NameOnlybooleanOptional

Whether to only return backup names

BackupNamestringOptional

The name of a specific backup to retrieve

Responses
200
Backups retrieved successfully
application/json
get
GET /api/ExecListBackup HTTP/1.1
Host: 
Accept: */*
[
  {
    "BackupName": "text",
    "Timestamp": "text",
    "Backup": "text"
  }
]

Run Backup

post

Creates a new backup

Responses
200
Backup created successfully
application/json
post
POST /api/ExecRunBackup HTTP/1.1
Host: 
Accept: */*
{
  "Results": {}
}

Set Automatic Backup

post

Enables or disables automatic backups

Body
EnabledbooleanRequired

Whether to enable automatic backups

Responses
200
Automatic backup setting updated successfully
application/json
post
POST /api/ExecSetCIPPAutoBackup HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "Enabled": true
}
{
  "Results": {}
}

Restore Backup

post

Restores a backup

Body
one ofOptional
or
objectOptional

The backup data to restore

Responses
200
Backup restored successfully
application/json
post
POST /api/ExecRestoreBackup HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 21

{
  "BackupName": "text"
}
{
  "Results": {}
}

List Logs

get

Retrieves a list of logs

Query parameters
DateFilterstringOptional

Filter logs by date (YYYYMMDD format)

FilterbooleanOptional

Whether to apply filtering

Responses
200
Logs retrieved successfully
application/json
get
GET /api/Listlogs HTTP/1.1
Host: 
Accept: */*
[
  {
    "DateTime": "text",
    "Tenant": "text",
    "TenantID": "text",
    "User": "text",
    "Message": "text",
    "API": "text",
    "Severity": "text",
    "AppId": "text",
    "IP": "text",
    "LogData": "text"
  }
]

List Extensions Configuration

get

Retrieves the configuration for extensions

Responses
200
Extensions configuration retrieved successfully
application/json
get
GET /api/ListExtensionsConfig HTTP/1.1
Host: 
Accept: */*
{
  "ANY_ADDITIONAL_PROPERTY": {
    "Enabled": true
  }
}

Update Extensions Configuration

post

Updates the configuration for extensions

Body
Responses
200
Extensions configuration updated successfully
application/json
post
POST /api/ExecExtensionsConfig HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 44

{
  "ANY_ADDITIONAL_PROPERTY": {
    "Enabled": true
  }
}
{
  "Results": {}
}

Test Extension

get

Tests an extension

Query parameters
extensionNamestringRequired

The name of the extension to test

Responses
200
Extension test completed successfully
application/json
get
GET /api/ExecExtensionTest?extensionName=text HTTP/1.1
Host: 
Accept: */*
{
  "Results": {}
}

Sync Extension

get

Syncs an extension

Query parameters
ExtensionstringRequired

The name of the extension to sync

Responses
200
Extension sync completed successfully
application/json
get
GET /api/ExecExtensionSync?Extension=text HTTP/1.1
Host: 
Accept: */*
{
  "Results": {}
}

Get Extension Mapping

get

Retrieves the mapping for an extension

Query parameters
ListstringRequired

The name of the extension to get mapping for

Responses
200
Extension mapping retrieved successfully
application/json
get
GET /api/ExecExtensionMapping?List=text HTTP/1.1
Host: 
Accept: */*
{
  "Mappings": [
    {
      "TenantId": "text",
      "Tenant": "text",
      "IntegrationName": "text",
      "IntegrationId": "text",
      "TenantDomain": "text"
    }
  ],
  "Companies": [
    {
      "name": "text",
      "value": "text"
    }
  ]
}

Update Extension Mapping

post

Updates the mapping for an extension

Query parameters
AddMappingstringOptional

The name of the extension to update mapping for

AutoMappingstringOptional

The name of the extension to auto-map

Bodyobject[]
TenantIdstringOptional

The tenant ID

TenantstringOptional

The tenant name

IntegrationNamestringOptional

The integration name

IntegrationIdstringOptional

The integration ID

TenantDomainstringOptional

The tenant domain

Responses
200
Extension mapping updated successfully
application/json
post
POST /api/ExecExtensionMapping HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 107

[
  {
    "TenantId": "text",
    "Tenant": "text",
    "IntegrationName": "text",
    "IntegrationId": "text",
    "TenantDomain": "text"
  }
]
{
  "Results": {}
}

List Extension Sync Jobs

get

Retrieves a list of extension sync jobs

Responses
200
Extension sync jobs retrieved successfully
application/json
get
GET /api/ListExtensionSync HTTP/1.1
Host: 
Accept: */*
[
  {
    "Tenant": "text",
    "SyncType": "text",
    "Task": "text",
    "ScheduledTime": "text",
    "ExecutedTime": "text",
    "LastRun": "text",
    "RepeatsEvery": "text",
    "Results": "text"
  }
]

List Exchange Cmdlets

post

Retrieves a list of Exchange cmdlets

Body
one ofOptional
or
Responses
200
Exchange cmdlets retrieved successfully
application/json
post
POST /api/ListExoRequest HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 78

{
  "availableCmdlets": true,
  "tenantFilter": "text",
  "compliance": true,
  "asApp": true
}
{
  "Results": [
    {
      "Cmdlet": "text"
    }
  ]
}

Execute Azure Table Operations

post

Executes operations on Azure tables

Body
FunctionNamestring · enumRequired

The function to execute

Possible values:
TableNamestringOptional

The name of the table

ParametersobjectOptional

The parameters for the function

Responses
200
Azure table operation executed successfully
application/json
post
POST /api/ExecAzBobbyTables HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "FunctionName": "Get-AzDataTable",
  "TableName": "text",
  "Parameters": {}
}
{
  "Results": {}
}

Execute CIPP Function

post

Executes a CIPP function

Body
FunctionNamestring · enumRequired

The function to execute

Possible values:
ParametersobjectOptional

The parameters for the function

Responses
200
CIPP function executed successfully
application/json
post
POST /api/ExecCippFunction HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 57

{
  "FunctionName": "Get-CIPPTimerFunctions",
  "Parameters": {}
}
{
  "Results": {}
}

Get API Client Information

get

Retrieves information about API clients

Query parameters
Actionstring · enumRequired

The action to perform

Possible values:
Responses
200
API client information retrieved successfully
application/json
get
GET /api/ExecApiClient?Action=GetAzureConfiguration HTTP/1.1
Host: 
Accept: */*
{
  "Results": {
    "Enabled": true,
    "ApiUrl": "text",
    "TenantID": "text",
    "ClientIDs": [
      "text"
    ]
  }
}

Update API Client

post

Updates an API client

Query parameters
actionstring · enumOptional

The action to perform

Possible values:
Body
Actionstring · enumRequired

The action to perform

Possible values:
ClientIdstringOptional

The client ID

AppNamestringOptional

The application name

RolestringOptional

The client role

IPRangestring[]Optional

The allowed IP ranges

EnabledbooleanOptional

Whether the client is enabled

RemoveAppRegbooleanOptional

Whether to remove the app registration

Responses
200
API client updated successfully
application/json
post
POST /api/ExecApiClient HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 125

{
  "Action": "AddUpdate",
  "ClientId": "text",
  "AppName": "text",
  "Role": "text",
  "IPRange": [
    "text"
  ],
  "Enabled": true,
  "RemoveAppReg": true
}
{
  "Results": {}
}

List Custom Roles

get

Retrieves a list of custom roles

Responses
200
Custom roles retrieved successfully
application/json
get
GET /api/ListCustomRole HTTP/1.1
Host: 
Accept: */*
[
  {
    "RowKey": "text"
  }
]

Last updated

Was this helpful?