curl -X POST "https://api.scanova.io/custom-domain/42/certificate-request/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-H "Content-Type: application/json" \
-d '{
"organization": "Example Inc",
"organizational_unit": "IT",
"country": "us",
"state": "CA",
"locality": "San Francisco",
"email": "ssl@example.com"
}'
{
"id": 5,
"organization": "Example Inc",
"organizational_unit": "IT",
"country": "US",
"state": "CA",
"locality": "San Francisco",
"email": "ssl@example.com",
"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIIC...\n-----END CERTIFICATE REQUEST-----",
"created": "2026-09-08T09:00:00Z"
}
Custom Domains
Create an SSL certificate request
POST /custom-domain//certificate-request/
POST
/
custom-domain
/
{pk}
/
certificate-request
/
curl -X POST "https://api.scanova.io/custom-domain/42/certificate-request/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-H "Content-Type: application/json" \
-d '{
"organization": "Example Inc",
"organizational_unit": "IT",
"country": "us",
"state": "CA",
"locality": "San Francisco",
"email": "ssl@example.com"
}'
{
"id": 5,
"organization": "Example Inc",
"organizational_unit": "IT",
"country": "US",
"state": "CA",
"locality": "San Francisco",
"email": "ssl@example.com",
"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIIC...\n-----END CERTIFICATE REQUEST-----",
"created": "2026-09-08T09:00:00Z"
}
Generates a new SSL certificate signing request (CSR) for a domain, on the Management API host (
A private key and the CSR are generated server-side — the private key is never returned by any endpoint or accepted as input, and only the CSR text comes back. Submit the returned
api.scanova.io), authenticated with your raw Management API key.
POST https://api.scanova.io/custom-domain/{pk}/certificate-request/
Authorization: 401f7ac837da42b97f613d789819ff93537bee6a
Enterprise-only. Requires the
CUSTOM_DOMAIN_CUSTOM_SSL quota, which is granted manually — no self-serve plan includes it.integer
required
The domain’s
id.string
required
Organization name for the certificate subject.
string
required
Organizational unit for the certificate subject.
string
required
2-letter ISO country code — uppercased automatically; rejected if it isn’t exactly 2 alphabetic characters.
string
required
State or province.
string
required
City or locality.
string
required
Contact email for the certificate subject.
curl -X POST "https://api.scanova.io/custom-domain/42/certificate-request/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-H "Content-Type: application/json" \
-d '{
"organization": "Example Inc",
"organizational_unit": "IT",
"country": "us",
"state": "CA",
"locality": "San Francisco",
"email": "ssl@example.com"
}'
{
"id": 5,
"organization": "Example Inc",
"organizational_unit": "IT",
"country": "US",
"state": "CA",
"locality": "San Francisco",
"email": "ssl@example.com",
"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIIC...\n-----END CERTIFICATE REQUEST-----",
"created": "2026-09-08T09:00:00Z"
}
csr to your certificate authority, then bring the issued certificate back via Upload an SSL certificate.
400 if country isn’t exactly 2 alphabetic characters. 403 if the account lacks the CUSTOM_DOMAIN_CUSTOM_SSL quota.
Related
- Get the latest SSL certificate request — resume an in-progress flow.
- Upload an SSL certificate — the next step once your CA issues the certificate.
- Management API overview — the auth scheme and quota rules that apply to this endpoint.
Authorizations
Send your Management API key as the raw value of the Authorization header — no "Bearer " or "Token " prefix, and no other characters. Example: Authorization: 401f7ac837da42b97f613d789819ff93537bee6a. A header containing more than one space-separated part is rejected outright. Requests also require the request's Host header to be the management API host (e.g. api.scanova.io) — the same key sent to the regular API host will not authenticate.
Path Parameters
Response
CSR created.
Was this page helpful?