Create a new MDM profile

Open in ChatGPT Open in ChatGPT to ask questions about this page
Open in Claude Open in Claude to ask questions about this page
Copy as MarkdownCopy this page as markdown to use with AI assistants
View as Markdown Open this page as markdown in a new tab

Create the profile based on the platform

Endpoints

Request URL

https://{serverurl}/api/v1/mdm/profiles

Scope

MDMOnDemand.MDMDeviceMgmt.CREATECopied!

Header

Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52

- Request Body

application/json
JSON object
Hide Sub-Attributes
profile_namestringMandatory

Name of the profile (required)

profile_descriptionstringOptional

Description of the profile

platform_typeintegerMandatory

Profile platform type: 1 - iOS, 2 - Android, 3 - Windows, 4 - Chrome, 5 - MAC and 6 - Apple TV

scopeintegerOptional

Scope of the profile (default - 0). Android: 0 - devices, 1 - knox container. Chrome: 0 - devices, 2 - user

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomain/api/v1/mdm/profiles \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52' \
  --header 'content-type: application/json' \
  --data '{"profile_name":"IOS Restrictions Policy","platform_type":1}'
Show full

Sample Request Body

Create an iOS restrictions profile with default scope

Copied!
  {
    "profile_name": "IOS Restrictions Policy",
    "platform_type": 1,
    "scope": 0,
    "profile_description": "Test IOS Restrictions Policy"
  }
                
Show full

Create an Android profile with Knox container scope

Copied!
  {
    "profile_name": "Android Work Profile",
    "platform_type": 2,
    "scope": 1,
    "profile_description": "Android enterprise policy"
  }
                
Show full

Response Parameters

- HTTP code 200

Response Body - application/json

JSON object
Hide Sub-Attributes
profile_idlong

Unique identifier for the created profile

profile_namestring

Name of the profile

profile_descriptionstring

Description of the profile

platform_typeinteger

Profile platform type: 1 - iOS, 2 - Android, 3 - Windows, 4 - Chrome, 5 - MAC and 6 - Apple TV

scopeinteger

Scope of the profile

profile_versioninteger

Current version of the profile

profile_statusstring

Status of the profile

profile_status_idinteger

Status ID: 1 - Yet to Deploy, 110 - Published

collection_idlong

Collection ID of the profile

payloadsarray

List of payload type names in the profile

creation_timelong

Creation timestamp in milliseconds since epoch

last_modified_timelong

Last modified timestamp in milliseconds since epoch

created_bylong

User ID of the creator

last_modified_bylong

User ID of the last modifier

is_moved_to_trashboolean

Whether the profile has been moved to trash

Possible HTTP Status Codes

200HTTP code

Sample Response: HTTP 200

Profile successfully created with initial metadata

Copied!
  {
    "creation_time": 12312321312312,
    "last_modified_time": 213123213123,
    "profile_version": 1,
    "payloads": [],
    "last_modified_by": 213900719925474100000,
    "profile_description": "Test IOS Restrictions Policy",
    "created_by": 21321312312,
    "collection_id": 2132131231241,
    "profile_name": "IOS Restrictions Policy",
    "profile_status": "Yet To Deploy",
    "platform_type": 1,
    "is_moved_to_trash": false,
    "profile_id": 12321312312,
    "scope": 0,
    "profile_status_id": 1
  }
                
Show full

Duration: 1 minute | Threshold: 30 | Lock period: 5 minutes

Duration - Time window for the threshold.
Threshold - Number of API calls allowed within the specified duration.
Lock Period - Wait time before consecutive API requests.