## Edit Keyless SSL Configuration `client.KeylessCertificates.Edit(ctx, keylessCertificateID, params) (*KeylessCertificate, error)` **patch** `/zones/{zone_id}/keyless_certificates/{keyless_certificate_id}` This will update attributes of a Keyless SSL. Consists of one or more of the following: host,name,port. ### Parameters - `keylessCertificateID string` Identifier. - `params KeylessCertificateEditParams` - `ZoneID param.Field[string]` Path param: Identifier. - `Enabled param.Field[bool]` Body param: Whether or not the Keyless SSL is on or off. - `Host param.Field[string]` Body param: The keyless SSL name. - `Name param.Field[string]` Body param: The keyless SSL name. - `Port param.Field[float64]` Body param: The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server. - `Tunnel param.Field[Tunnel]` Body param: Configuration for using Keyless SSL through a Cloudflare Tunnel ### Returns - `type KeylessCertificate struct{…}` - `ID string` Keyless certificate identifier tag. - `CreatedOn Time` When the Keyless SSL was created. - `Enabled bool` Whether or not the Keyless SSL is on or off. - `Host string` The keyless SSL name. - `ModifiedOn Time` When the Keyless SSL was last modified. - `Name string` The keyless SSL name. - `Permissions []string` Available permissions for the Keyless SSL for the current user requesting the item. - `Port float64` The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server. - `Status KeylessCertificateStatus` Status of the Keyless SSL. - `const KeylessCertificateStatusActive KeylessCertificateStatus = "active"` - `const KeylessCertificateStatusDeleted KeylessCertificateStatus = "deleted"` - `Tunnel Tunnel` Configuration for using Keyless SSL through a Cloudflare Tunnel - `PrivateIP string` Private IP of the Key Server Host - `VnetID string` Cloudflare Tunnel Virtual Network ID ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/keyless_certificates" "github.com/cloudflare/cloudflare-go/option" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) keylessCertificate, err := client.KeylessCertificates.Edit( context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353", keyless_certificates.KeylessCertificateEditParams{ ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"), }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", keylessCertificate.ID) } ``` #### Response ```json { "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": "4d2844d2ce78891c34d0b6c0535a291e", "created_on": "2014-01-01T05:20:00Z", "enabled": false, "host": "example.com", "modified_on": "2014-01-01T05:20:00Z", "name": "example.com Keyless SSL", "permissions": [ "#ssl:read", "#ssl:edit" ], "port": 24008, "status": "active", "tunnel": { "private_ip": "10.0.0.1", "vnet_id": "7365377a-85a4-4390-9480-531ef7dc7a3c" } } } ```