Skip to content
Start here

Edit TLS setting for hostname

hostnames.settings.tls.update(strhostname, TLSUpdateParams**kwargs) -> Setting
PUT/zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}

Update the tls setting value for the hostname.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

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

Example:X-Auth-Email: user@example.com

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

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
SSL and Certificates Write
ParametersExpand Collapse
zone_id: str

Identifier.

maxLength32
setting_id: Literal["ciphers", "min_tls_version", "http2"]

The TLS Setting name. The value type depends on the setting:

  • ciphers: value is an array of cipher suite strings (e.g., ["ECDHE-RSA-AES128-GCM-SHA256", "AES128-GCM-SHA256"])
  • min_tls_version: value is a TLS version string ("1.0", "1.1", "1.2", or "1.3")
  • http2: value is "on" or "off"
One of the following:
"ciphers"
"min_tls_version"
"http2"
hostname: str

The hostname for which the tls settings are set.

The TLS setting value. The type depends on the setting_id used in the request path:

  • ciphers: an array of allowed cipher suite strings in BoringSSL format (e.g., ["ECDHE-RSA-AES128-GCM-SHA256", "AES128-GCM-SHA256"])
  • min_tls_version: a string indicating the minimum TLS version — one of "1.0", "1.1", "1.2", or "1.3" (e.g., "1.2")
  • http2: a string indicating whether HTTP/2 is enabled — "on" or "off" (e.g., "on")
One of the following:
Literal["1.0", "1.1", "1.2", 3 more]
One of the following:
"1.0"
"1.1"
"1.2"
"1.3"
"on"
"off"
List[str]

Used when setting_id is ciphers. An array of allowed cipher suite strings.

ReturnsExpand Collapse
class Setting:
created_at: Optional[datetime]

This is the time the tls setting was originally created for this hostname.

formatdate-time
hostname: Optional[str]

The hostname for which the tls settings are set.

status: Optional[str]

Deployment status for the given tls setting.

updated_at: Optional[datetime]

This is the time the tls setting was updated.

formatdate-time
value: Optional[SettingValue]

The TLS setting value. The type depends on the setting_id used in the request path:

  • ciphers: an array of allowed cipher suite strings in BoringSSL format (e.g., ["ECDHE-RSA-AES128-GCM-SHA256", "AES128-GCM-SHA256"])
  • min_tls_version: a string indicating the minimum TLS version — one of "1.0", "1.1", "1.2", or "1.3" (e.g., "1.2")
  • http2: a string indicating whether HTTP/2 is enabled — "on" or "off" (e.g., "on")
One of the following:
Literal["1.0", "1.1", "1.2", 3 more]
One of the following:
"1.0"
"1.1"
"1.2"
"1.3"
"on"
"off"
List[str]

Used when setting_id is ciphers. An array of allowed cipher suite strings.

Edit TLS setting for hostname

import os
from cloudflare import Cloudflare

client = Cloudflare(
    api_token=os.environ.get("CLOUDFLARE_API_TOKEN"),  # This is the default and can be omitted
)
setting = client.hostnames.settings.tls.update(
    hostname="app.example.com",
    zone_id="023e105f4ecef8ad9ca31a8372d0c353",
    setting_id="ciphers",
    value="1.0",
)
print(setting.created_at)
{
  "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": {
    "created_at": "2023-07-10T20:01:50.219171Z",
    "hostname": "app.example.com",
    "status": "pending_deployment",
    "updated_at": "2023-07-10T20:01:50.219171Z",
    "value": "1.0"
  }
}
Returns Examples
{
  "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": {
    "created_at": "2023-07-10T20:01:50.219171Z",
    "hostname": "app.example.com",
    "status": "pending_deployment",
    "updated_at": "2023-07-10T20:01:50.219171Z",
    "value": "1.0"
  }
}