Create Custom CSR
client.CustomCsrs.New(ctx, params) (*CustomCsrNewResponse, error)
POST/{accounts_or_zones}/{account_or_zone_id}/custom_csrs
Generate a new custom Certificate Signing Request (CSR) for an account or zone. Cloudflare generates and securely stores the private key associated with the CSR.
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 Custom CSR
package main
import (
"context"
"fmt"
"github.com/cloudflare/cloudflare-go"
"github.com/cloudflare/cloudflare-go/custom_csrs"
"github.com/cloudflare/cloudflare-go/option"
)
func main() {
client := cloudflare.NewClient(
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
customCsr, err := client.CustomCsrs.New(context.TODO(), custom_csrs.CustomCsrNewParams{
CommonName: cloudflare.F("example.com"),
Country: cloudflare.F("US"),
Locality: cloudflare.F("San Francisco"),
Organization: cloudflare.F("Cloudflare, Inc."),
Sans: cloudflare.F([]string{"example.com", "www.example.com"}),
State: cloudflare.F("California"),
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", customCsr.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": "7b163417-1d2b-4c84-a38a-2fb7a0cd7752",
"created_at": "2024-01-15T10:30:00Z",
"key_type": "rsa2048",
"account_tag": "23e087bd19bc1d40ae95b6f297263ceb",
"common_name": "example.com",
"country": "US",
"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICYzCCAUsCAQAwHj...",
"description": "CSR for example.com wildcard",
"locality": "San Francisco",
"name": "My Custom CSR",
"organization": "Cloudflare, Inc.",
"organizational_unit": "Engineering",
"sans": [
"example.com",
"www.example.com"
],
"state": "California"
}
}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": "7b163417-1d2b-4c84-a38a-2fb7a0cd7752",
"created_at": "2024-01-15T10:30:00Z",
"key_type": "rsa2048",
"account_tag": "23e087bd19bc1d40ae95b6f297263ceb",
"common_name": "example.com",
"country": "US",
"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICYzCCAUsCAQAwHj...",
"description": "CSR for example.com wildcard",
"locality": "San Francisco",
"name": "My Custom CSR",
"organization": "Cloudflare, Inc.",
"organizational_unit": "Engineering",
"sans": [
"example.com",
"www.example.com"
],
"state": "California"
}
}