Create Client Certificate
client.ClientCertificates.New(ctx, params) (*ClientCertificate, error)
POST/zones/{zone_id}/client_certificates
Create a new API Shield mTLS Client Certificate
Security
API Token
The preferred authorization scheme for interacting with the Cloudflare API. Create a token.
Example:
API Email + API Key
The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.
Example:
The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.
Example:
Accepted Permissions (at least one required)
Create Client Certificate
package main
import (
"context"
"fmt"
"github.com/cloudflare/cloudflare-go"
"github.com/cloudflare/cloudflare-go/client_certificates"
"github.com/cloudflare/cloudflare-go/option"
)
func main() {
client := cloudflare.NewClient(
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
clientCertificate, err := client.ClientCertificates.New(context.TODO(), client_certificates.ClientCertificateNewParams{
ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
Csr: cloudflare.F("-----BEGIN CERTIFICATE REQUEST-----\nMIICY....\n-----END CERTIFICATE REQUEST-----"),
ValidityDays: cloudflare.F(int64(3650)),
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", clientCertificate.ID)
}
{
"errors": [
{
"code": 1000,
"message": "message",
"documentation_url": "documentation_url",
"source": {
"pointer": "pointer"
}
}
],
"messages": [
{
"code": 1000,
"message": "message",
"documentation_url": "documentation_url",
"source": {
"pointer": "pointer"
}
}
],
"success": true,
"result": {
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDmDCCAoC...dhDDE\n-----END CERTIFICATE-----",
"certificate_authority": {
"id": "568b6b74-7b0c-4755-8840-4e3b8c24adeb",
"name": "Cloudflare Managed CA for account"
},
"common_name": "Cloudflare",
"country": "US",
"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICY....\n-----END CERTIFICATE REQUEST-----",
"expires_on": "2033-02-20T23:18:00Z",
"fingerprint_sha256": "256c24690243359fb8cf139a125bd05ebf1d968b71e4caf330718e9f5c8a89ea",
"issued_on": "2023-02-23T23:18:00Z",
"location": "Somewhere",
"organization": "Organization",
"organizational_unit": "Organizational Unit",
"serial_number": "3bb94ff144ac567b9f75ad664b6c55f8d5e48182",
"signature": "SHA256WithRSA",
"ski": "8e375af1389a069a0f921f8cc8e1eb12d784b949",
"state": "CA",
"status": "active",
"validity_days": 3650
}
}Returns Examples
{
"errors": [
{
"code": 1000,
"message": "message",
"documentation_url": "documentation_url",
"source": {
"pointer": "pointer"
}
}
],
"messages": [
{
"code": 1000,
"message": "message",
"documentation_url": "documentation_url",
"source": {
"pointer": "pointer"
}
}
],
"success": true,
"result": {
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDmDCCAoC...dhDDE\n-----END CERTIFICATE-----",
"certificate_authority": {
"id": "568b6b74-7b0c-4755-8840-4e3b8c24adeb",
"name": "Cloudflare Managed CA for account"
},
"common_name": "Cloudflare",
"country": "US",
"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICY....\n-----END CERTIFICATE REQUEST-----",
"expires_on": "2033-02-20T23:18:00Z",
"fingerprint_sha256": "256c24690243359fb8cf139a125bd05ebf1d968b71e4caf330718e9f5c8a89ea",
"issued_on": "2023-02-23T23:18:00Z",
"location": "Somewhere",
"organization": "Organization",
"organizational_unit": "Organizational Unit",
"serial_number": "3bb94ff144ac567b9f75ad664b6c55f8d5e48182",
"signature": "SHA256WithRSA",
"ski": "8e375af1389a069a0f921f8cc8e1eb12d784b949",
"state": "CA",
"status": "active",
"validity_days": 3650
}
}