Add a new ADCS server configuration for AD Certificate payload

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

Save the ADCS Server details

Endpoints

Request URL

https://{server-hostname}:8383/api/v1/mdm/adcs/servers

Scope

MDMDeviceMgmt.CREATECopied!

Header

Authorization: d92d4xxxxxxxxxxxxx15f52

Request Parameters

- Request Headers

Content-TypestringMandatory
application/jsonapplication/jsonCopied!
AcceptstringMandatory
application/jsonapplication/jsonCopied!

- Request Body

application/json
JSON Object
Hide Sub-Attributes
ad_config_namestringMandatory

Name of the ADCS configuration. Must be unique across the organization

cert_server_addressstringMandatory

URL of the ADCS server (e.g., http://adcs.zylker.com/certsrv/)

cert_authoritystringMandatory

Common Name (CN) of the Certificate Authority (e.g., CN=ZylkerCA-SERVER-CA)

cert_template_namestringMandatory

Template name of the certificate configured in the ADCS server

descriptionstringOptional

Description of the ADCS server configuration. Defaults to '--' if not provided

cert_exp_notify_threadintegerOptional

Number of days before certificate expiry to notify. Defaults to 14 if not provided

rsa_key_sizeintegerOptional

RSA key size for the certificate. Allowed values: 0 (1024), 1 (2048), 2 (4096). Defaults to 1 (2048) if not provided

auto_renew_enabledbooleanOptional

Whether auto-renewal is enabled for the certificate. Defaults to false if not provided

allow_all_apps_to_accessbooleanOptional

Whether all apps can access the certificate. Defaults to false if not provided

is_key_extractablebooleanOptional

Whether the private key is extractable. Defaults to false if not provided

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomain/api/v1/mdm/adcs/servers \
  --header 'Accept: application/json' \
  --header 'Authorization:  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{"ad_config_name":"computer_1","cert_authority":"CN=zylker-SERVER-CA2","auto_renew_enabled":true,"cert_exp_notify_thread":14,"is_key_extractable":false,"allow_all_apps_to_access":true,"description":"ADCS server for computer certificates","cert_template_name":"computer_1","cert_server_address":"http://cert.zylker.com/certsrv/","rsa_key_size":1}'

Sample Request Body

Add a new ADCS server configuration

Copied!
  {
    "ad_config_name": "computer_1",
    "cert_authority": "CN=zylker-SERVER-CA2",
    "auto_renew_enabled": true,
    "cert_exp_notify_thread": 14,
    "is_key_extractable": false,
    "allow_all_apps_to_access": true,
    "description": "ADCS server for computer certificates",
    "cert_template_name": "computer_1",
    "cert_server_address": "http://cert.zylker.com/certsrv/",
    "rsa_key_size": 1
  }
                
Show full

Response Parameters

- HTTP code 200

Response Body - application/json
JSON Object
Hide Sub-Attributes
ad_config_idlong

Unique identifier of the newly created ADCS configuration

ad_config_namestring

Name of the ADCS configuration

cert_server_addressstring

URL of the ADCS server

cert_authoritystring

Common Name (CN) of the Certificate Authority

cert_template_namestring

Template name of the certificate

descriptionstring

Description of the ADCS server configuration

cert_exp_notify_threadinteger

Number of days before certificate expiry to notify

rsa_key_sizeinteger

RSA key size for the certificate. 0 = 1024, 1 = 2048, 2 = 4096

auto_renew_enabledboolean

Whether auto-renewal is enabled

allow_all_apps_to_accessboolean

Whether all apps can access the certificate

- HTTP code 400

Response Body - application/json
JSON Object
Hide Sub-Attributes
error_codestring

Error code: ADCS0001 — ADCS configuration name already exists

error_descriptionstring

Human-readable error description

localized_error_descriptionstring

Localized error description for display

Possible Response Codes

200HTTP code
400HTTP code

Sample Response: HTTP 200

ADCS server configuration successfully added

Copied!
  {
    "ad_config_name": "computer_1",
    "cert_authority": "CN=zylker-SERVER-CA2",
    "auto_renew_enabled": true,
    "cert_exp_notify_thread": 14,
    "allow_all_apps_to_access": true,
    "description": "ADCS server for computer certificates",
    "cert_template_name": "computer_1",
    "cert_server_address": "http://cert.zylker.com/certsrv/",
    "ad_config_id": 9007199254744896,
    "rsa_key_size": 1
  }
                
Show full

Sample Response: HTTP 400

ADCS configuration name already exists

Copied!
  {
    "error_description": "ADCS configuration name already exists.",
    "error_code": "ADCS0001",
    "localized_error_description": "ADCS configuration name already exists."
  }
                
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.