---
title: MTLS Certificates
---

[Skip to content](#%5Ftop) 

[API Reference](https://developers.cloudflare.com/api/typescript)

Copy Markdown

Open in **Claude**

Open in **ChatGPT**

Open in **Cursor**

---

**Copy Markdown**

**View as Markdown**

# MTLS Certificates

##### [List mTLS certificates](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates/methods/list)

client.mtlsCertificates.list(MTLSCertificateListParams { account\_id, type } params, RequestOptionsoptions?): SinglePage<[MTLSCertificateListResponse](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates#%28resource%29%20mtls%5Fcertificates%20%3E%20%28model%29%20mtls%5Fcertificate%5Flist%5Fresponse%20%3E%20%28schema%29) { id, ca, certificates, 7 more } \>

GET/accounts/{account\_id}/mtls\_certificates

##### [Get mTLS certificate](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates/methods/get)

client.mtlsCertificates.get(stringmtlsCertificateID, MTLSCertificateGetParams { account\_id } params, RequestOptionsoptions?): [MTLSCertificateGetResponse](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates#%28resource%29%20mtls%5Fcertificates%20%3E%20%28model%29%20mtls%5Fcertificate%5Fget%5Fresponse%20%3E%20%28schema%29) { id, ca, certificates, 7 more } 

GET/accounts/{account\_id}/mtls\_certificates/{mtls\_certificate\_id}

##### [Upload mTLS certificate](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates/methods/create)

client.mtlsCertificates.create(MTLSCertificateCreateParams { account\_id, ca, certificates, 2 more } params, RequestOptionsoptions?): [MTLSCertificateCreateResponse](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates#%28resource%29%20mtls%5Fcertificates%20%3E%20%28model%29%20mtls%5Fcertificate%5Fcreate%5Fresponse%20%3E%20%28schema%29) { id, ca, certificates, 8 more } 

POST/accounts/{account\_id}/mtls\_certificates

##### [Delete mTLS certificate](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates/methods/delete)

client.mtlsCertificates.delete(stringmtlsCertificateID, MTLSCertificateDeleteParams { account\_id } params, RequestOptionsoptions?): [MTLSCertificateDeleteResponse](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates#%28resource%29%20mtls%5Fcertificates%20%3E%20%28model%29%20mtls%5Fcertificate%5Fdelete%5Fresponse%20%3E%20%28schema%29) { id, ca, certificates, 7 more } 

DELETE/accounts/{account\_id}/mtls\_certificates/{mtls\_certificate\_id}

##### ModelsExpand Collapse 

MTLSCertificateListResponse { id, ca, certificates, 7 more } 

id?: string

Identifier.

maxLength32

ca?: boolean

Indicates whether the certificate is a CA or leaf certificate.

certificates?: string

The uploaded root CA certificate.

expires\_on?: string

When the certificate expires.

formatdate-time

issuer?: string

The certificate authority that issued the certificate.

name?: string

Optional unique name for the certificate. Only used for human readability.

serial\_number?: string

The certificate serial number.

signature?: string

The type of hash used for the certificate.

type?: "custom" | "gateway\_managed" | "access\_managed"

The type of the certificate, indicating how it was created and who manages it.

One of the following:

"custom"

"gateway\_managed"

"access\_managed"

uploaded\_on?: string

This is the time the certificate was uploaded.

formatdate-time

MTLSCertificateGetResponse { id, ca, certificates, 7 more } 

id?: string

Identifier.

maxLength32

ca?: boolean

Indicates whether the certificate is a CA or leaf certificate.

certificates?: string

The uploaded root CA certificate.

expires\_on?: string

When the certificate expires.

formatdate-time

issuer?: string

The certificate authority that issued the certificate.

name?: string

Optional unique name for the certificate. Only used for human readability.

serial\_number?: string

The certificate serial number.

signature?: string

The type of hash used for the certificate.

type?: "custom" | "gateway\_managed" | "access\_managed"

The type of the certificate, indicating how it was created and who manages it.

One of the following:

"custom"

"gateway\_managed"

"access\_managed"

uploaded\_on?: string

This is the time the certificate was uploaded.

formatdate-time

MTLSCertificateCreateResponse { id, ca, certificates, 8 more } 

id?: string

Identifier.

maxLength32

ca?: boolean

Indicates whether the certificate is a CA or leaf certificate.

certificates?: string

The uploaded root CA certificate.

expires\_on?: string

When the certificate expires.

formatdate-time

issuer?: string

The certificate authority that issued the certificate.

name?: string

Optional unique name for the certificate. Only used for human readability.

serial\_number?: string

The certificate serial number.

signature?: string

The type of hash used for the certificate.

type?: "custom" | "gateway\_managed" | "access\_managed"

The type of the certificate, indicating how it was created and who manages it.

One of the following:

"custom"

"gateway\_managed"

"access\_managed"

updated\_at?: string

This is the time the certificate was updated.

formatdate-time

uploaded\_on?: string

This is the time the certificate was uploaded.

formatdate-time

MTLSCertificateDeleteResponse { id, ca, certificates, 7 more } 

id?: string

Identifier.

maxLength32

ca?: boolean

Indicates whether the certificate is a CA or leaf certificate.

certificates?: string

The uploaded root CA certificate.

expires\_on?: string

When the certificate expires.

formatdate-time

issuer?: string

The certificate authority that issued the certificate.

name?: string

Optional unique name for the certificate. Only used for human readability.

serial\_number?: string

The certificate serial number.

signature?: string

The type of hash used for the certificate.

type?: "custom" | "gateway\_managed" | "access\_managed"

The type of the certificate, indicating how it was created and who manages it.

One of the following:

"custom"

"gateway\_managed"

"access\_managed"

uploaded\_on?: string

This is the time the certificate was uploaded.

formatdate-time

#### MTLS CertificatesAssociations

##### [List mTLS certificate associations](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates/subresources/associations/methods/get)

client.mtlsCertificates.associations.get(stringmtlsCertificateID, AssociationGetParams { account\_id } params, RequestOptionsoptions?): SinglePage<[CertificateAsssociation](https://developers.cloudflare.com/api/typescript/resources/mtls%5Fcertificates#%28resource%29%20mtls%5Fcertificates.associations%20%3E%20%28model%29%20certificate%5Fasssociation%20%3E%20%28schema%29) { service, status } \>

GET/accounts/{account\_id}/mtls\_certificates/{mtls\_certificate\_id}/associations

##### ModelsExpand Collapse 

CertificateAsssociation { service, status } 

service?: string

The service using the certificate.

status?: string

Certificate deployment status for the given service.