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 pass or fail.
  • registration_mode - Whether new accounts must preregister (via EAB tokens or Account keys) or are open (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.
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.