Certificate Bundles
Certificate bundles contain TLS certificates and keys used for HTTPS termination on load balancer frontends. You can create manual bundles with your own certificates or dynamic bundles with automatic Let's Encrypt certificates.
List certificate bundles
Returns a list of all certificate bundles in the account.
Query parameters
- Name
limit- Type
- integer
- Description
Maximum number of results. Default: 10.
- Name
offset- Type
- integer
- Description
Offset for pagination.
Request
curl -X GET https://api.upcloud.com/1.3/load-balancer/certificate-bundles \
-u your_username:your_password
Get bundle details
Returns details of a specific certificate bundle.
Request
curl -X GET https://api.upcloud.com/1.3/load-balancer/certificate-bundles/abc123-def456-789012 \
-u your_username:your_password
Create manual bundle
Creates a manual certificate bundle with your own certificate and private key.
Attributes
- Name
name- Type
- string
- Description
Bundle name (1-255 chars).
- Name
type- Type
- string
- Description
Set to "manual" for manual bundles.
- Name
certificate- Type
- string
- Description
PEM-encoded certificate.
- Name
private_key- Type
- string
- Description
PEM-encoded private key.
- Name
intermediates- Type
- string
- Description
PEM-encoded intermediate certificates.
Request
curl -X POST https://api.upcloud.com/1.3/load-balancer/certificate-bundles \
-u your_username:your_password \
-H "Content-Type: application/json" \
-d '{
"name": "my-cert",
"type": "manual",
"certificate": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----",
"private_key": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----",
"intermediates": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----"
}'
Create dynamic bundle
Creates a dynamic certificate bundle that automatically obtains and renews certificates from Let's Encrypt.
Attributes
- Name
name- Type
- string
- Description
Bundle name (1-255 chars).
- Name
type- Type
- string
- Description
Set to "dynamic" for automatic certificates.
- Name
hostnames- Type
- array
- Description
List of hostnames to include in the certificate.
- Name
key_type- Type
- string
- Description
Key type: "rsa" or "ecdsa". Default: "rsa".
Request
curl -X POST https://api.upcloud.com/1.3/load-balancer/certificate-bundles \
-u your_username:your_password \
-H "Content-Type: application/json" \
-d '{
"name": "auto-cert",
"type": "dynamic",
"hostnames": ["example.com", "www.example.com"],
"key_type": "ecdsa"
}'
Modify bundle
Modifies an existing certificate bundle.
Request
curl -X PATCH https://api.upcloud.com/1.3/load-balancer/certificate-bundles/abc123-def456-789012 \
-u your_username:your_password \
-H "Content-Type: application/json" \
-d '{
"name": "updated-cert-name"
}'
Delete bundle
Deletes a certificate bundle. The bundle must not be in use by any frontend TLS configs.
Request
curl -X DELETE https://api.upcloud.com/1.3/load-balancer/certificate-bundles/abc123-def456-789012 \
-u your_username:your_password