---
title: Analyze Certificate
---

[Skip to content](#_top)

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

[SSL](https://developers.cloudflare.com/api/go/resources/ssl)

[Analyze](https://developers.cloudflare.com/api/go/resources/ssl/subresources/analyze)

Copy Markdown

Open in **Claude**Open in **ChatGPT**Open in **Cursor**

---

**Copy Markdown****View as Markdown**

# Analyze Certificate

client.SSL.Analyze.New(ctx, params) (\*[AnalyzeNewResponse](<https://developers.cloudflare.com/api/go/resources/ssl#(resource)%20ssl.analyze%20%3E%20(model)%20AnalyzeNewResponse%20%3E%20(schema)>), error)

POST/zones/{zone\_id}/ssl/analyze

Returns the set of hostnames, the signature algorithm, and the expiration date of the certificate.

##### Security

<details>

<summary>API Token</summary>



The preferred authorization scheme for interacting with the Cloudflare API. <a href="https://developers.cloudflare.com/fundamentals/api/get-started/create-token/">Create a token</a>.

**Example:**<code>Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY</code>

</details>

<details>

<summary>API Email + API Key</summary>



The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

**Example:**<code>X-Auth-Email: user@example.com</code>

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

**Example:**<code>X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194</code>

</details>

##### Accepted Permissions (at least one required)

`Access: Mutual TLS Certificates Write``Access: Mutual TLS Certificates Read``SSL and Certificates Write``SSL and Certificates Read`

##### ParametersExpand Collapse

<details>

<summary>

params AnalyzeNewParams

</summary>

ZoneID param.Field\[string]

Path param: Identifier.

maxLength32

<a href="#(resource)%20ssl.analyze%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20zone_id">Link to this property</a>

BundleMethod param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/custom_hostnames#(resource)%20custom_hostnames%20%3E%20(model)%20bundle_method%20%3E%20(schema)">BundleMethod</a>]Optional

Body param: A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.

<a href="#(resource)%20ssl.analyze%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20bundle_method">Link to this property</a>

Certificate param.Field\[string]Optional

Body param: The zone’s SSL certificate or certificate and the intermediate(s).

<a href="#(resource)%20ssl.analyze%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20certificate">Link to this property</a>

</details>

[Link to this property](<#(resource)%20ssl.analyze%20%3E%20(method)%20create%20%3E%20(params)%20default>)

##### ReturnsExpand Collapse

type AnalyzeNewResponse interface{…}

[Link to this property](<#(resource)%20ssl.analyze%20%3E%20(model)%20AnalyzeNewResponse%20%3E%20(schema)>)

### Analyze Certificate

Go

HTTPTypeScriptPythonGoTerraform

```
package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/option"
  "github.com/cloudflare/cloudflare-go/ssl"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  analyze, err := client.SSL.Analyze.New(context.TODO(), ssl.AnalyzeNewParams{
    ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", analyze)
}
```

200 example

```
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {}
}
```

##### Returns Examples

200 example

```
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {}
}
```