# Modify the configuration of a Extensible SSO payload item within a profile To modify Ios Extensible SSO policy payload item ## Endpoints **PUT** `/api/v1/mdm/profiles/{profile_id}/payloads/iosextensiblessopolicy/payloaditems/{payload_id}` ## Request URL ``` https://{serverurl}/api/v1/mdm/profiles/{profile_id}/payloads/iosextensiblessopolicy/payloaditems/{payload_id} ``` ## Scope ``` MDMOnDemand.MDMDeviceMgmt.UPDATE ``` ## Header ``` Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52 ``` ## Request Parameters ### Path Parameters - **profile_id** (string) — Mandatory Unique identifier of the profile. Obtain from the [Create Profile](https://www.manageengine.com/mobile-device-management/help/api/cloud/profiles-create-profile.html) or [Get Profiles](https://www.manageengine.com/mobile-device-management/help/api/cloud/profiles-get-profile.html) response. - **payload_id** (string) — Mandatory Unique identifier of the payload item. Obtain from the [Get Payload Item IDs](https://www.manageengine.com/mobile-device-management/help/api/cloud/ios-get-extensible-sso-payload-ios.html) response. ### Query Parameters - **t** (long) — Optional - **ignoreHeader** (boolean) — Optional - **qlt** (long) — Optional - **previousTab** (string) — Optional - **service** (string) — Optional - **search** (string) — Optional Free-text search string applied to the default searchable fields of the resource. - **all** (boolean) — Optional - **dc_customerid** (long) — Optional - **mdm_instance** (string) — Optional - **signupsrc** (string) — Optional - **zaaid** (string) — Optional - **command** (string) — Optional - **orderby** (string) — Optional - **sortorder** (string) — Optional - **select_all** (boolean) — Optional When true, applies the operation to every record matching the current filter rather than to specific IDs. Default: false - **zoho-internal** (boolean) — Optional - **dc_instance** (string) — Optional - **SUBREQUEST** (string) — Optional - **source** (string) — Optional - **nocache** (long) — Optional Param to avoid being served from cache. - **wms_csrparam** (string) — Optional CSRF Token ### Request Body **Content-Type:** `application/json` JSON object with the following fields: - **extension_identifier** (string) — Mandatory Extension Identifier - **team_identifier** (string) — Mandatory Team Identifier - **screen_locked_behavior** (integer) — Mandatory Screen Locked Behavior - **type** (integer) — Mandatory Type - **extension_data** (string) — Mandatory Extension Data - **realm** (string) — Mandatory Realm - **hosts_and_urls** (array) — Mandatory List of URL strings for the identity provider hosts - **denied_apps_details** (JSON array) — Mandatory List of denied apps excluded from Extensible SSO - **app_group_id** (long) — Optional App group ID of the denied app. Use the `app_group_id` from the [Apps API](https://www.manageengine.com/mobile-device-management/help/api/cloud/app-management-get-an-app.html) response. ## Sample Request ### Curl ```bash curl --request PUT \ --url https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/iosextensiblessopolicy/payloaditems/{payload_id} \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \ --header 'content-type: application/json' \ --data '{"hosts_and_urls":["https://zylker.com"],"extension_identifier":"value","screen_locked_behavior":1,"extension_data":"value","team_identifier":"value","realm":"value","type":1,"denied_apps_details":[{}]}' ``` ### Java ```java import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.io.IOException; import java.net.http.HttpTimeoutException; public class Main { public static void main(String[] args) { HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/iosextensiblessopolicy/payloaditems/{payload_id}")) .header("content-type", "application/json") .header("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") .method("PUT", HttpRequest.BodyPublishers.ofString("{\"hosts_and_urls\":[\"https://zylker.com\"],\"extension_identifier\":\"value\",\"screen_locked_behavior\":1,\"extension_data\":\"value\",\"team_identifier\":\"value\",\"realm\":\"value\",\"type\":1,\"denied_apps_details\":[{}]}")) .build(); HttpResponse response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body()); } } ``` ### Python ```python import http.client conn = http.client.HTTPSConnection("appdomain") payload = "{\"hosts_and_urls\":[\"https://zylker.com\"],\"extension_identifier\":\"value\",\"screen_locked_behavior\":1,\"extension_data\":\"value\",\"team_identifier\":\"value\",\"realm\":\"value\",\"type\":1,\"denied_apps_details\":[{}]}" headers = { 'content-type': "application/json", 'Authorization': "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52" } conn.request("PUT", "/api/v1/mdm/profiles/{profile_id}/payloads/iosextensiblessopolicy/payloaditems/{payload_id}", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ### Deluge ```javascript headersMap = Map(); headersMap.put("Content-Type", "application/json"); headersMap.put("Accept", "application/json"); data=Map(); data_hosts_and_urls=List(); data.put("hosts_and_urls",data_hosts_and_urls); data.put("extension_identifier","value"); data.put("screen_locked_behavior","1"); data.put("extension_data","value"); data.put("team_identifier","value"); data.put("realm","value"); data.put("type","1"); data_denied_apps_details=List(); data_denied_apps_details_item1=Map(); data_denied_apps_details.add(data_denied_apps_details_item1); data.put("denied_apps_details",data_denied_apps_details); response = invokeUrl [ url: "https://appDomain/api/v1/mdm/profiles/{profile_id}/payloads/iosextensiblessopolicy/payloaditems/{payload_id}" type: PUT headers: headersMap body: data connection: connection_name ] info response; ``` ### PowerShell ```powershell $headers=@{} $headers.Add("content-type", "application/json") $headers.Add("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") $response = Invoke-WebRequest -Uri 'https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/iosextensiblessopolicy/payloaditems/{payload_id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{"hosts_and_urls":["https://zylker.com"],"extension_identifier":"value","screen_locked_behavior":1,"extension_data":"value","team_identifier":"value","realm":"value","type":1,"denied_apps_details":[{}]}' ``` ## Sample Request Body ```json { "hosts_and_urls": [ "https://zylker.com" ], "extension_identifier": "value", "screen_locked_behavior": 1, "extension_data": "value", "team_identifier": "value", "realm": "value", "type": 1, "denied_apps_details": [ { "app_group_id": 9007199254741072 } ] } ``` ## Response Parameters ### HTTP 200 **Response Body — application/json** JSON object with the following fields: - **payload_id** (long) Unique identifier of the payload item - **extension_identifier** (string) Extension Identifier - **team_identifier** (string) Team Identifier - **screen_locked_behavior** (integer) Screen Locked Behavior - **type** (integer) Type - **extension_data** (string) Extension Data - **realm** (string) Realm - **hosts_and_urls** (array) List of URL strings for the identity provider hosts - **denied_apps_details** (JSON array) List of denied apps excluded from Extensible SSO - **app_group_id** (long) App group ID of the denied app. Use the `app_group_id` from the [Apps API](https://www.manageengine.com/mobile-device-management/help/api/cloud/app-management-get-an-app.html) response. ## Sample Response: HTTP 200 ```json { "hosts_and_urls": [ "https://zylker.com" ], "extension_identifier": "value", "payload_id": 9007199254741000, "screen_locked_behavior": 1, "extension_data": "value", "team_identifier": "value", "realm": "value", "type": 1, "denied_apps_details": [ { "app_group_id": 9007199254741072 } ] } ``` ## Possible Response Codes - **200** — HTTP code ## Rate Limit **Duration:** 1 minute **Threshold:** 60 **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.