CertSecure Documentation
  • Overview
    • About CertSecure Manager
    • Documentation Guide
  • Reference Guide
    • Header Bar
      • CertSecure Documentation
      • Swagger API
      • Profile Section
      • Search
    • Dashboard
      • Key Performance Indicators
      • Expiring Certificates
      • CA metrics
      • Key Strength
      • Signing Algorithm
      • Certificate Risk Report Profile
      • PKI Posture Management
      • NDES Health Information
    • AI Assistant
      • Chat
      • Configuration
      • Usage Report
    • Inventory
      • Overview
        • Overall
        • CertSecure
      • Template Management
        • Switch Templates
        • Exclusion List
        • Alert Templates
        • Certificate Templates
      • Template Categories
    • Discovery
      • Inventory
      • Scan Config
      • Cloud Config
      • Vault Config
      • Discovery Analytics
      • Scan Details
      • Discovery Ingestion
    • Reports
    • Utilities
      • ACME
      • Tasks
      • Integrations
        • Renewal Manager
        • Load Balancers
        • Discovery Agents
        • CLI Tool
        • Key Management
        • SEIM Tools
        • DevOps Tools
        • Ansible Automation Platform
      • NDES
      • Azure Key Vault
      • API Tokens
    • Enrollment
      • Certificate Request
      • Generate CSR
      • Enroll CSR
      • Generate Certificate
      • Import Certificate
      • Bulk Certificate Generation
      • Manage Policies
      • Organization Details
    • Administration
      • Users
      • Roles and permission
      • Certificate Authorities
      • Departments
    • Miscellaneous
      • Logging
      • Service Setup
        • Zoom
        • Zendesk
      • Settings
        • Configure Realms
        • Schedule Alerts
        • Metrics
        • Web Branding
        • About License
  • Setup & Architecture
    • Identity and Access Control
    • Architecture
    • Installation
      • Pre-requisites
      • Windows
      • Linux
      • Docker
    • Upgrade
      • Windows
      • Docker
  • Release Notes
    • Releases for 2026
      • v3.4.0
      • v3.3.1
      • v3.3.0
    • Releases for 2025
      • v3.2.0
      • v3.1.0
    • Releases for 2024
      • v3.0.0
  • Workflow
    • Approval Workflow
  • API Reference
    • Getting Started
    • Authorizing Requests
    • Securing API Access
    • Request and Response Conventions
    • Endpoint Reference
      • Health
      • API Token Management
      • CA Management
      • Templates
      • Certificate Enrollment
      • Inventory
      • Certificate Discovery
      • Tasks
      • Watcher Groups
      • Alerts
      • Reports
      • Logs
      • Monitoring
      • Scheduling
      • SMTP
      • ACME
      • Azure Key Vault
      • Google Cloud (GCP)
      • HashiCorp Vault
      • EJBCA
      • ServiceNow
  • Integration Guide
    • Renewal Manager
      • Workflow
      • Setup
      • Troubleshooting
      • IIS
      • Apache
      • Tomcat
      • Nginx
      • MSSQL
      • MongoDB
      • Oracle
      • Cloudflare
      • AudioCodes
      • Cisco ISE
      • Palo Alto PAN-OS
      • Cisco ACI
    • Load Balancer
      • F5
        • Workflow
        • Setup
        • Onboarding
        • UI Guide
        • Troubleshooting
      • NetScaler
        • Workflow
        • Setup
        • UI Guide
        • Troubleshooting
    • Certificate Authorities
      • ACME CAs
      • AWS
      • DigiCert Connector
      • EJBCA
      • GlobalSign
      • GoDaddy
      • HashiCorp Vault PKI
      • Microsoft AD CS
      • Sectigo
      • Sectigo-PS
    • Ansible Automation Platform
    • Azure Key Vault
  • Discovery Agent Setup Guide

ACME

The ACME endpoints manage ACME profiles, external ACME directory URLs, and DNS domains used for ACME validation, and expose the CertSecure Manager ACMEv2 directory.

