Directories
Fields
- allowed_dns_identifiers - Allowed domains/FQDNs for new certificate orders.
- allowed_ip_identifiers - Allowed IPs for new certificate orders.
- caa_tag - Value required in DNS CAA records to allow certificate issuance by this directory.
- cert_max_days - Maximum allowed expiry days for new certificate orders.
- cert_min_days - Minimum allowed expiry days for new certificate orders.
- id - CertFu’s ID for the directory, eg:
dir_sample123456. (Read-only) - name - Name of directory.
- object - Always
directory. (Read-only) - on_missing_caa - When DNS CAA records are not present, whether order validation should
passorfail. - registration_mode - Whether new accounts must
preregister(via EAB tokens or Account keys) or areopen(self-registration). - remote_ip_whitelist - IPs allowed to access this directory.
- signing_cert_id - Intermediate CA cert used to sign new certs.
- slug - URL slug for the directory.
Required permissions
| API | Permission |
|---|---|
| List, Retrieve | read |
| Create, Update, Delete | admin |
List directories
Query params
- signing_cert_id - Filter by
signing_cert_id. - Plus standard paging params.
- sort - Fields:
id(default),name.
- sort - Fields:
Request
GET /v1/directories
GET /v1/directories?signing_cert_id=scrt_sample123456
Response
On success, 200 with 0 or more directories.
{
"collection": [
{
"allowed_dns_identifiers": [
"**"
],
"allowed_ip_identifiers": [
"0.0.0.0/0",
"::/0"
],
"caa_tag": "certfu.com",
"cert_max_days": 97,
"cert_min_days": 2,
"directory_url": "https://acme.certfu.com/v2/example-prod/directory",
"id": "dir_sample123456",
"name": "Example Inc",
"object": "directory",
"on_missing_caa": "pass",
"registration_mode": "preregister",
"remote_ip_whitelist": [],
"signing_cert_id": "scrt_sample123456",
"slug": "example-prod"
}
],
"more_results": false
}
Retrieve a directory
Request
GET /v1/directories/dir_sample123456
Response
On success, 200 with the directory.
{
"allowed_dns_identifiers": [
"**"
],
"allowed_ip_identifiers": [
"0.0.0.0/0",
"::/0"
],
"caa_tag": "certfu.com",
"cert_chain": [
"-----BEGIN CERTIFICATE-----\n(sample)\n-----END CERTIFICATE-----"
],
"cert_max_days": 97,
"cert_min_days": 2,
"directory_url": "https://acme.certfu.com/v2/example-prod/directory",
"id": "dir_sample123456",
"name": "Example Inc",
"object": "directory",
"on_missing_caa": "pass",
"registration_mode": "preregister",
"remote_ip_whitelist": [],
"root_cert": "-----BEGIN CERTIFICATE-----\n(sample)\n-----END CERTIFICATE-----",
"signing_cert_id": "scrt_sample123456",
"slug": "example-prod"
}
Create a directory
Request
POST /v1/directories
{
"directory": {
"name": "Example Inc",
"signing_cert_id": "scrt_sample123456",
"slug": "example-qa"
}
}
Response
On success, 201 with the new directory.
On error, 422 with standard error response.
{
"allowed_dns_identifiers": [
"**"
],
"allowed_ip_identifiers": [
"0.0.0.0/0",
"::/0"
],
"caa_tag": "certfu.com",
"cert_chain": [
"-----BEGIN CERTIFICATE-----\n(sample)\n-----END CERTIFICATE-----"
],
"cert_max_days": 97,
"cert_min_days": 2,
"directory_url": "https://acme.certfu.com/v2/example-qa/directory",
"id": "dir_sample123456",
"name": "Example Inc",
"object": "directory",
"on_missing_caa": "pass",
"registration_mode": "preregister",
"remote_ip_whitelist": [],
"root_cert": "-----BEGIN CERTIFICATE-----\n(sample)\n-----END CERTIFICATE-----",
"signing_cert_id": "scrt_sample123456",
"slug": "example-qa"
}
Update a directory
Request
PUT /v1/directories/dir_sample123456
{
"directory": {
"allowed_dns_identifiers": [
"**.example.com"
]
}
}
Response
On success, 200 with the updated directory.
On error, 422 with standard error response.
{
"allowed_dns_identifiers": [
"**.example.com"
],
"allowed_ip_identifiers": [
"0.0.0.0/0",
"::/0"
],
"caa_tag": "certfu.com",
"cert_chain": [
"-----BEGIN CERTIFICATE-----\n(sample)\n-----END CERTIFICATE-----"
],
"cert_max_days": 97,
"cert_min_days": 2,
"directory_url": "https://acme.certfu.com/v2/example-prod/directory",
"id": "dir_sample123456",
"name": "Example Inc",
"object": "directory",
"on_missing_caa": "pass",
"registration_mode": "preregister",
"remote_ip_whitelist": [],
"root_cert": "-----BEGIN CERTIFICATE-----\n(sample)\n-----END CERTIFICATE-----",
"signing_cert_id": "scrt_sample123456",
"slug": "example-prod"
}
Delete a directory
Request
DELETE /v1/directories/dir_sample123456
Response
On success, 202 with an empty response.
On error, 422 with standard error response.