1. Packages
  2. Proxmox Virtual Environment (Proxmox VE)
  3. API Docs
  4. acme
  5. CertificateLegacy
Viewing docs for Proxmox Virtual Environment (Proxmox VE) v8.0.0
published on Sunday, Apr 5, 2026 by Daniel Muehlbachler-Pietrzykowski
proxmoxve logo
Viewing docs for Proxmox Virtual Environment (Proxmox VE) v8.0.0
published on Sunday, Apr 5, 2026 by Daniel Muehlbachler-Pietrzykowski

    Deprecated: Use proxmoxve.acme.Certificate instead. This resource will be removed in v1.0.

    Manages ACME SSL certificates for Proxmox VE nodes.

    This resource orders and renews certificates from an ACME Certificate Authority (like Let’s Encrypt) for a specific node. Before using this resource, ensure that:

    • An ACME account is configured (using proxmoxve.acme.Account)
    • DNS plugins are configured if using DNS-01 challenge (using proxmoxve.acme/dns.Plugin)

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
    
    // Example: Basic ACME certificate with HTTP-01 challenge (standalone)
    const example = new proxmoxve.acme.AccountLegacy("example", {
        name: "production",
        contact: "admin@example.com",
        directory: "https://acme-v02.api.letsencrypt.org/directory",
        tos: "https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf",
    });
    const httpExample = new proxmoxve.acme.CertificateLegacy("http_example", {
        nodeName: "pve-node-01",
        account: example.name,
        domains: [{
            domain: "pve.example.com",
        }],
    });
    // Example: ACME certificate with DNS-01 challenge using Cloudflare
    const cloudflare = new proxmoxve.acme.dns.PluginLegacy("cloudflare", {
        plugin: "cloudflare",
        api: "cf",
        validationDelay: 120,
        data: {
            CF_Account_ID: "your-cloudflare-account-id",
            CF_Token: "your-cloudflare-api-token",
            CF_Zone_ID: "your-cloudflare-zone-id",
        },
    });
    const dnsExample = new proxmoxve.acme.CertificateLegacy("dns_example", {
        nodeName: "pve-node-01",
        account: example.name,
        domains: [{
            domain: "pve.example.com",
            plugin: cloudflare.plugin,
        }],
    }, {
        dependsOn: [
            example,
            cloudflare,
        ],
    });
    // Example: Force certificate renewal
    const forceRenew = new proxmoxve.acme.CertificateLegacy("force_renew", {
        nodeName: "pve-node-01",
        account: example.name,
        force: true,
        domains: [{
            domain: "pve.example.com",
            plugin: cloudflare.plugin,
        }],
    }, {
        dependsOn: [
            example,
            cloudflare,
        ],
    });
    
    import pulumi
    import pulumi_proxmoxve as proxmoxve
    
    # Example: Basic ACME certificate with HTTP-01 challenge (standalone)
    example = proxmoxve.acme.AccountLegacy("example",
        name="production",
        contact="admin@example.com",
        directory="https://acme-v02.api.letsencrypt.org/directory",
        tos="https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf")
    http_example = proxmoxve.acme.CertificateLegacy("http_example",
        node_name="pve-node-01",
        account=example.name,
        domains=[{
            "domain": "pve.example.com",
        }])
    # Example: ACME certificate with DNS-01 challenge using Cloudflare
    cloudflare = proxmoxve.acme.dns.PluginLegacy("cloudflare",
        plugin="cloudflare",
        api="cf",
        validation_delay=120,
        data={
            "CF_Account_ID": "your-cloudflare-account-id",
            "CF_Token": "your-cloudflare-api-token",
            "CF_Zone_ID": "your-cloudflare-zone-id",
        })
    dns_example = proxmoxve.acme.CertificateLegacy("dns_example",
        node_name="pve-node-01",
        account=example.name,
        domains=[{
            "domain": "pve.example.com",
            "plugin": cloudflare.plugin,
        }],
        opts = pulumi.ResourceOptions(depends_on=[
                example,
                cloudflare,
            ]))
    # Example: Force certificate renewal
    force_renew = proxmoxve.acme.CertificateLegacy("force_renew",
        node_name="pve-node-01",
        account=example.name,
        force=True,
        domains=[{
            "domain": "pve.example.com",
            "plugin": cloudflare.plugin,
        }],
        opts = pulumi.ResourceOptions(depends_on=[
                example,
                cloudflare,
            ]))
    
    package main
    
    import (
    	"github.com/muhlba91/pulumi-proxmoxve/sdk/v8/go/proxmoxve/acme"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Example: Basic ACME certificate with HTTP-01 challenge (standalone)
    		example, err := acme.NewAccountLegacy(ctx, "example", &acme.AccountLegacyArgs{
    			Name:      pulumi.String("production"),
    			Contact:   pulumi.String("admin@example.com"),
    			Directory: pulumi.String("https://acme-v02.api.letsencrypt.org/directory"),
    			Tos:       pulumi.String("https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = acme.NewCertificateLegacy(ctx, "http_example", &acme.CertificateLegacyArgs{
    			NodeName: pulumi.String("pve-node-01"),
    			Account:  example.Name,
    			Domains: acme.CertificateLegacyDomainArray{
    				&acme.CertificateLegacyDomainArgs{
    					Domain: pulumi.String("pve.example.com"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example: ACME certificate with DNS-01 challenge using Cloudflare
    		cloudflare, err := acme.NewPluginLegacy(ctx, "cloudflare", &acme.PluginLegacyArgs{
    			Plugin:          pulumi.String("cloudflare"),
    			Api:             pulumi.String("cf"),
    			ValidationDelay: pulumi.Int(120),
    			Data: pulumi.StringMap{
    				"CF_Account_ID": pulumi.String("your-cloudflare-account-id"),
    				"CF_Token":      pulumi.String("your-cloudflare-api-token"),
    				"CF_Zone_ID":    pulumi.String("your-cloudflare-zone-id"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = acme.NewCertificateLegacy(ctx, "dns_example", &acme.CertificateLegacyArgs{
    			NodeName: pulumi.String("pve-node-01"),
    			Account:  example.Name,
    			Domains: acme.CertificateLegacyDomainArray{
    				&acme.CertificateLegacyDomainArgs{
    					Domain: pulumi.String("pve.example.com"),
    					Plugin: cloudflare.Plugin,
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			example,
    			cloudflare,
    		}))
    		if err != nil {
    			return err
    		}
    		// Example: Force certificate renewal
    		_, err = acme.NewCertificateLegacy(ctx, "force_renew", &acme.CertificateLegacyArgs{
    			NodeName: pulumi.String("pve-node-01"),
    			Account:  example.Name,
    			Force:    pulumi.Bool(true),
    			Domains: acme.CertificateLegacyDomainArray{
    				&acme.CertificateLegacyDomainArgs{
    					Domain: pulumi.String("pve.example.com"),
    					Plugin: cloudflare.Plugin,
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			example,
    			cloudflare,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ProxmoxVE = Pulumi.ProxmoxVE;
    
    return await Deployment.RunAsync(() => 
    {
        // Example: Basic ACME certificate with HTTP-01 challenge (standalone)
        var example = new ProxmoxVE.Acme.AccountLegacy("example", new()
        {
            Name = "production",
            Contact = "admin@example.com",
            Directory = "https://acme-v02.api.letsencrypt.org/directory",
            Tos = "https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf",
        });
    
        var httpExample = new ProxmoxVE.Acme.CertificateLegacy("http_example", new()
        {
            NodeName = "pve-node-01",
            Account = example.Name,
            Domains = new[]
            {
                new ProxmoxVE.Acme.Inputs.CertificateLegacyDomainArgs
                {
                    Domain = "pve.example.com",
                },
            },
        });
    
        // Example: ACME certificate with DNS-01 challenge using Cloudflare
        var cloudflare = new ProxmoxVE.Acme.Dns.PluginLegacy("cloudflare", new()
        {
            PluginName = "cloudflare",
            Api = "cf",
            ValidationDelay = %!v(PANIC=Format method: fatal: A failure has occurred: unexpected literal type in GenLiteralValueExpression: cty.NumberIntVal(120) (example.pp:22,21-24)),
            Data = 
            {
                { "CF_Account_ID", "your-cloudflare-account-id" },
                { "CF_Token", "your-cloudflare-api-token" },
                { "CF_Zone_ID", "your-cloudflare-zone-id" },
            },
        });
    
        var dnsExample = new ProxmoxVE.Acme.CertificateLegacy("dns_example", new()
        {
            NodeName = "pve-node-01",
            Account = example.Name,
            Domains = new[]
            {
                new ProxmoxVE.Acme.Inputs.CertificateLegacyDomainArgs
                {
                    Domain = "pve.example.com",
                    Plugin = cloudflare.PluginName,
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                example,
                cloudflare,
            },
        });
    
        // Example: Force certificate renewal
        var forceRenew = new ProxmoxVE.Acme.CertificateLegacy("force_renew", new()
        {
            NodeName = "pve-node-01",
            Account = example.Name,
            Force = true,
            Domains = new[]
            {
                new ProxmoxVE.Acme.Inputs.CertificateLegacyDomainArgs
                {
                    Domain = "pve.example.com",
                    Plugin = cloudflare.PluginName,
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                example,
                cloudflare,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import io.muehlbachler.pulumi.proxmoxve.acme.AccountLegacy;
    import io.muehlbachler.pulumi.proxmoxve.acme.AccountLegacyArgs;
    import io.muehlbachler.pulumi.proxmoxve.acme.CertificateLegacy;
    import io.muehlbachler.pulumi.proxmoxve.acme.CertificateLegacyArgs;
    import com.pulumi.proxmoxve.acme.inputs.CertificateLegacyDomainArgs;
    import io.muehlbachler.pulumi.proxmoxve.acme.PluginLegacy;
    import io.muehlbachler.pulumi.proxmoxve.acme.PluginLegacyArgs;
    import com.pulumi.resources.CustomResourceOptions;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // Example: Basic ACME certificate with HTTP-01 challenge (standalone)
            var example = new AccountLegacy("example", AccountLegacyArgs.builder()
                .name("production")
                .contact("admin@example.com")
                .directory("https://acme-v02.api.letsencrypt.org/directory")
                .tos("https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf")
                .build());
    
            var httpExample = new CertificateLegacy("httpExample", CertificateLegacyArgs.builder()
                .nodeName("pve-node-01")
                .account(example.name())
                .domains(CertificateLegacyDomainArgs.builder()
                    .domain("pve.example.com")
                    .build())
                .build());
    
            // Example: ACME certificate with DNS-01 challenge using Cloudflare
            var cloudflare = new PluginLegacy("cloudflare", PluginLegacyArgs.builder()
                .plugin("cloudflare")
                .api("cf")
                .validationDelay(%!v(PANIC=Format method: fatal: A failure has occurred: unexpected literal type in GenLiteralValueExpression: cty.NumberIntVal(120) (example.pp:22,21-24)))
                .data(Map.ofEntries(
                    Map.entry("CF_Account_ID", "your-cloudflare-account-id"),
                    Map.entry("CF_Token", "your-cloudflare-api-token"),
                    Map.entry("CF_Zone_ID", "your-cloudflare-zone-id")
                ))
                .build());
    
            var dnsExample = new CertificateLegacy("dnsExample", CertificateLegacyArgs.builder()
                .nodeName("pve-node-01")
                .account(example.name())
                .domains(CertificateLegacyDomainArgs.builder()
                    .domain("pve.example.com")
                    .plugin(cloudflare.plugin())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        example,
                        cloudflare)
                    .build());
    
            // Example: Force certificate renewal
            var forceRenew = new CertificateLegacy("forceRenew", CertificateLegacyArgs.builder()
                .nodeName("pve-node-01")
                .account(example.name())
                .force(true)
                .domains(CertificateLegacyDomainArgs.builder()
                    .domain("pve.example.com")
                    .plugin(cloudflare.plugin())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        example,
                        cloudflare)
                    .build());
    
        }
    }
    
    resources:
      # Example: Basic ACME certificate with HTTP-01 challenge (standalone)
      example:
        type: proxmoxve:acme:AccountLegacy
        properties:
          name: production
          contact: admin@example.com
          directory: https://acme-v02.api.letsencrypt.org/directory
          tos: https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf
      httpExample:
        type: proxmoxve:acme:CertificateLegacy
        name: http_example
        properties:
          nodeName: pve-node-01
          account: ${example.name}
          domains:
            - domain: pve.example.com
      # Example: ACME certificate with DNS-01 challenge using Cloudflare
      cloudflare:
        type: proxmoxve:acme/dns:PluginLegacy
        properties:
          plugin: cloudflare
          api: cf
          validationDelay: 120
          data:
            CF_Account_ID: your-cloudflare-account-id
            CF_Token: your-cloudflare-api-token
            CF_Zone_ID: your-cloudflare-zone-id
      dnsExample:
        type: proxmoxve:acme:CertificateLegacy
        name: dns_example
        properties:
          nodeName: pve-node-01
          account: ${example.name}
          domains:
            - domain: pve.example.com
              plugin: ${cloudflare.plugin}
        options:
          dependsOn:
            - ${example}
            - ${cloudflare}
      # Example: Force certificate renewal
      forceRenew:
        type: proxmoxve:acme:CertificateLegacy
        name: force_renew
        properties:
          nodeName: pve-node-01
          account: ${example.name}
          force: true
          domains:
            - domain: pve.example.com
              plugin: ${cloudflare.plugin}
        options:
          dependsOn:
            - ${example}
            - ${cloudflare}
    

    Create CertificateLegacy Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new CertificateLegacy(name: string, args: CertificateLegacyArgs, opts?: CustomResourceOptions);
    @overload
    def CertificateLegacy(resource_name: str,
                          args: CertificateLegacyArgs,
                          opts: Optional[ResourceOptions] = None)
    
    @overload
    def CertificateLegacy(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          account: Optional[str] = None,
                          domains: Optional[Sequence[CertificateLegacyDomainArgs]] = None,
                          node_name: Optional[str] = None,
                          force: Optional[bool] = None)
    func NewCertificateLegacy(ctx *Context, name string, args CertificateLegacyArgs, opts ...ResourceOption) (*CertificateLegacy, error)
    public CertificateLegacy(string name, CertificateLegacyArgs args, CustomResourceOptions? opts = null)
    public CertificateLegacy(String name, CertificateLegacyArgs args)
    public CertificateLegacy(String name, CertificateLegacyArgs args, CustomResourceOptions options)
    
    type: proxmoxve:acme:CertificateLegacy
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args CertificateLegacyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args CertificateLegacyArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args CertificateLegacyArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CertificateLegacyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CertificateLegacyArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var certificateLegacyResource = new ProxmoxVE.Acme.CertificateLegacy("certificateLegacyResource", new()
    {
        Account = "string",
        Domains = new[]
        {
            new ProxmoxVE.Acme.Inputs.CertificateLegacyDomainArgs
            {
                Domain = "string",
                Alias = "string",
                Plugin = "string",
            },
        },
        NodeName = "string",
        Force = false,
    });
    
    example, err := acme.NewCertificateLegacy(ctx, "certificateLegacyResource", &acme.CertificateLegacyArgs{
    	Account: pulumi.String("string"),
    	Domains: acme.CertificateLegacyDomainArray{
    		&acme.CertificateLegacyDomainArgs{
    			Domain: pulumi.String("string"),
    			Alias:  pulumi.String("string"),
    			Plugin: pulumi.String("string"),
    		},
    	},
    	NodeName: pulumi.String("string"),
    	Force:    pulumi.Bool(false),
    })
    
    var certificateLegacyResource = new io.muehlbachler.pulumi.proxmoxve.acme.CertificateLegacy("certificateLegacyResource", io.muehlbachler.pulumi.proxmoxve.acme.CertificateLegacyArgs.builder()
        .account("string")
        .domains(CertificateLegacyDomainArgs.builder()
            .domain("string")
            .alias("string")
            .plugin("string")
            .build())
        .nodeName("string")
        .force(false)
        .build());
    
    certificate_legacy_resource = proxmoxve.acme.CertificateLegacy("certificateLegacyResource",
        account="string",
        domains=[{
            "domain": "string",
            "alias": "string",
            "plugin": "string",
        }],
        node_name="string",
        force=False)
    
    const certificateLegacyResource = new proxmoxve.acme.CertificateLegacy("certificateLegacyResource", {
        account: "string",
        domains: [{
            domain: "string",
            alias: "string",
            plugin: "string",
        }],
        nodeName: "string",
        force: false,
    });
    
    type: proxmoxve:acme:CertificateLegacy
    properties:
        account: string
        domains:
            - alias: string
              domain: string
              plugin: string
        force: false
        nodeName: string
    

    CertificateLegacy Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The CertificateLegacy resource accepts the following input properties:

    Account string
    The ACME account name to use for ordering the certificate.
    Domains List<Pulumi.ProxmoxVE.Acme.Inputs.CertificateLegacyDomain>
    The list of domains to include in the certificate. At least one domain is required.
    NodeName string
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    Force bool
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    Account string
    The ACME account name to use for ordering the certificate.
    Domains []CertificateLegacyDomainArgs
    The list of domains to include in the certificate. At least one domain is required.
    NodeName string
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    Force bool
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    account String
    The ACME account name to use for ordering the certificate.
    domains List<CertificateLegacyDomain>
    The list of domains to include in the certificate. At least one domain is required.
    nodeName String
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    force Boolean
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    account string
    The ACME account name to use for ordering the certificate.
    domains CertificateLegacyDomain[]
    The list of domains to include in the certificate. At least one domain is required.
    nodeName string
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    force boolean
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    account str
    The ACME account name to use for ordering the certificate.
    domains Sequence[CertificateLegacyDomainArgs]
    The list of domains to include in the certificate. At least one domain is required.
    node_name str
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    force bool
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    account String
    The ACME account name to use for ordering the certificate.
    domains List<Property Map>
    The list of domains to include in the certificate. At least one domain is required.
    nodeName String
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    force Boolean
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the CertificateLegacy resource produces the following output properties:

    Fingerprint string
    The certificate fingerprint.
    Id string
    The provider-assigned unique ID for this managed resource.
    Issuer string
    The certificate issuer.
    NotAfter string
    The certificate expiration timestamp.
    NotBefore string
    The certificate start timestamp.
    Subject string
    The certificate subject.
    SubjectAlternativeNames List<string>
    The certificate subject alternative names (SANs).
    certificatePem string
    The PEM-encoded certificate data.
    Certificate string
    The PEM-encoded certificate data.
    Fingerprint string
    The certificate fingerprint.
    Id string
    The provider-assigned unique ID for this managed resource.
    Issuer string
    The certificate issuer.
    NotAfter string
    The certificate expiration timestamp.
    NotBefore string
    The certificate start timestamp.
    Subject string
    The certificate subject.
    SubjectAlternativeNames []string
    The certificate subject alternative names (SANs).
    certificate String
    The PEM-encoded certificate data.
    fingerprint String
    The certificate fingerprint.
    id String
    The provider-assigned unique ID for this managed resource.
    issuer String
    The certificate issuer.
    notAfter String
    The certificate expiration timestamp.
    notBefore String
    The certificate start timestamp.
    subject String
    The certificate subject.
    subjectAlternativeNames List<String>
    The certificate subject alternative names (SANs).
    certificate string
    The PEM-encoded certificate data.
    fingerprint string
    The certificate fingerprint.
    id string
    The provider-assigned unique ID for this managed resource.
    issuer string
    The certificate issuer.
    notAfter string
    The certificate expiration timestamp.
    notBefore string
    The certificate start timestamp.
    subject string
    The certificate subject.
    subjectAlternativeNames string[]
    The certificate subject alternative names (SANs).
    certificate str
    The PEM-encoded certificate data.
    fingerprint str
    The certificate fingerprint.
    id str
    The provider-assigned unique ID for this managed resource.
    issuer str
    The certificate issuer.
    not_after str
    The certificate expiration timestamp.
    not_before str
    The certificate start timestamp.
    subject str
    The certificate subject.
    subject_alternative_names Sequence[str]
    The certificate subject alternative names (SANs).
    certificate String
    The PEM-encoded certificate data.
    fingerprint String
    The certificate fingerprint.
    id String
    The provider-assigned unique ID for this managed resource.
    issuer String
    The certificate issuer.
    notAfter String
    The certificate expiration timestamp.
    notBefore String
    The certificate start timestamp.
    subject String
    The certificate subject.
    subjectAlternativeNames List<String>
    The certificate subject alternative names (SANs).

    Look up Existing CertificateLegacy Resource

    Get an existing CertificateLegacy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: CertificateLegacyState, opts?: CustomResourceOptions): CertificateLegacy
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            account: Optional[str] = None,
            certificate: Optional[str] = None,
            domains: Optional[Sequence[CertificateLegacyDomainArgs]] = None,
            fingerprint: Optional[str] = None,
            force: Optional[bool] = None,
            issuer: Optional[str] = None,
            node_name: Optional[str] = None,
            not_after: Optional[str] = None,
            not_before: Optional[str] = None,
            subject: Optional[str] = None,
            subject_alternative_names: Optional[Sequence[str]] = None) -> CertificateLegacy
    func GetCertificateLegacy(ctx *Context, name string, id IDInput, state *CertificateLegacyState, opts ...ResourceOption) (*CertificateLegacy, error)
    public static CertificateLegacy Get(string name, Input<string> id, CertificateLegacyState? state, CustomResourceOptions? opts = null)
    public static CertificateLegacy get(String name, Output<String> id, CertificateLegacyState state, CustomResourceOptions options)
    resources:  _:    type: proxmoxve:acme:CertificateLegacy    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Account string
    The ACME account name to use for ordering the certificate.
    Domains List<Pulumi.ProxmoxVE.Acme.Inputs.CertificateLegacyDomain>
    The list of domains to include in the certificate. At least one domain is required.
    Fingerprint string
    The certificate fingerprint.
    Force bool
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    Issuer string
    The certificate issuer.
    NodeName string
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    NotAfter string
    The certificate expiration timestamp.
    NotBefore string
    The certificate start timestamp.
    Subject string
    The certificate subject.
    SubjectAlternativeNames List<string>
    The certificate subject alternative names (SANs).
    certificatePem string
    The PEM-encoded certificate data.
    Account string
    The ACME account name to use for ordering the certificate.
    Certificate string
    The PEM-encoded certificate data.
    Domains []CertificateLegacyDomainArgs
    The list of domains to include in the certificate. At least one domain is required.
    Fingerprint string
    The certificate fingerprint.
    Force bool
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    Issuer string
    The certificate issuer.
    NodeName string
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    NotAfter string
    The certificate expiration timestamp.
    NotBefore string
    The certificate start timestamp.
    Subject string
    The certificate subject.
    SubjectAlternativeNames []string
    The certificate subject alternative names (SANs).
    account String
    The ACME account name to use for ordering the certificate.
    certificate String
    The PEM-encoded certificate data.
    domains List<CertificateLegacyDomain>
    The list of domains to include in the certificate. At least one domain is required.
    fingerprint String
    The certificate fingerprint.
    force Boolean
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    issuer String
    The certificate issuer.
    nodeName String
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    notAfter String
    The certificate expiration timestamp.
    notBefore String
    The certificate start timestamp.
    subject String
    The certificate subject.
    subjectAlternativeNames List<String>
    The certificate subject alternative names (SANs).
    account string
    The ACME account name to use for ordering the certificate.
    certificate string
    The PEM-encoded certificate data.
    domains CertificateLegacyDomain[]
    The list of domains to include in the certificate. At least one domain is required.
    fingerprint string
    The certificate fingerprint.
    force boolean
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    issuer string
    The certificate issuer.
    nodeName string
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    notAfter string
    The certificate expiration timestamp.
    notBefore string
    The certificate start timestamp.
    subject string
    The certificate subject.
    subjectAlternativeNames string[]
    The certificate subject alternative names (SANs).
    account str
    The ACME account name to use for ordering the certificate.
    certificate str
    The PEM-encoded certificate data.
    domains Sequence[CertificateLegacyDomainArgs]
    The list of domains to include in the certificate. At least one domain is required.
    fingerprint str
    The certificate fingerprint.
    force bool
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    issuer str
    The certificate issuer.
    node_name str
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    not_after str
    The certificate expiration timestamp.
    not_before str
    The certificate start timestamp.
    subject str
    The certificate subject.
    subject_alternative_names Sequence[str]
    The certificate subject alternative names (SANs).
    account String
    The ACME account name to use for ordering the certificate.
    certificate String
    The PEM-encoded certificate data.
    domains List<Property Map>
    The list of domains to include in the certificate. At least one domain is required.
    fingerprint String
    The certificate fingerprint.
    force Boolean
    Force certificate renewal even if the certificate is not due for renewal yet. Setting this to true will trigger a new certificate order on every apply.
    issuer String
    The certificate issuer.
    nodeName String
    The name of the Proxmox VE node for which to order/manage the ACME certificate.
    notAfter String
    The certificate expiration timestamp.
    notBefore String
    The certificate start timestamp.
    subject String
    The certificate subject.
    subjectAlternativeNames List<String>
    The certificate subject alternative names (SANs).

    Supporting Types

    CertificateLegacyDomain, CertificateLegacyDomainArgs

    Domain string
    The domain name to include in the certificate.
    Alias string
    An optional alias domain for DNS validation. This allows you to validate the domain using a different domain's DNS records.
    Plugin string
    The DNS plugin to use for DNS-01 challenge validation. If not specified, the standalone HTTP-01 challenge will be used.
    Domain string
    The domain name to include in the certificate.
    Alias string
    An optional alias domain for DNS validation. This allows you to validate the domain using a different domain's DNS records.
    Plugin string
    The DNS plugin to use for DNS-01 challenge validation. If not specified, the standalone HTTP-01 challenge will be used.
    domain String
    The domain name to include in the certificate.
    alias String
    An optional alias domain for DNS validation. This allows you to validate the domain using a different domain's DNS records.
    plugin String
    The DNS plugin to use for DNS-01 challenge validation. If not specified, the standalone HTTP-01 challenge will be used.
    domain string
    The domain name to include in the certificate.
    alias string
    An optional alias domain for DNS validation. This allows you to validate the domain using a different domain's DNS records.
    plugin string
    The DNS plugin to use for DNS-01 challenge validation. If not specified, the standalone HTTP-01 challenge will be used.
    domain str
    The domain name to include in the certificate.
    alias str
    An optional alias domain for DNS validation. This allows you to validate the domain using a different domain's DNS records.
    plugin str
    The DNS plugin to use for DNS-01 challenge validation. If not specified, the standalone HTTP-01 challenge will be used.
    domain String
    The domain name to include in the certificate.
    alias String
    An optional alias domain for DNS validation. This allows you to validate the domain using a different domain's DNS records.
    plugin String
    The DNS plugin to use for DNS-01 challenge validation. If not specified, the standalone HTTP-01 challenge will be used.

    Import

    !/usr/bin/env sh ACME certificates can be imported using the node name, e.g.:

    $ pulumi import proxmoxve:acme/certificateLegacy:CertificateLegacy example pve-node-01
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    proxmoxve muhlba91/pulumi-proxmoxve
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the proxmox Terraform Provider.
    proxmoxve logo
    Viewing docs for Proxmox Virtual Environment (Proxmox VE) v8.0.0
    published on Sunday, Apr 5, 2026 by Daniel Muehlbachler-Pietrzykowski
      Try Pulumi Cloud free. Your team will thank you.