priv/docs/mtls_certificate_management.md

# mTLS Certificate Management

## Upload mTLS certificate

**POST** `/accounts/{account_id}/mtls_certificates`

Upload a certificate that you want to use with mTLS-enabled Cloudflare services, such as Bring Your Own CA (BYO-CA) for mTLS. To create certificates issued by the Cloudflare managed CA, use the [Create Client Certificate endpoint](/api/resources/client_certificates/methods/create/).

### Responses

#### 200 Upload mTLS certificate response

> Data is at `body["result"]`

```json
null
```

#### 4XX Upload mTLS certificate response failure

```json
{
  "errors": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "messages": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "result": {},
  "success": "*boolean*"
}
```



## List mTLS certificates

**GET** `/accounts/{account_id}/mtls_certificates`

Lists all mTLS certificates uploaded to your account, such as Bring Your Own CA (BYO-CA) for mTLS. To list certificates issued by the Cloudflare managed CA, use the [List Client Certificates endpoint](/api/resources/client_certificates/methods/list/).

### Responses

#### 200 List mTLS certificates response

> Data is at `body["result"]`

```json
[
  null
]
```

#### 4XX List mTLS certificates response failure

```json
{
  "errors": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "messages": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "result": {},
  "result_info": {
    "count": null,
    "page": null,
    "per_page": null,
    "total_count": null,
    "total_pages": "*number*"
  },
  "success": "*boolean*"
}
```



## Get mTLS certificate

**GET** `/accounts/{account_id}/mtls_certificates/{mtls_certificate_id}`

Fetches a single mTLS certificate uploaded to your account. To get a certificate issued by the Cloudflare managed CA, use the [Client Certificate Details endpoint](/api/resources/client_certificates/methods/get/).

### Responses

#### 200 Get mTLS certificate response

> Data is at `body["result"]`

```json
null
```

#### 4XX Get mTLS certificate response failure

```json
{
  "errors": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "messages": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "result": {},
  "success": "*boolean*"
}
```



## Delete mTLS certificate

**DELETE** `/accounts/{account_id}/mtls_certificates/{mtls_certificate_id}`

Deletes the mTLS certificate unless the certificate is in use by one or more Cloudflare services.

### Responses

#### 200 Delete mTLS certificate response

> Data is at `body["result"]`

```json
null
```

#### 4XX Delete mTLS certificate response failure

```json
{
  "errors": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "messages": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "result": {},
  "success": "*boolean*"
}
```



## List mTLS certificate associations

**GET** `/accounts/{account_id}/mtls_certificates/{mtls_certificate_id}/associations`

Lists all active associations between the certificate and Cloudflare services.

### Responses

#### 200 List mTLS certificate associations response

> Data is at `body["result"]`

```json
[
  null
]
```

#### 4XX List mTLS certificate associations response failure

```json
{
  "errors": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "messages": [
    {
      "code": "*integer*",
      "documentation_url": "*string*",
      "message": "*string*",
      "source": {
        "pointer": "*string*"
      }
    }
  ],
  "result": {},
  "result_info": {
    "count": "*number*",
    "page": "*number*",
    "per_page": "*number*",
    "total_count": "*number*"
  },
  "success": "*boolean*"
}
```