---
title: Catalog.SSL.ClientCertificates
slug: ps/help/en_us/vtm/controlapi/catalogsslclientcertificates
docTags: 
createdAt: 2026-08-02T08:52:21.909Z
---

URI: http\://soap.zeus.com/zxtm/1.1/Catalog/SSL/ClientCertificates/

The Catalog.SSL.ClientCertificates interface allows management of SSL Client Certificates which are for authentication with back-end nodes when encrypting services. This interfaces allows you to import, retrieve, rename and delete the SSL Client Certificate objects

### Methods

### deleteClientCertificate( names ) throws ObjectDoesNotExist, InvalidOperation, DeploymentError

Delete the named client certificates.

```bash
void deleteClientCertificate(
String[] names
)
```

### deleteClientCertificateHW( names ) throws ObjectDoesNotExist, InvalidOperation, DeploymentError

Delete the named client certificates even if they are stored on secure hardware and could be in use by other clients of the hardware.

```bash
void deleteClientCertificateHW(
String[] names
)
```

### getClientCertificateInfo( names ) throws ObjectDoesNotExist

Get information about the named client certificates.

```bash
Certificate[] getClientCertificateInfo(
String[] names
)
```

### getClientCertificateNames()

Get the names of the installed client certificates.

```bash
String[] getClientCertificateNames()
```

### importClientCertificate( names, keys ) throws InvalidObjectName, ObjectAlreadyExists, InvalidInput

Import client certificates and associated private keys.

```bash
void importClientCertificate(
String[] names
CertificateFiles[] keys
)
```

### renameClientCertificate( names, new\_names ) throws ObjectAlreadyExists, ObjectDoesNotExist, DeploymentError

Rename the named client certificates.

```bash
void renameClientCertificate(
String[] names
String[] new_names
)
```

### Structures

### Certificate

This structure contains information (such as the subject and issuer) about a certificate.

```bash
struct Certificate {
# The version of the X509 Certificate
Integer version;
# The serial number of the Certificate
String serial;
# The issuer (i.e. who signed it) of the Certificate
X509Name issuer;
# The subject (i.e. who it is for) of the Certificate
X509Name subject;
# The time the certificate is valid from.
Time valid_from;
# The time the certificate is valid to.
Time valid_to;
# The type of key used in the certificate.
String key_type;
# The DSA public key 'y' used in the certificate.
String y;
# The first coordinate of the public key Q for an ECDSA key used in the
# certificate.
String Q_x;
# The second coordinate of the public key Q for an ECDSA key used in the
# certificate.
String Q_y;
# The name of the curve used by the ECDSA key used in the certificate.
String curve;
# The RSA modulus of the certificate.
String modulus;
# The RSA exponent of the certificate.
String exponent;
# Whether the certificate is self-signed (i.e. the issuer is the same as the
# subject)
Boolean self_signed;
}
```

### CertificateFiles

This structure contains a public certificate and private key. It is used when importing certificates into the traffic manager.

```bash
struct CertificateFiles {
# The PEM-encoded public certificate (containing the BEGIN CERTIFICATE and
# END CERTIFICATE tags)
String public_cert;
# The PEM-encoded private key (containing the BEGIN RSA PRIVATE KEY and END
# RSA PRIVATE KEY tags)
String private_key;
}
```

### X509Name

This structure contains a representation of an X509 Name object. These are used inside Certificate objects to represent the issuer and subject of the certificate.

```bash
struct X509Name {
# The common name (CN). This is usually the name of the site the certificate
# is issued to (e.g. "secure.example.com")
String common_name;
# The two-letter country code.
String country;
# The location (town or city).
String location;
# The state, this is only needed if the country is 'US'.
String state;
# The name of the organization
String organization;
# The unit inside the organization
String unit;
# An email address. This is usually empty.
String email;
}
```