For the corresponding user interface, refer to the Utilities > ACME section.

Endpoints

Method Endpoint Description
GET /acme/acme_profiles List ACME profiles.
POST /acme/add_domain Add ACME domain.
POST /acme/add_url Add ACME URL.
POST /acme/Change_ca Change CA for ACME profile.
POST /acme/delete_domain Delete ACME domain.
DELETE /acme/delete_profile Delete ACME profile.
POST /acme/delete_url Delete ACME URL.
POST /acme/generate_profile Create ACME profile.
GET /acme/get_domains List ACME domains.
GET /acme/get_urls List ACME URLs.
POST /acme/update_domain Update ACME domain.
POST /acme/update_url Update ACME URL.
GET /acme/validate_domain/{_id} Validate ACME domain.
GET /acme/validate_url/{_id} Validate ACME URL.
GET /v2/acme ACMEv2 directory.
Note: The endpoints /acme/add_url, /acme/update_url, /acme/delete_url, /acme/get_urls and /acme/validate_url/{_id} were removed in version 3.4. ACME CAs are configured as connector CAs; see the CA Management endpoints. Every endpoint on this page except GET /v2/acme requires authentication.
GET /acme/acme_profiles

Lists the ACME profiles (ACME accounts) created in CertSecure Manager.

Example Request

curl -X GET "https://<certsecure-backend-url>/acme/acme_profiles" \
  -H "Authorization: Bearer <token>"

Responses

Status Code Description
200 Profiles.
POST /acme/add_domain

Adds a domain for DNS validation with the credentials of its DNS provider.

Request Body (application/json)

Field Type Required Description
credentials object Yes -
domain string Yes -
provider string Yes DNS provider (Cloudflare, Route53, Azure, etc.)
auto_revalidate boolean No Re-validate the domain automatically when the last validation is older than revalidate_after_days. Default false.
revalidate_after_days integer No Age in days after which the domain is re-validated. Values are limited to 1 to 365. Default 30.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/add_domain" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"credentials": {}, "domain": "string", "provider": "string"}'

Responses

Status Code Description
200 The resource was added.
POST /acme/add_url

Adds an external ACME directory URL, with optional External Account Binding (EAB) credentials.

Request Body (application/json)

Field Type Required Description
cas array of string No -
email string No Email address of the certificate owner.
google_public_ca boolean No -
hmac string No EAB HMAC key.
kid string No EAB key identifier.
name string Yes Name of the resource.
url string Yes ACME directory URL.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/add_url" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"name": "string", "url": "string"}'

Responses

Status Code Description
200 The resource was added.
POST /acme/Change_ca

Changes the CA and template used by an ACME profile.

Request Body (application/json)

Field Type Required Description
UserId string Yes User ID of the ACME profile.
ca string Yes Name of the certificate authority (CA) as configured in CertSecure Manager.
template string Yes Name of the certificate template.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/Change_ca" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"UserId": "string", "ca": "string", "template": "string"}'

Responses

Status Code Description
200 Changed.
POST /acme/delete_domain

Deletes a domain configured for DNS validation.

Request Body (application/json)

Field Type Required Description
id string Yes ID of the record.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/delete_domain" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"id": "string"}'

Responses

Status Code Description
200 The resource was deleted.
DELETE /acme/delete_profile

Deletes an ACME profile.

Request Body (application/json)

Field Type Required Description
UserId string Yes User ID of the ACME profile.

Example Request

curl -X DELETE "https://<certsecure-backend-url>/acme/delete_profile" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"UserId": "string"}'

Responses

Status Code Description
200 The resource was deleted.
POST /acme/delete_url

Deletes an external ACME directory URL.

Request Body (application/json)

Field Type Required Description
id string Yes ID of the record.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/delete_url" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"id": "string"}'

Responses

Status Code Description
200 The resource was deleted.
POST /acme/generate_profile

Creates an ACME profile for the given email address.

