Upload a new SSL certificate
curl -X POST "https://api.5centscdn.com/v2/account/ssl/new" \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{
"_METHOD": "PUT",
"name": "sample-ssl-certificate",
"crt": "YOUR_PEM_CERTIFICATE",
"key": "YOUR_PEM_PRIVATE_KEY",
"cabundle": "YOUR_PEM_CA_BUNDLE"
}'
import requests
import json
url = "https://api.5centscdn.com/v2/account/ssl/new"
headers = {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
}
data = {
"_METHOD": "PUT",
"name": "sample-ssl-certificate",
"crt": "YOUR_PEM_CERTIFICATE",
"key": "YOUR_PEM_PRIVATE_KEY",
"cabundle": "YOUR_PEM_CA_BUNDLE"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api.5centscdn.com/v2/account/ssl/new", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
},
body: JSON.stringify({
"_METHOD": "PUT",
"name": "sample-ssl-certificate",
"crt": "YOUR_PEM_CERTIFICATE",
"key": "YOUR_PEM_PRIVATE_KEY",
"cabundle": "YOUR_PEM_CA_BUNDLE"
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"_METHOD": "PUT",
"name": "sample-ssl-certificate",
"crt": "YOUR_PEM_CERTIFICATE",
"key": "YOUR_PEM_PRIVATE_KEY",
"cabundle": "YOUR_PEM_CA_BUNDLE"
}`)
req, err := http.NewRequest("POST", "https://api.5centscdn.com/v2/account/ssl/new", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.5centscdn.com/v2/account/ssl/new')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['X-API-Key'] = 'YOUR_API_KEY'
request.body = '{
"_METHOD": "PUT",
"name": "sample-ssl-certificate",
"crt": "YOUR_PEM_CERTIFICATE",
"key": "YOUR_PEM_PRIVATE_KEY",
"cabundle": "YOUR_PEM_CA_BUNDLE"
}'
response = http.request(request)
puts response.body
{
"result": "success",
"message": "Operation completed successfully",
"cert": {
"id": 12345,
"name": "sample-ssl-certificate",
"crt": "-----BEGIN CERTIFICATE-----\r
string\r
-----END CERTIFICATE-----",
"key": "--- redacted ---",
"cabundle": "-----BEGIN CERTIFICATE-----\r
string\r
-----END CERTIFICATE-----",
"domain": "example.com",
"sans": [
"example.com",
"www.example.com"
],
"expiry": "2027-01-01",
"installs": 1,
"expired": false,
"validFrom": "2026-01-01"
}
}
/account/ssl/new
Target server for requests. Edit to use your own host.
API key (sent in header)
The media type of the request body
Must be set to PUT to trigger SSL certificate creation.
Friendly name for the certificate. If omitted, auto-generated using the certificate CN, expiry date, and a timestamp.
PEM-encoded X.509 certificate. Required.
PEM-encoded private key. Required.
PEM-encoded CA bundle. Optional but recommended.
Request Preview
Response
Response will appear here after sending the request
Authentication
API Key for authentication. Provide your API key in the header.
Body
Must be set to PUT to trigger SSL certificate creation.
Friendly name for the certificate. If omitted, auto-generated using the certificate CN, expiry date, and a timestamp.
PEM-encoded X.509 certificate. Required.
PEM-encoded private key. Required.
PEM-encoded CA bundle. Optional but recommended.
Responses
Operation outcome.
Human-readable description of the operation outcome.
The newly uploaded SSL certificate record.