Go SDK
Certificates
TLS certificate management with automatic ACME issuance and load balancer integration
11 methods
ListCertificates()
List certificates
Parameters
limitinteger
- Maximum number of items to return
markerstring
- ID of the last item from the previous page (for pagination)
statusstring
- Filter by certificate status
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.ListCertificates(ctx)if err != nil {panic(err)}fmt.Println(result)}
CreateCertificate()
Create certificate
Parameters
namestring
required- Name of the certificate
typestring
requireddomainsarray
- List of domains for ACME certificate (supports multi-domain and wildcard certs)
certificatestring
- PEM-encoded certificate (required when type is 'uploaded')
private_keystring
- PEM-encoded private key (required when type is 'uploaded')
chainstring
- PEM-encoded certificate chain (optional for uploaded certificates)
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.CreateCertificate(ctx, &bycloud.CreateCertificateParams{Name: "my-certificate",Type: "acme",})if err != nil {panic(err)}fmt.Println(result)}
GetCertificate()
Get certificate
Parameters
certificate_idstring
required- Certificate ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.GetCertificate(ctx, &bycloud.GetCertificateParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
DeleteCertificate()
Delete certificate
Parameters
certificate_idstring
required- Certificate ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.DeleteCertificate(ctx, &bycloud.DeleteCertificateParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
ListBindings()
List certificate bindings
Parameters
certificate_idstring
required- Certificate ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.ListBindings(ctx, &bycloud.ListBindingsParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
CreateBinding()
Create certificate binding
Parameters
certificate_idstring
required- Certificate ID
resource_typestring
required- The type of resource to bind the certificate to
resource_idstring
required- The ID of the resource to bind to
optionsobject
- Binding options
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.CreateBinding(ctx, &bycloud.CreateBindingParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",Resource_type: "octavia:listener",Resource_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
GetBinding()
Get certificate binding
Parameters
certificate_idstring
required- Certificate ID
binding_idstring
required- Certificate Binding ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.GetBinding(ctx, &bycloud.GetBindingParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",Binding_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
DeleteBinding()
Delete certificate binding
Parameters
certificate_idstring
required- Certificate ID
binding_idstring
required- Certificate Binding ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.DeleteBinding(ctx, &bycloud.DeleteBindingParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",Binding_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
RenewCertificate()
Renew certificate
Parameters
certificate_idstring
required- Certificate ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.RenewCertificate(ctx, &bycloud.RenewCertificateParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
ValidateCertificate()
Validate certificate DNS
Parameters
certificate_idstring
required- Certificate ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.ValidateCertificate(ctx, &bycloud.ValidateCertificateParams{Certificate_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}
ListListenerCertificates()
List listener certificates
Parameters
load_balancer_idstring
required- Load Balancer ID
listener_idstring
required- Listener ID
Example
package mainimport ("context""fmt""github.com/bycoded/bycloud-go")func main() {client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))ctx := context.Background()result, err := client.Certificates.ListListenerCertificates(ctx, &bycloud.ListListenerCertificatesParams{Load_balancer_id: "550e8400-e29b-41d4-a716-446655440000",Listener_id: "550e8400-e29b-41d4-a716-446655440000",})if err != nil {panic(err)}fmt.Println(result)}