Request Body (application/json)

Field Type Required Description
email string Yes Email address of the certificate owner.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/generate_profile" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"email": "string"}'

Responses

Status Code Description
200 The resource was created.
GET /acme/get_domains

Lists the domains configured for DNS validation, with their DNS provider and validation state.

Each domain also carries last_validated (an ISO 8601 UTC timestamp, or null when the domain has never been validated), auto_revalidate (boolean) and revalidate_after_days (integer). Credentials are never returned.

Example Request

curl -X GET "https://<certsecure-backend-url>/acme/get_domains" \
  -H "Authorization: Bearer <token>"

Example Response

{
    "domains": [
        {
            "id": "60052",
            "domain": "example.com",
            "provider": "digitalocean",
            "Valid": "Invalid"
        }
    ]
}

Responses

Status Code Description
200 Domains.
GET /acme/get_urls

Lists the external ACME directory URLs configured in CertSecure Manager.

Example Request

curl -X GET "https://<certsecure-backend-url>/acme/get_urls" \
  -H "Authorization: Bearer <token>"

Example Response

{
    "urls": [
        {
            "id": "54002",
            "name": "Lets Encrypt",
            "url": "https://acme-v02.api.letsencrypt.org/directory",
            "email": null,
            "cas": []
        }
    ]
}

Responses

Status Code Description
200 URLs.
POST /acme/update_domain

Updates a domain configured for DNS validation.

Request Body (application/json)

Field Type Required Description
credentials object No -
domain string No -
id string Yes ID of the record.
provider string No -
auto_revalidate boolean No Turn automatic re-validation on or off.
revalidate_after_days integer No Age in days after which the domain is re-validated. Values are limited to 1 to 365.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/update_domain" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"id": "string"}'

Responses

Status Code Description
200 The resource was updated.
POST /acme/update_url

Updates an external ACME directory URL.

Request Body (application/json)

Field Type Required Description
id string Yes ID of the record.

Example Request

curl -X POST "https://<certsecure-backend-url>/acme/update_url" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"id": "string"}'

Responses

Status Code Description
200 The resource was updated.
GET /acme/validate_domain/{_id}

Validates a domain configured for DNS validation.

The request returns at once with {"Valid": "Waiting"} and the check runs in the background. After the zone check succeeds, domain control validation is also started at each configured CA that supports validating a domain before an order. Read the result with GET /acme/get_domains.

Request Parameters

Name Located In Type Required Description
_id Path string Yes ID of the record.

Example Request

curl -X GET "https://<certsecure-backend-url>/acme/validate_domain/<_id>" \
  -H "Authorization: Bearer <token>"

Responses

Status Code Description
200 Validation result.
GET /acme/validate_url/{_id}

Validates an external ACME directory URL.

Request Parameters

Name Located In Type Required Description
_id Path string Yes ID of the record.

Example Request

curl -X GET "https://<certsecure-backend-url>/acme/validate_url/<_id>" \
  -H "Authorization: Bearer <token>"

Responses

Status Code Description
200 Validation result.
GET /v2/acme

Returns the ACMEv2 directory (RFC 8555) of CertSecure Manager. ACME clients use this URL as their directory URL.

Note: This endpoint does not require authentication.

Example Request

curl -X GET "https://<certsecure-backend-url>/v2/acme"

Example Response

{
    "newNonce": "https://<certsecure-backend-url>/v2/acme/newnonce",
    "newAccount": "https://<certsecure-backend-url>/v2/acme/newaccount",
    "newOrder": "https://<certsecure-backend-url>/v2/acme/neworders",
    "keyChange": "https://<certsecure-backend-url>/v2/acme/key-change",
    "meta": {
        "name": "ACME Server Home",
        "externalAccountRequired": true
    }
}

Responses

Status Code Description
200 Directory.
On this Page:
Support Privacy Policy Terms of Service

Copyright 2026 Encryption Consulting LLC. All rights reserved.